5

我正在开发一个只有一个 .py 模块的 Python 库,并且我正在尝试从文档字符串中为其生成文档。我已经设置了 Sphinx 并运行了 spinx-quickstart 脚本,但是当我尝试运行时(在 docs 目录中)

sphinx-apidoc ../cffiwrap.py -o .

但它只是说:

../cffiwrap.py is not a directory.

是否有其他一些 Sphinx 脚本可以自动生成单个文件?我想过只是运行它,..但后来我想它会运行到我的测试目录并尝试从我的单元测试中生成文档......

4

2 回答 2

0

手册说:

sphinx-apidoc [选项] -o packagedir [路径名 ...]

其中路径名是要排除的目录。

所以试试:

sphinx-apidoc -o . .. ../test_dir 

test_dir你的测试在哪里。

于 2013-09-09T17:05:48.617 回答
0

这篇简短的博客文章似乎展示了一种为单个模块生成自动 api 文档的替代方法。为了方便和持久性,复制到这里:

conf.py文件放在与您的模块相同的目录中:

import os
import sys

# enable autodoc to load local modules
sys.path.insert(0, os.path.abspath("."))

project = "<project>"
copyright = "year, author"
author = "author"
extensions = ["sphinx.ext.autodoc", "sphinx.ext.intersphinx"]
exclude_patterns = ["_build", "Thumbs.db", ".DS_Store"]
templates_path = ["_templates"]
html_theme = "alabaster"
html_static_path = ["_static"]
intersphinx_mapping = {
    "python": ("https://docs.python.org/3", None)
}
html_theme_options = {"nosidebar": True}

index.rst在它旁边添加这个

<project>
=========

.. automodule:: <project>
   :members:

最后,替换<project>为您的模块名称,pip install sphinx然后运行:

sphinx-build -b html . _build
于 2020-02-12T12:58:03.350 回答