我有一个项目,我使用buildout生成许多cmdline工具,并使用Sphinx生成文档。
有没有办法可以在cmdline的代码定义附近编写文档,然后让Sphinx在一个页面中为所有命令生成文档,使用每个命令的代码中的docstrings?
答案 0 :(得分:0)
部分解决方案是使用“autofunction”(请参阅autodoc documentation)来记录您的代码。例如,使用.rst
这样的文件:
Command line tools
==================
.. autofunction:: mypackage.tools.do_something
.. autofunction:: mypackage.importtasks.import
.. autofunction:: mypackage.feed_the_cat
这会将它们记录下来,就像功能一样,可能看起来不太好。
另一个解决方案是自己从docstring生成一个正确的.rst
文件。您可以将其生成到sphinx目录中并从那里使用它。作为示例,您可以查看README.rst I generated以获取工具集合(console_scripts入口点,例如您的,btw)和the script that generates the README。
您基本上迭代了一堆文件,并将相关的.__doc__
项添加到文本文件中。我无法找到如何使用setuptools
或pkginfo
来获取console_scripts
的{{1}}条目,但如果需要,您可以执行此操作脚本: - )