ReStructuredText 扩展。
项目描述
ulif.rest
是一个提供一些ReStructuredText扩展的软件包。该软件包收集的扩展为Python文档工具链中的一些标记提供支持。还包括一个pygments指令(由Georg Brandl编写),它允许使用pygments
软件包在reStructuredText文档中实现代码片段的语法高亮。
请参阅src/ulif/rest
目录中的README.txt
以获取API文档。
注意,这是一个Alpha版本!请勿在生产环境中使用它!
先决条件
您需要
Python 2.4。据说Python 2.5也可以。
setuptools
,可以从http://peak.telecommunity.com/DevCenter/setuptools获得
其他所需的软件包将在安装过程中下载。因此,您需要在安装过程中连接到互联网。
安装
通常,此软件包应从使用它作为辅助库的其他软件包中获取。因此,您无需关心安装。如果要将ulif.rest
集成到您的项目中,只需在您的setup.py
中声明ulif.rest
为所需软件包即可。
使用buildout
您可以使用以下方法使用 buildout 安装此软件包:
从软件包的根目录运行:
$ python2.4 bootstrap/bootstrap.py
这将下载并安装所有必要的组件以运行下一步中的 buildout。之后,在新生成的 bin/ 目录中应该可找到一个名为 buildout 的可执行脚本。
接下来,获取所有必要的软件包,安装它们并创建提供的脚本
$ bin/buildout
这将创建一个位于 bin/ 的 test 脚本。
运行:
$ bin/test
您可以使用它来测试已安装的软件包。
使用 easy_install
以超级用户身份运行
# easy_install ulif.rest
这将使软件包在您的系统 Python 中可用。
用法
请参阅 README.txt 和 src/ulif/rest/ 目录中的其他 .txt 文件,以获取 API 文档。
详细文档
RestructuredText (ReST) 扩展
这是什么?
此软件包中收集的扩展提供对 Python 文档工具链中 RestructuredText 文档使用的某些标记语言的支持。
RestructuredText 是一种具有特殊人类可读标记的文档标记语言,在 Python 界中得到广泛应用。RestructuredText 文档有点像 HTML,但可读性更好。您正在阅读的文本,例如,就是用 ReST 编写的。
查看:
了解有关 ReST(以及 docutils)的更多信息。
通常,ReST 文档可以使用 Python 软件包 docutils 中的工具进行处理。该 docutils 包含读取器、解析器、编写器和发布者,用于读取 ReST 文档并写入各种输出格式,如 HTML、XML 或 LaTeX。
由于 Python 从 2.6 版本开始使用 ReST 文档代替 LaTeX,因此引入了一些特殊标记,如 function、seealso 或 versionchanged,这有助于更精确地描述编程 API。然而,这些附加“标签”需要专门的读取器、解析器、编写器和发布者才能理解。正常的 docutils 工具不理解这些新角色和指令。
此软件包使得可以使用以下列出的附加角色/指令的 docutils 解析器和编写器。
先决条件和要求
docutils – 推荐版本为 0.4。
可以从 http://docutils.sourceforge.net/ 获取。
Pygments – 一种语法高亮工具。
可以从 https://pygments.pythonlang.cn/ 获取。如果您想在 ReST 文档中对代码片段进行语法高亮,则需要此工具。
由于目前仅支持 HTML 使用 pygments,因此您不需要使用它来处理其他输出格式。在这种情况下,您不需要 pygments。
这两个软件包也可以通过 cheeseshop 和 easy_install 获取。
激活对附加角色/指令集的支持
只需导入此软件包中的模块
from ulif.rest import directives_plain from ulif.rest import roles_plain from ulif.rest import pygments_directive # for syntax-highlighting support
就这样。模块会自动定义和注册新的角色和指令与 docutils。您不需要调用特殊函数。
运行测试
使用您喜欢的 Python 解释器调用 tests/alltests.py
$ python tests/alltests.py
注意,docutils 必须在您的 PYTHON_PATH 中可用。
如果您使用 buildout 安装了源版本(而不是 egg),您可以在源根目录的 bin/ 目录中生成一个 buildout 可执行文件并运行
$ bin/test
支持哪些角色和指令
pygments_directive 添加以下新指令
- sourcecode – 用于高亮显示以下内容的指令
代码块。它接受一个参数,即语言,目前仅支持HTML输出。
示例
.. sourcecode:: python class Cave(object): pass This will render the class definition with colours. An additional optional parameter is ``linenos``, which adds linenumbers to the code:: .. sourcecode:: python :linenos: class NumberedCave(object): pass will render the code block with line numbering. See the source for further options.
code-block – sourcecode的别名。
directives_plain 增加了以下新指令
- function – 用于描述带有签名的函数的指令。
签名。
data – ???
class – 用于定义Python类的指令。
method – 用于描述Python类方法的指令。
- attribute – 用于描述Python类属性的指令。
类。
exception – 用于描述异常的指令。
cmdoption – 用于描述命令选项的指令。
envvar – 用于描述环境变量的指令。
describe – 用于描述某物的指令。
- seealso – 用于添加“另见”子节的指令。它需要一个“正文”文本。
。
- deprecated – 用于添加弃用警告的指令。它也需要一些解释性正文和一个版本号。
。
- versionadded – 用于添加一条注释,说明在哪个版本中将周围的内容添加到API中。
需要版本号和解释性文本。
versionchanged – 用于添加一条注释,说明在哪个版本中签名或其他内容发生了变化以及原因。
示例
.. versionadded:: 0.11 Added for convenience reasons.
- 。
toctree – 请求根据指令正文部分中给出的文件生成目录树表的指令。所谓的目录树将不会由标准编写器生成,因为它需要至少两次解析(一次收集所有引用,另一次生成引用目标)。
示例
.. versionchanged:: 0.11 Added cave parameter, because every caveman needs a cave.
- 。
如果你在文档中插入toctree指令,这不会阻止文档的解析,但生成的目录树在渲染文档中将“不可见”。
toctree指令支持一个maxdepth参数,它是一个数字,告诉要生成到哪个深度的目录树(默认:无限制)。
。
示例
.. toctree:: :maxdepth: 2 chapter1.rst chapter2.rst another_file.rst This should render a table of contents with the headings of the three given files. Only headers of level 1 and 2 will be included in the toctree.
roles_plain 增加了以下新角色
data
exc
func
class
const
attr
meth
cfunc
cdata
ctype
cmacro
mod
keyword
ref
token
term
file
samp
每个角色都可以像这样使用:<rolename>:<text>。例如
:func:`my_function`
将输出文本my_function,以不同于普通文本的方式渲染。确切的渲染方式取决于使用的编写器和翻译器。在通常的HTML编写器中,它将以罗马字体渲染。
所有其他角色也是如此。
变更记录
0.1.0 (2008-02-24)
功能变更
初始发布
下载
项目详情
下载文件
下载适合您平台的应用程序。如果您不确定选择哪个,请了解有关安装包的更多信息。
源代码分发
构建分发
ulif.rest-0.1.0.zip的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 31a532dc3e3b29c7971d97862e48ff80158a4d93c7f7f987f3c12759fcc1ebf8 |
|
MD5 | d21e75812dad6c658c1b06a26d4a2de6 |
|
BLAKE2b-256 | d98763469396225a7ee5f34c02406825f59b9a620280a94fb4a472fdbbda35e1 |
ulif.rest-0.1.0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | c244e069425e2e2bb9b207491a19f965cb6ec2b3a1004f6013c65e0eb6340086 |
|
MD5 | e5e1909a7ddc851f51b84423f791fb19 |
|
BLAKE2b-256 | ef09d8ec425a1ec6eaaa3c58fc0849eb1b0cebc22be214ae677640d5bc51e853 |
ulif.rest-0.1.0-py2.5.egg的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 113de9a16e6a599c1e4f96758dec70cf5fce17104cee19ea045daf52afbc7886 |
|
MD5 | c9da82f1d78df0318a3298b1dd9d9eb8 |
|
BLAKE2b-256 | a09296358729af5901d5f4dd58f0dd7e4d6a0e5112848471ed1fdbabbfb6757a |
ulif.rest-0.1.0-py2.4.egg的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | bd1db5019ead078d4885adbd5f2b77c1a9e6a8a56448ad87f088269325ed50b5 |
|
MD5 | 85b3b8323a9f235d1cea36f784066c11 |
|
BLAKE2b-256 | 50508a1cdf9bf7933f466a2a87b0cce9bfc6d721cebd032c48617dbb42f2e06d |