5

Python の文書化に rST/Sphinx を使用していますが、ビルド時に次のような警告が表示されます。

...Code/doc/code.rst:3: SEVERE: Duplicate ID: "module-toast".

私のPythonソースファイルは次のように文書化されています:

#!/usr/bin/env python
'''
.. module:: toast
    :synopsis: Processes the blobs produced by :mod:`bread`.
'''
# my inline-rST documented code...

rST ファイルは、autodoc が提供するautomoduleディレクティブを使用して、すべての docstring を取り出し、すべてのメンバーを文書化します。

Toast
--------------------------------

.. automodule:: toast
    :members:

上記のコンボは問題なく動作しているように見えますが、エラーはこれを行う適切な方法があることを暗示しているようです。ソース ファイルの先頭からモジュール ディレクティブを削除すると、エラーはなくなりますが、Sphinx が取得したソースに概要オプションを追加できません。

4

3 に答える 3

4

よくわかりませんが、ディレクティブはそれ自体でautomoduleディレクティブを作成すると思いますmodule。次に、すでに 1 つが指定されているため、2 つあるため、重複 ID メッセージが表示されます。

currentmoduleの代わりに、モジュール マークアップでディレクティブを使用してみてくださいmodule。実際に試していないことは認めますが、うまくいくようです

于 2013-05-15T13:41:02.940 に答える