Sphinx自动摘要:如何删除__init__的自动成员
问题描述
问题
我使用sphinx.ext.autosummary
作为我的python包。问题是.. autosummary::
始终添加.. automethod:: __init__
,即使没有文档记录也是如此。
同时,我找到了各种方法来第三次包含它(作为特殊成员)或将它包含在方法中;但我没有找到如何删除.. automethod:: __init__
的方法。
*.rst
,但这不是一个选项,而且会使autosumary变得有些过时。此外,它还会因duplicate object description
(__init__
也在方法中,这很好)而创建警告。
系统
python 3.8.5
sphinx-build 4.0.2
(带引导主题)
有没有人有我从几小时以来一直在寻找的黄金提示?:)
提前感谢!
解决方案
解决方案
在templates_path
(参见conf.py
;通常为"_templates"
)中创建一个文件夹autosummary
。搜索默认的class.rst
,将其复制到新文件夹(_templates/autosummary/class.rst
)中,并根据需要调整模板。不需要其他内容。
我对class.rst
的调整
- 在
.. autoclass:: {{ objname }}
添加:noindex:
之后。 - 已删除第
.. automethod:: __init__
行。 - 需要确定
:noindex:
作为默认设置是否合适。
非常感谢@mzjn,这是我错过的提示;拯救了我的一天!
相关文章