私はまもなくオープンソースの Python プロジェクトを開始し、docstring の書き方を事前に決めようとしています。明らかな答えは、reStructuredText と Sphinx を と一緒autodoc
に使用することです。なぜなら、コードを docstring に適切にドキュメント化してから、Sphinx に API ドキュメントを自動的に作成させるというアイデアが本当に好きだからです。
問題は、それが使用する reStructuredText 構文です。レンダリングされる前は完全に判読できないと思います。例えば:
:param path: The path of the file to wrap
:type path: str
:param field_storage: The :class:`FileStorage` instance to wrap
:type field_storage: FileStorage
:param temporary: Whether or not to delete the file when the File instance
is destructed
:type temporary: bool
その構文のごちゃまぜから何らかの意味を理解するためには、本当に速度を落として少し時間を割かなければなりません。私は、Google のやり方 ( Google Python Style Guide )の方がずっと好きです。
引数: path (str): ラップするファイルのパス field_storage (FileStorage): ラップする FileStorage インスタンス temporary (bool): ファイルが削除されたときにファイルを削除するかどうか インスタンスが破棄される
ずっといい!しかしもちろん、Sphinx にはそれがなく、すべてのテキストArgs:
を 1 つの長い行でレンダリングします。
要約すると、この reStructuredText 構文を使用してコード ベースを汚す前に、独自の API ドキュメントを作成する以外に、この reStructuredText 構文と Sphinx を使用する実際の代替手段があるかどうかを知りたいと思います。たとえば、Google スタイル ガイドの docstring スタイルを処理する Sphinx の拡張機能はありますか?