作業中のPythonモジュールとクラスを文書化するためにSphinxをインストールしました。マークアップ言語は非常に見栄えがしますが、Pythonコードを自動文書化することはできませんでした。
基本的に、私は次のPythonモジュールを持っています:
SegLib.py
そしてそれに呼ばれるクラスSeg
。生成されたSphinxドキュメント内のクラスとモジュールのドキュメント文字列を表示し、さらにフォーマットされたテキストを追加したいと思います。
私index.rst
はこのように見えます:
Contents:
.. toctree::
:maxdepth: 2
chapter1.rst
およびchapter1.rst
:
This is a header
================
Some text, *italic text*, **bold text**
* bulleted list. There needs to be a space right after the "*"
* item 2
.. note::
This is a note.
See :class:`Seg`
ただしSeg
、太字で印刷されているだけで、クラスの自動生成されたドキュメントにはリンクされていません。
次のことも役に立ちませんでした。
See :class:`Seg`
Module :mod:'SegLib'
Module :mod:'SegLib.py'
編集:SegLibをセグメントに変更し(ありがとう、iElectric!)、chapter1.rstを次のように変更しました:
The :mod:`segments` Module
--------------------------
.. automodule:: segments.segments
.. autoclass:: segments.segments.Seg
それでも、Sphinxにクラス内の関数を直接ドキュメント化させることはできません。つまり、クラス内のすべての関数をドキュメントに自動的に追加することはできません。試した:
.. autofunction:: segments.segments.Seg.sid
そして得た:
autodoc can't import/find function 'segments.segments.Seg.sid', it reported error: "No module named Seg"
短いコマンドで関数とクラスを自動文書化する方法はありますか?