Sphinx AutoAPI 简介

Sphinx AutoAPI 简介#

Sphinx AutoAPI 是用于生成完整 API 文档的 Sphinx 扩展,它不需要加载、运行或导入正在记录的项目。

与传统的 Sphinx autodoc 不同,后者需要一些手动编写并使用代码导入,而 AutoAPI 通过解析源代码来查找和生成文档。

安装:

pip install sphinx-autoapi

要启用扩展,我们需要将其添加到Sphinx的conf.py文件中的扩展列表中:

extensions = ['autoapi.extension']

只需要设置必需的配置选项。autoapi_dirs 告诉 AutoAPI 哪些目录包含要记录的源代码。这些可以是绝对的,也可以是相对于文档文件的源目录的。例如,假设有一个包,已经使用 sphinx-quickstartdoc/ 文件夹中创建了 Sphinx 项目。目录结构可能是这样的:

mypackage/
├── docs
│   ├── _build
│   ├── conf.py
│   ├── index.rst
│   ├── make.bat
│   ├── Makefile
│   ├── _static
│   └── _templates
├── mypackage
│   ├── _client.py
│   ├── __init__.py
│   └── _server.py
└── README.md

sphinx-quickstartsphinx-build 设置为从 doc/ 目录中运行,源代码在上一级。所以 autoapi_dirs 选项的值应该是:

autoapi_dirs = ['../mypackage']

如果您记录了许多包,您可以将 AutoAPI 指向包含这些包的目录。例如,如果源代码在 src/ 目录中:

mypackage/
├── docs
│   ├── _build
│   ├── conf.py
│   ├── index.rst
│   ├── make.bat
│   ├── Makefile
│   ├── _static
│   └── _templates
├── README.md
└── src
    └── mypackage
        ├── _client.py
        ├── __init__.py
        └── _server.py

autoapi_dirs 选项的值应该是:

autoapi_dirs = ['../src']

既然所有配置都已完成,当你运行 Sphinx 时,AutoAPI 将生成文档!

cd doc/
sphinx-build -b html . _build