在我的代码中,我有
X_DEFAULT = ['a', 'long', 'list', 'of', 'values', 'that', 'is', 'really', 'ugly', 'to', 'see', 'over', 'and', 'over', 'again', 'every', 'time', 'it', 'is', 'referred', 'to', 'in', 'the', 'documentation']
然后
def some_function(..., x=X_DEFAULT, ...):
因此,在我的 Sphinx 文档中,使用(例如,使用.. autofunction::
等)我X_DEFAULT
在签名中得到了扩展的整个长而笨重的值some_function
:
some_function ( ..., x=['a', 'long', 'list', 'of', 'values', 'that', 'is', 'really', 'ugly', 'to', '看到','结束','和','结束','再次','每个','时间','它','是','推荐','to','in','the' , '文档'], ... )
有没有办法在生成的文档中抑制这种替换,最好是通过链接回到以下定义X_DEFAULT
:
some_function ( ..., x= X_DEFAULT , ... )
我知道我可以手动覆盖我明确列出为 Sphinx 文档指令参数的每个函数和方法的签名,但这不是我的目标。我也知道我可以使用autodoc_docstring_signature
文档字符串的第一行,但这会产生错误的文档字符串,真正用于自省失败的情况(如 C)。我怀疑我可以做的事情autodoc-process-signature
可能是足够的(但不是完美的),但我不确定如何进行。