如何使用Sphinx和自动摘要为每个Python模块创建函数表

问题描述 投票:0回答:1

我有一个Python包,其中包含许多模块,这些模块又包含函数(...无类)。我在Sphinx和autodoc / napoleon上取得了巨大的成功。我为每个模块都有一个单独的.rst和一个TOC,使我可以快速导航至每个模块。都好。

现在,对于每个模块页面,我想在顶部都有一个表(在所有功能文档之前),并且该表将列出该模块的功能及其简短描述。我认为自动摘要适用于这样,但是无论我将.. autosummary:放在何处或采用哪种形式,我都无法使用它。自动总结大师可以让我挺直吗?

我正在使用sphinx_rtd_theme。

具体地说,这是我的index.rst:

*********************
My Programmers Manual
*********************

.. rubric:: Table of Contents

.. toctree::
   :maxdepth: 4

   Module1
   Module2
   Module3

对于每个模块,我都有一些很接近的东西:

Module1 Section
===============

.. automodule:: mypackage.module1
    :members:
    :undoc-members:
    :show-inheritance:

这是我的config.py的一部分:

extensions = [
    'sphinx.ext.autodoc',
    'sphinx.ext.napoleon',
    'sphinx.ext.autosummary',
    'sphinx_autodoc_typehints',
    'sphinx_rtd_theme',
]
add_module_names = False
napoleon_use_param = True
autosummary_generate = True

我根据各种文章和stackoverflow帖子尝试过各种方法。我不远。

问题:似乎我应该在我的index.rst文件(而不是toctree?)或我的module1.rst文件(哪个指令以及在哪里?)中都具有.. autosummary:指令。

我的用户很希望我能解决这个问题! :)谢谢!

python python-sphinx autodoc sphinx-napoleon
1个回答
0
投票

不久前我发布了一个非常类似的问题here。刚才,我还发现了一篇较旧的文章here-该文章似乎有一个可行的解决方案。我自己看看那个。

© www.soinside.com 2019 - 2024. All rights reserved.