解析器接口

`docutils文档对“解析器”的描述如下:

解析器分析输入文档并创建节点树表示。

在Sphinx中,解析器模块的工作原理与docutils相同。解析器通过使用应用接口的扩展注册到Sphinx;:meth:。Sphinx.add_source_suffix()`and:meth:。Sphinx.add_source_parser()`.

*源后缀*是从文件后缀到文件类型的映射。例如,.rst``文件映射到’RestructedText``类型。Sphinx使用文件类型从已注册的列表中查找解析器。在搜索时,斯芬克斯指的是``解析器。支持``属性并获取包含属性中文件类型的解析器。

用户可以使用:confval:`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的可访问性。

The subclasses can access sphinx core runtime objects (app, config and env).

set_application(app: Sphinx) None[源代码]

set_application will be called from Sphinx to set app and other instance variables

参数:

app (sphinx.application.Sphinx) – Sphinx application object

config: Config

The config object

env: BuildEnvironment

The environment object