公用事业¶
sphinx提供实用程序类和函数来开发扩展。
组件的基类¶
这些基类对于允许扩展获得sphinx组件(例如 Config
, BuildEnvironment
等等)很容易。
备注
它们的子类可能不适用于裸docutils,因为它们与Sphinx紧密耦合。
- class sphinx.transforms.SphinxTransform(document, startnode=None)[源代码]¶
转换的基类。
与之相比
docutils.transforms.Transform
,该类提高了对sphinx API的可访问性。- property env: BuildEnvironment¶
参考
BuildEnvironment
对象。
- class sphinx.transforms.post_transforms.SphinxPostTransform(document, startnode=None)[源代码]¶
后转换的基类。
调用后期转换来修改文档以重新构造文档以进行输出。它们解析引用、转换图像、对每种输出格式进行特殊转换等等。这个类帮助实现这些POST转换。
- class sphinx.util.docutils.SphinxDirective(name, arguments, options, content, lineno, content_offset, block_text, state, state_machine)[源代码]¶
Sphinx指令的基类。
此类为sphinx指令提供助手方法。
备注
此类的子类可能无法与docutils一起使用。这一类与Sphinx是强耦合的。
- property env: BuildEnvironment¶
参考
BuildEnvironment
对象。
- class sphinx.util.docutils.SphinxRole[源代码]¶
Sphinx角色的基类。
这个类为sphinx角色提供帮助方法。
备注
此类的子类可能无法与docutils一起使用。这一类与Sphinx是强耦合的。
- property env: BuildEnvironment¶
参考
BuildEnvironment
对象。
- inliner: Inliner¶
这个
docutils.parsers.rst.states.Inliner
对象。
- class sphinx.util.docutils.ReferenceRole[源代码]¶
引用角色的基类。
参考角色可以接受
link title <target>
角色的文本样式。解析结果;链接标题和目标将存储到self.title
和self.target
。
- class sphinx.transforms.post_transforms.images.ImageConverter(*args: Any, **kwargs: Any)[源代码]¶
图像转换器的基类。
图像转换器是一种Docutils转换模块。它用于将构建器不支持的图像文件转换为该构建器的适当格式。
例如,
LaTeX builder
支持PDF、PNG和JPEG作为图像格式。但是,它不支持SVG图像。对于这种情况,使用图像转换器可以将这些不受支持的图像嵌入到文档中。其中一个图像转换器; sphinx.ext.imgconverter 可以在内部使用Imagemagick将SVG图像转换为PNG格式。制作自定义图像转换器有三个步骤:
生成的子类
ImageConverter
班重写
conversion_rules
,is_available()
和convert()
使用将图像转换器注册到Sphinx
Sphinx.add_post_transform()
- conversion_rules: list[tuple[str, str]] = []¶
图像转换器支持的转换规则。它表示为一对源图像格式(mimetype)和目标图像格式的列表:
conversion_rules = [ ('image/svg+xml', 'image/png'), ('image/gif', 'image/png'), ('application/pdf', 'image/png'), ]
- default_priority = 200¶
此转换的数字优先级,从0到999(覆盖)。