构建Sphinx文档

And*_*rea 11 python python-sphinx

我已经开始使用Sphinx记录Python项目.这是我第一次使用它 - 我习惯使用类似JavaDoc语法的工具,我有些疑惑.

因为我想要的文档出现在代码的旁边,我利用的.. automodule::,.. autoclass::.. automethod::指令.所以我的文档结构如下:index.rst包含TOC和

.. automodule:: my_main_package
Run Code Online (Sandbox Code Playgroud)

然后顶级__init__.py包含指令

.. automodule:: some_subpackage
Run Code Online (Sandbox Code Playgroud)

对于每个子包等等.最后,每个模块都包含指令

.. autoclass:: some_class
    :members:
Run Code Online (Sandbox Code Playgroud)

对于模块中的每个类.

这主要是有效的,但我得到的是单页文档,这有点奇怪.

我应该如何组织文档以获取超链接文件树?也就是说,主程序包应该包含自己的文档和每个子包的链接,依此类推,直到每个模块都有自己的页面.

And*_*rea 11

我从这里的评论中找到了这个自动包装脚本.它根据包的结构生成必要的.rst文件.

旁注:我仍然觉得我遗漏了一些东西,因为我无法相信像Sphinx这样的工具,它被称为最先进的Python文档工具,它错过了执行基本API文档的功能.因此,在接受我自己的答案之前,我会暂时搁置这个问题.

  • 我自己跑过这个问题.我觉得我也错过了一些东西.但这严重违反了DRY原则.为什么我在.rst文件中复制我的整个模块结构? (6认同)
  • 请注意,该脚本现在是Sphinx的一个组成部分,称为apidoc:http://sphinx-doc.org/man/sphinx-apidoc.html (3认同)