【发布时间】:2012-12-09 06:08:53
【问题描述】:
我正在尝试使用 Sphinx 记录一个 Python 项目,但我无法将 autodoc 扩展与 namedtuple 生成的类结合起来。
在一份文件中,gammatone.rst,我有:
:mod:`gammatone` -- gammatone filterbank toolkit
================================================
.. automodule:: gammatone
:members:
.. automodule:: gammatone.coeffs
:members:
在我的gammatone/coeffs.py 中,我有:
from collections import namedtuple
ERBFilterCoeffs = namedtuple(
'ERBFilterCoeffs', # Most parameters omitted
[
'A0',
'gain',
])
namedtuple 生成的代码包含 Sphinx 的 autodoc 模块提取并包含的非常通用的文档字符串。我宁愿自己正确地记录课程,而不是在模块的其余部分放弃 autodoc。
我试过在上课前放这样的东西:
"""
.. class:: ERBFilterCoeffs(A0, gain)
:param A0: A0 coefficient
:param gain: Gain coefficient
Magic coefficients.
"""
...但它没有出现在生成的文档中。将它放在类之后会导致它嵌套在通用类文档下面,而不是替换它。
我如何简单地告诉 Sphinx(和 autodoc 扩展)使用我的 ERBFilterCoeffs 类文档而不是 namedtuple 生成的文档?
【问题讨论】:
标签: python python-sphinx autodoc