延拓

由于许多项目的文档中都需要特殊功能,因此Sphinx允许在构建过程中添加“扩展”,每个扩展都可以修改文档处理的几乎所有方面。

本章介绍Sphinx捆绑的扩展。有关编写您自己的扩展的API文档,请参阅 SphinxAPI

内置扩展模块

这些扩展是内置的,可以通过 extensions 配置值:

第三方扩展

您可以在中找到多个由用户贡献的扩展 sphinx-contrib 组织。如果您希望在此组织中包括您的分机,只需按照中提供的说明进行操作 github-administration 项目。这是可选的,有几个扩展托管在其他地方。这个 awesome-sphinxdocsphinx-extensions 项目都是Sphinx包的精选列表,许多包使用 Framework :: Sphinx :: ExtensionFramework :: Sphinx :: Theme 分别用于Sphinx扩展和主题的Trove分类器。

把你自己的分机放在哪里?

项目本地的扩展应放在项目的目录结构中。 设置Python的模块搜索路径, sys.path 相应地,以便狮身星能够找到它们。 例如,如果您的扩展名 foo.py 在于 exts 项目根的副本,投入 conf.py :

import sys
from pathlib import Path

sys.path.append(str(Path('exts').resolve()))

extensions = ['foo']

您也可以在上的其他位置安装扩展模块 sys.path ,例如在 site-packages 目录。