语法分析器API¶
The docutils documentation describes _解析器如下:
解析器分析输入文档并创建节点树表示。
在sphinx中,解析器模块的工作方式与docutils相同。解析器通过使用应用程序API的扩展注册到sphinx; Sphinx.add_source_suffix()
和 Sphinx.add_source_parser()
.
这个 源后缀 是从文件后缀到文件类型的映射。例如, .rst
文件映射到 'restructuredtext'
类型。sphinx使用文件类型从注册列表中查找分析器。在搜索时,Sphinx指的是 Parser.supported
属性并选择一个包含属性中的文件类型的分析器。
用户可以使用 source_suffix
如下:
# a mapping from file suffix to file types
source_suffix = {
'.rst': 'restructuredtext',
'.md': 'markdown',
}
您应该指出您的解析器支持的文件类型。这将允许用户适当配置其设置。
- class sphinx.parsers.Parser[源代码]¶
源分析器的基类。附加的分析器应该继承这个类,而不是
docutils.parsers.Parser
. 与之相比docutils.parsers.Parser
,该类提高了对sphinx API的可访问性。这些子类可以访问sphinx核心运行时对象(app、config和env)。
- set_application(app: Sphinx) None [源代码]¶
将从Sphinx调用Set_APPLICATION以设置APP和其他实例变量
- 参数:
app (sphinx.application.Sphinx) -- Sphinx应用程序对象
- env: BuildEnvironment¶
环境对象