Sphinxにはautomethod
、メソッドのdocstringからドキュメントを抽出し、それをドキュメントに埋め込むという機能があります。ただし、docstringだけでなく、メソッドのシグネチャ(名前+引数)も埋め込まれます。docstringのみ(メソッドシグネチャを除く)を埋め込むにはどうすればよいですか?
参照:http ://www.sphinx-doc.org/en/master/usage/extensions/autodoc.html
Sphinxにはautomethod
、メソッドのdocstringからドキュメントを抽出し、それをドキュメントに埋め込むという機能があります。ただし、docstringだけでなく、メソッドのシグネチャ(名前+引数)も埋め込まれます。docstringのみ(メソッドシグネチャを除く)を埋め込むにはどうすればよいですか?
参照:http ://www.sphinx-doc.org/en/master/usage/extensions/autodoc.html
あなたが探しているのは次のとおりだと思います:
from sphinx.ext import autodoc
class DocsonlyMethodDocumenter(autodoc.MethodDocumenter):
def format_args(self):
return None
autodoc.add_documenter(DocsonlyMethodDocumenter)
現在のソースによると、これにより、メソッドのドキュメント化を担当するクラスをオーバーライドできるはずです(古いバージョンの のadd_documenter
そのようなオーバーライドは禁止されていましたが、現在は明示的に許可されています)。format_args
もちろん、 return Noneを持つことautodoc
は、「署名を気にしないでください」と言う文書化された方法です。
これは、このタスクを実行するためのクリーンで設計された方法であり、そのため、代替手段をモンキーパッチするよりも好ましいと思います。ただし、いくつかの古いバージョンを使用する必要があるsphinx
場合は、実際にモンキーパッチを適用する必要がある場合があります (--eek autodoc.MethodDocumenter.format_args=lambda _:None
!-)。ただしsphinx
、特定の展開で実行可能な場合は、より良いアプローチとして現在のバージョンにアップグレードすることをお勧めします。