知識ベース

Sphinx(ドキュメントジェネレーター)

Sphinxは、Pythonコミュニティが作成および使用するドキュメントジェネレーターです。 Pythonで書かれており、他の環境でも使用されます。

目的と機能

Sphinxは、reStructuredTextファイルをHTML Webサイトや、PDF、EPub、Texinfo、manなどの他の形式に変換します。

reStructuredTextは拡張可能です。Sphinxは、ソースコードからドキュメントを自動生成したり、数学表記を記述したり、ソースコードを強調表示したりするなど、いくつかの拡張機能によってその拡張性を利用します。

歴史と使用

最初の公開リリースであるバージョン0.1.61611は、2008年3月21日に発表されました。ドキュメント用のPythonプロジェクト用に開発され、広く使用されています。

2008年の導入以来、Sphinxは、Bazaar、SQLAlchemy、MayaVi、SageMath、SciPy、Django、Pylonsなど、他の多くの重要なPythonプロジェクトに採用されています。また、BlenderユーザーマニュアルおよびPython APIドキュメントにも使用されます。

2010年、Eric Holscherは、ソフトウェアドキュメントのメンテナンスを容易にする取り組みの一環として、Read the Docsプロジェクトの作成を発表しました。ドキュメントを読むと、コミットのたびにSphinxドキュメントを構築およびアップロードするプロセスが自動化されます。

Linuxカーネル

Linuxカーネルのドキュメントサブシステムは2016年に変更されました。4.7サイクルから、ドキュメントはSphinxを使用するように切り替わり始めました。

  • LCA2016でのトーク:YouTubeでカーネルドキュメントメンテナーとして学んだこと
  • LCA2017でのトーク:カーネルのドキュメント:YouTubeの内容と今後の展開