ビルダー

これらは Sphinx に組み込まれているビルダーです。より多くのビルダーは、拡張機能によって追加できます。

ビルダーを選択するには、sphinx-build-M または -b コマンドラインオプションにビルダーの「名前」を指定する必要があります。

最も一般的なビルダーは次のとおりです。

html

HTML ページをビルドします。これはデフォルトのビルダーです。

dirhtml

HTML ページをビルドしますが、ドキュメントごとに 1 つのディレクトリを使用します。Web サーバーから提供する場合、よりきれいな URL(.html なし)になります。

singlehtml

コンテンツ全体を含む単一の HTML をビルドします。

htmlhelpqthelpdevhelpepub

これらの形式のいずれかでドキュメントコレクションを構築するための追加情報を含む HTML ファイルをビルドします。

applehelp

Apple Help Book をビルドします。hiutil および codesign が必要です。これらはオープンソースではなく、現在は Mac OS X 10.6 以降でのみ利用可能です。

latex

pdflatex を使用して PDF ドキュメントにコンパイルできる LaTeX ソースをビルドします。

man

UNIX システム用の groff 形式のマニュアルページをビルドします。

texinfo

makeinfo を使用して Info ファイルに処理できる Texinfo ファイルをビルドします。

text

プレーンテキストファイルをビルドします。

gettext

gettext スタイルのメッセージカタログ(.pot ファイル)をビルドします。

doctest

doctest 拡張機能が有効になっている場合、ドキュメント内のすべての doctest を実行します。

linkcheck

すべての外部リンクの整合性を確認します。

xml

Docutils ネイティブの XML ファイルをビルドします。

pseudoxml

中間ドキュメントツリーの内部構造を表示する、コンパクトできれいに印刷された「擬似 XML」ファイルをビルドします。


class sphinx.builders.html.StandaloneHTMLBuilder[ソース]

これは標準の HTML ビルダーです。その出力は、HTML ファイル、スタイルシート、およびオプションで reStructuredText ソースを含むディレクトリです。このビルダーの出力をカスタマイズする設定値がいくつかあります。詳細については、HTML 出力オプションの章を参照してください。

name = 'html'

ビルダーの名前。-b コマンドラインオプションで使用します。

format = 'html'

ビルダーの出力形式。または、ドキュメント出力が生成されない場合は ''。

supported_image_types: list[str] = ['image/svg+xml', 'image/png', 'image/gif', 'image/jpeg']

ビルダーでサポートされている画像形式の MIME タイプのリスト。画像ファイルは、ここに表示される順序で検索されます。

class sphinx.builders.dirhtml.DirectoryHTMLBuilder[ソース]

これは、標準の HTML ビルダーのサブクラスです。その出力は、HTML ファイルを含むディレクトリです。各ファイルは index.html と呼ばれ、ページ名のように名前が付けられたサブディレクトリに配置されます。たとえば、ドキュメント markup/rest.rst は出力ファイル markup/rest.html にはならず、markup/rest/index.html になります。ページ間のリンクを生成するとき、index.html は省略されるため、URL は markup/rest/ のようになります。

name = 'dirhtml'

ビルダーの名前。-b コマンドラインオプションで使用します。

format = 'html'

ビルダーの出力形式。または、ドキュメント出力が生成されない場合は ''。

supported_image_types: list[str] = ['image/svg+xml', 'image/png', 'image/gif', 'image/jpeg']

ビルダーでサポートされている画像形式の MIME タイプのリスト。画像ファイルは、ここに表示される順序で検索されます。

バージョン 0.6 で追加されました。

class sphinx.builders.singlehtml.SingleFileHTMLBuilder[ソース]

これは、プロジェクト全体を 1 つの出力ファイルに結合する HTML ビルダーです。(明らかにこれは小規模なプロジェクトでのみ機能します。)ファイルはルートドキュメントのように名前が付けられます。インデックスは生成されません。

name = 'singlehtml'

ビルダーの名前。-b コマンドラインオプションで使用します。

format = 'html'

ビルダーの出力形式。または、ドキュメント出力が生成されない場合は ''。

supported_image_types: リスト[文字列] = ['image/svg+xml', 'image/png', 'image/gif', 'image/jpeg']

ビルダーでサポートされている画像形式の MIME タイプのリスト。画像ファイルは、ここに表示される順序で検索されます。

バージョン 1.0 で追加.

class sphinxcontrib.htmlhelp.HTMLHelpBuilder[ソース]

このビルダーは、スタンドアロンの HTML ビルダーと同じ出力を生成しますが、Microsoft HTML Help Workshop でコンパイルして CHM ファイルにすることができる HTML ヘルプサポートファイルも生成します。

name = 'htmlhelp'

ビルダーの名前。-b コマンドラインオプションで使用します。

format = 'html'

ビルダーの出力形式。または、ドキュメント出力が生成されない場合は ''。

supported_image_types: リスト[文字列] = ['image/png', 'image/gif', 'image/jpeg']

ビルダーでサポートされている画像形式の MIME タイプのリスト。画像ファイルは、ここに表示される順序で検索されます。

class sphinxcontrib.qthelp.QtHelpBuilder[ソース]

このビルダーは、スタンドアロンの HTML ビルダーと同じ出力を生成しますが、Qt コレクションジェネレーターでコンパイルできる Qt ヘルプコレクションサポートファイルも生成します。

バージョン 2.0 で変更: sphinx.builders パッケージから sphinxcontrib.qthelp に移動しました。

name = 'qthelp'

ビルダーの名前。-b コマンドラインオプションで使用します。

format = 'html'

ビルダーの出力形式。または、ドキュメント出力が生成されない場合は ''。

supported_image_types: リスト[文字列] = ['image/svg+xml', 'image/png', 'image/gif', 'image/jpeg']

ビルダーでサポートされている画像形式の MIME タイプのリスト。画像ファイルは、ここに表示される順序で検索されます。

class sphinxcontrib.applehelp.AppleHelpBuilder[ソース]

このビルダーは、スタンドアロンの HTML ビルダーと同じ出力に基づいて Apple Help Book を生成します。

ソースディレクトリに .lproj フォルダーが含まれている場合、選択された言語に対応するフォルダーの内容が生成された出力とマージされます。これらのフォルダーは、他のすべてのドキュメントタイプでは無視されます。

有効なヘルプブックを生成するためには、このビルダーには、Mac OS X 10.6 以降でのみ利用可能なコマンドラインツール hiutil が必要です。applehelp_disable_external_toolsTrue に設定してインデックス作成手順を無効にすることができます。その場合、バンドル内のすべての .lproj フォルダーで hiutil が実行されるまで、出力は有効になりません。

name = 'applehelp'

ビルダーの名前。-b コマンドラインオプションで使用します。

format = 'html'

ビルダーの出力形式。または、ドキュメント出力が生成されない場合は ''。

supported_image_types: リスト[文字列] = ['image/png', 'image/gif', 'image/jpeg', 'image/tiff', 'image/jp2', 'image/svg+xml']

ビルダーでサポートされている画像形式の MIME タイプのリスト。画像ファイルは、ここに表示される順序で検索されます。

バージョン 1.3 で追加.

バージョン 2.0 で変更: sphinx.builders パッケージから sphinxcontrib.applehelp に移動しました。

class sphinxcontrib.devhelp.DevhelpBuilder[ソース]

このビルダーは、スタンドアロンの HTML ビルダーと同じ出力を生成しますが、GNOME Devhelp リーダーで表示できる GNOME Devhelp サポートファイルも生成します。

name = 'devhelp'

ビルダーの名前。-b コマンドラインオプションで使用します。

format = 'html'

ビルダーの出力形式。または、ドキュメント出力が生成されない場合は ''。

supported_image_types: リスト[文字列] = ['image/png', 'image/gif', 'image/jpeg']

ビルダーでサポートされている画像形式の MIME タイプのリスト。画像ファイルは、ここに表示される順序で検索されます。

バージョン 2.0 で変更: sphinx.builders パッケージから sphinxcontrib.devhelp に移動しました。

class sphinx.builders.epub3.Epub3Builder[ソース]

このビルダーは、スタンドアロンの HTML ビルダーと同じ出力を生成しますが、電子書籍リーダー用の *epub* ファイルも生成します。詳細については、Epub の情報 を参照してください。epub 形式の定義については、https://idpf.org/epub または https://en.wikipedia.org/wiki/EPUB を参照してください。このビルダーは *EPUB 3* ファイルを作成します。

name = 'epub'

ビルダーの名前。-b コマンドラインオプションで使用します。

format = 'html'

ビルダーの出力形式。または、ドキュメント出力が生成されない場合は ''。

supported_image_types: リスト[文字列] = ['image/svg+xml', 'image/png', 'image/gif', 'image/jpeg']

ビルダーでサポートされている画像形式の MIME タイプのリスト。画像ファイルは、ここに表示される順序で検索されます。

バージョン 1.4 で追加.

バージョン 1.5 で変更: Sphinx 1.5 以降、epub3 ビルダーがデフォルトの epub ビルダーとして使用されます。

class sphinx.builders.latex.LaTeXBuilder[source]

このビルダーは、出力ディレクトリに LaTeX ソースファイルを生成します。実際の PDF ビルドは、この出力ディレクトリ内で行われ、2 段階でトリガーする必要があります。これは、そこで make all-pdf を使用して行うことができます。2 つのステップを 1 つにまとめるには、プロジェクトルートで sphinx-build -M (つまり、-b latexpdf ではなく -M latexpdf)または make latexpdf を使用します。

利用可能なオプションについては、latex_documents およびLaTeX 出力オプションの章を参照してください。

PDF ビルドには、十分に完全な LaTeX インストールが必要です。テストは現在(5.3.0 以降)、Ubuntu 22.04LTS で行われており、その LaTeX ディストリビューションは 2022/02/04 現在、アップストリームの TeXLive 2021 に一致しますが、PDF ビルドは、はるかに古い LaTeX インストールでも正常に実行できます。

いずれにせよ、たとえば Ubuntu では、以下のパッケージがすべて存在する必要があります

  • texlive-latex-recommended

  • texlive-fonts-recommended

  • texlive-fonts-extra (fontawesome5 に必要、下記の 7.4.0 の変更通知を参照)

  • tex-gyre (latex_engine がデフォルトのままの場合)

  • texlive-latex-extra

  • latexmk

バージョン 4.0.0 で変更: TeX Gyre フォントが 'pdflatex' エンジン (デフォルト) に必要になりました。

バージョン 7.4.0 で変更: LaTeX パッケージ xcolor が必須になりました(いずれにしても Ubuntu texlive-latex-recommended の一部です)。LaTeX パッケージ fontawesome5 が推奨されます。詳細については、‘sphinxsetup’ iconpackage キーを参照してください。

状況によっては、追加のパッケージが必要です

  • キリル文字の場合は texlive-lang-cyrillic(および、デフォルトフォントを使用する場合は cm-super

  • ギリシャ文字の場合は texlive-lang-greek(および、デフォルトフォントを使用する場合は cm-super

  • latex_engine'xelatex' の場合は texlive-xetex

  • latex_engine'lualatex' の場合は texlive-luatex

  • latex_engine'xelatex' または 'lualatex' の場合は fonts-freefont-otf

注記

1.6 以降、GNU/Linux および macOS では、make latexpdf は必要な実行回数が自動的に実行されるように latexmk を使用します。Windows では、PDF ビルドは固定回数の LaTeX 実行 (3 回、次に makeindex、次にさらに 2 回) を実行します。

latexmk にオプションを渡すには、LATEXMKOPTS Makefile 変数を使用します。例:

make latexpdf LATEXMKOPTS="-silent"

コンソール出力を最小限に抑えます。

また、latexmk がバージョン 4.52b 以上 (2017 年 1 月) の場合、多数のグラフィックスインクルードがある場合、LATEXMKOPTS="-xelatex" は XeLateX による PDF ビルドを高速化します。

オプションを (pdf|xe|lua)latex バイナリに直接渡すには、変数 LATEXOPTS を使用します。例:

make latexpdf LATEXOPTS="--halt-on-error"
name = 'latex'

ビルダーの名前。-b コマンドラインオプションで使用します。

format = 'latex'

ビルダーの出力形式。または、ドキュメント出力が生成されない場合は ''。

supported_image_types: list[str] = ['application/pdf', 'image/png', 'image/jpeg']

ビルダーでサポートされている画像形式の MIME タイプのリスト。画像ファイルは、ここに表示される順序で検索されます。

直接 PDF ビルダーは、rinohtype によって提供されていることに注意してください。ビルダーの名前は rinoh です。詳細については、rinohtype マニュアルを参照してください。

class sphinx.builders.text.TextBuilder[source]

このビルダーは、各 reStructuredText ファイルのテキストファイルを生成します。これは、reStructuredText ソースとほぼ同じですが、読みやすくするためにマークアップの多くが削除されています。

name = 'text'

ビルダーの名前。-b コマンドラインオプションで使用します。

format = 'text'

ビルダーの出力形式。または、ドキュメント出力が生成されない場合は ''。

supported_image_types: list[str] = []

ビルダーでサポートされている画像形式の MIME タイプのリスト。画像ファイルは、ここに表示される順序で検索されます。

バージョン 0.4 で追加。

class sphinx.builders.manpage.ManualPageBuilder[source]

このビルダーは、groff 形式のマニュアルページを生成します。man_pages 設定値を使用して、どのマニュアルページにどのドキュメントを含めるかを指定する必要があります。

name = 'man'

ビルダーの名前。-b コマンドラインオプションで使用します。

format = 'man'

ビルダーの出力形式。または、ドキュメント出力が生成されない場合は ''。

supported_image_types: list[str] = []

ビルダーでサポートされている画像形式の MIME タイプのリスト。画像ファイルは、ここに表示される順序で検索されます。

バージョン 1.0 で追加.

class sphinx.builders.texinfo.TexinfoBuilder[source]

このビルダーは、makeinfo プログラムによって Info ファイルに処理できる Texinfo ファイルを生成します。texinfo_documents 設定値を使用して、どの Texinfo ファイルにどのドキュメントを含めるかを指定する必要があります。

Info 形式は、GNU Emacs および端末ベースのプログラム info で使用されるオンラインヘルプシステムの基礎です。詳細については、Texinfo info を参照してください。Texinfo 形式は、GNU プロジェクトで使用される公式のドキュメントシステムです。Texinfo の詳細については、https://www.gnu.org/software/texinfo/ を参照してください。

name = 'texinfo'

ビルダーの名前。-b コマンドラインオプションで使用します。

format = 'texinfo'

ビルダーの出力形式。または、ドキュメント出力が生成されない場合は ''。

supported_image_types: list[str] = ['image/png', 'image/jpeg', 'image/gif']

ビルダーでサポートされている画像形式の MIME タイプのリスト。画像ファイルは、ここに表示される順序で検索されます。

バージョン 1.1 で追加されました。

class sphinxcontrib.serializinghtml.SerializingHTMLBuilder[ソース]

このビルダーは、生成されたHTMLドキュメントをダンプするために、PythonシリアライズAPI(picklesimplejsonphpserializeなど)を実装するモジュールを使用します。pickleビルダーは、このビルダーのサブクラスです。

PHPシリアライズ形式にシリアライズするこのビルダーの具体的なサブクラスは、次のようになります。

import phpserialize

class PHPSerializedBuilder(SerializingHTMLBuilder):
    name = 'phpserialized'
    implementation = phpserialize
    out_suffix = '.file.phpdump'
    globalcontext_filename = 'globalcontext.phpdump'
    searchindex_filename = 'searchindex.phpdump'
implementation

pickleモジュールと同じ名前の関数に準拠するdump()load()dumps()、およびloads()関数を実装するモジュール。このインターフェースを実装することがわかっているモジュールは、simplejsonphpserializeplistlibなどです。

out_suffix

すべての通常ファイルのサフィックス。

globalcontext_filename

「グローバルコンテキスト」を含むファイルの名前。これは、プロジェクトの名前など、いくつかの一般的な構成値を含むdictです。

searchindex_filename

Sphinxが生成する検索インデックスのファイル名。

出力形式の詳細については、シリアライズビルダーの詳細を参照してください。

バージョン 0.5 で追加されました。

class sphinxcontrib.serializinghtml.PickleHTMLBuilder[ソース]

このビルダーは、標準のHTMLテンプレートを使用しないWebアプリケーション(またはカスタムの後処理ツール)で使用するために、主にHTMLフラグメントとTOC情報を含むpickleファイルのディレクトリを生成します。

出力形式の詳細については、シリアライズビルダーの詳細を参照してください。

name = 'pickle'

ビルダーの名前。-b コマンドラインオプションで使用します。

古い名前webも引き続き機能します。

format = 'html'

ビルダーの出力形式。または、ドキュメント出力が生成されない場合は ''。

supported_image_types: list[str] = ['image/svg+xml', 'image/png', 'image/gif', 'image/jpeg']

ビルダーでサポートされている画像形式の MIME タイプのリスト。画像ファイルは、ここに表示される順序で検索されます。

ファイルサフィックスは.fpickleです。グローバルコンテキストはglobalcontext.pickleと呼ばれ、検索インデックスはsearchindex.pickleと呼ばれます。

class sphinxcontrib.serializinghtml.JSONHTMLBuilder[ソース]

このビルダーは、標準のHTMLテンプレートを使用しないWebアプリケーション(またはカスタムの後処理ツール)で使用するために、主にHTMLフラグメントとTOC情報を含むJSONファイルのディレクトリを生成します。

出力形式の詳細については、シリアライズビルダーの詳細を参照してください。

name = 'json'

ビルダーの名前。-b コマンドラインオプションで使用します。

format = 'html'

ビルダーの出力形式。または、ドキュメント出力が生成されない場合は ''。

supported_image_types: list[str] = ['image/svg+xml', 'image/png', 'image/gif', 'image/jpeg']

ビルダーでサポートされている画像形式の MIME タイプのリスト。画像ファイルは、ここに表示される順序で検索されます。

ファイルサフィックスは.fjsonです。グローバルコンテキストはglobalcontext.jsonと呼ばれ、検索インデックスはsearchindex.jsonと呼ばれます。

バージョン 0.5 で追加されました。

class sphinx.builders.gettext.MessageCatalogBuilder[ソース]

このビルダーは、gettextスタイルのメッセージカタログを生成します。各トップレベルのファイルまたはサブディレクトリは、単一の.potカタログテンプレートを拡張します。

詳細については、国際化のドキュメントを参照してください。

name = 'gettext'

ビルダーの名前。-b コマンドラインオプションで使用します。

format = ''

ビルダーの出力形式。または、ドキュメント出力が生成されない場合は ''。

supported_image_types: list[str] = []

ビルダーでサポートされている画像形式の MIME タイプのリスト。画像ファイルは、ここに表示される順序で検索されます。

バージョン 1.1 で追加されました。

class sphinx.builders.changes.ChangesBuilder[ソース]

このビルダーは、現在のversionに対する、すべてのversionaddedversionchangeddeprecated、およびversionremovedディレクティブのHTML概要を生成します。これは、例えば変更履歴ファイルを生成するのに役立ちます。

name = 'changes'

ビルダーの名前。-b コマンドラインオプションで使用します。

format = ''

ビルダーの出力形式。または、ドキュメント出力が生成されない場合は ''。

supported_image_types: list[str] = []

ビルダーでサポートされている画像形式の MIME タイプのリスト。画像ファイルは、ここに表示される順序で検索されます。

class sphinx.builders.dummy.DummyBuilder[ソース]

このビルダーは出力を生成しません。入力は解析され、一貫性がチェックされるだけです。これはリンティングの目的で役立ちます。

name = 'dummy'

ビルダーの名前。-b コマンドラインオプションで使用します。

supported_image_types: list[str] = []

ビルダーでサポートされている画像形式の MIME タイプのリスト。画像ファイルは、ここに表示される順序で検索されます。

バージョン 1.4 で追加.

class sphinx.builders.linkcheck.CheckExternalLinksBuilder[ソース]

このビルダーは、すべてのドキュメントで外部リンクをスキャンし、requestsでそれらを開こうとし、壊れているものと標準出力および出力ディレクトリのoutput.txtにリダイレクトされたものの概要を書き込みます。

name = 'linkcheck'

ビルダーの名前。-b コマンドラインオプションで使用します。

format = ''

ビルダーの出力形式。または、ドキュメント出力が生成されない場合は ''。

supported_image_types: list[str] = []

ビルダーでサポートされている画像形式の MIME タイプのリスト。画像ファイルは、ここに表示される順序で検索されます。

バージョン 1.5 で変更: Sphinx 1.5以降、linkcheck ビルダーは requests モジュールを使用します。

バージョン 3.4 で変更: linkcheck ビルダーは、サーバーがレート制限を適用すると、リンクを再試行します。

class sphinx.builders.xml.XMLBuilder[ソース]

このビルダーは、DocutilsネイティブのXMLファイルを生成します。出力は、XSLTプロセッサなどの標準XMLツールを使用して、任意の最終形式に変換できます。

name = 'xml'

ビルダーの名前。-b コマンドラインオプションで使用します。

format = 'xml'

ビルダーの出力形式。または、ドキュメント出力が生成されない場合は ''。

supported_image_types: list[str] = []

ビルダーでサポートされている画像形式の MIME タイプのリスト。画像ファイルは、ここに表示される順序で検索されます。

バージョン 1.2 で追加。

class sphinx.builders.xml.PseudoXMLBuilder[ソース]

このビルダーは、Sphinx/Docutilsの「リーダーからトランスフォームからライター」パイプラインをデバッグするために使用されます。インデント(終了タグなし)でネストを示す、コンパクトな整形された「疑似XML」ファイルを生成します。すべての要素の外部属性が出力され、残りの「保留中」要素の内部属性も出力されます。

name = 'pseudoxml'

ビルダーの名前。-b コマンドラインオプションで使用します。

format = 'pseudoxml'

ビルダーの出力形式。または、ドキュメント出力が生成されない場合は ''。

supported_image_types: list[str] = []

ビルダーでサポートされている画像形式の MIME タイプのリスト。画像ファイルは、ここに表示される順序で検索されます。

バージョン 1.2 で追加。

より多くのビルダーを提供する組み込みSphinx拡張機能は次のとおりです。

シリアライズビルダーの詳細

すべてのシリアライズビルダーは、ソースファイルごとに1つのファイルといくつかの特別なファイルを出力します。また、reStructuredTextソースファイルを出力ディレクトリの_sourcesディレクトリにコピーします。

PickleHTMLBuilderは、pickleシリアライズインターフェースを実装する組み込みのサブクラスです。

ソースファイルごとのファイルには、out_suffixの拡張子が付いており、ソースファイルと同様にディレクトリに配置されています。それらは、これらのキーを持つ辞書(または辞書のような構造)に非シリアライズされます

body

HTMLトランスレータによってレンダリングされる、HTML「body」(つまり、ソースファイルのHTMLレンダリング)。

title

ドキュメントのタイトル(HTML形式)(マークアップが含まれる場合があります)。

toc

ファイルの内容の目次で、HTMLの<ul>としてレンダリングされます。

display_toc

tocに複数のエントリが含まれている場合はTrueのブール値。

current_page_name

現在のファイルのドキュメント名。

parentsprevnext

TOCツリー内の関連する章に関する情報。各関係は、キーlink(関係のHREF)とtitle(HTMLとしての関連ドキュメントのタイトル)を持つ辞書です。parentsは関係のリストであり、prevnextは単一の関係です。

sourcename

_sourcesの下のソースファイルの名前。

特別なファイルは、ルート出力ディレクトリにあります。それらは

SerializingHTMLBuilder.globalcontext_filename

これらのキーを持つpickle化されたdict

project, copyright, release, version

設定ファイルで指定された値と同じ値です。

style

html_style.

last_updated

最終ビルドの日付です。

builder

使用されたビルダーの名前です。pickle の場合は常に 'pickle' です。

titles

すべてのドキュメントのタイトルを HTML 文字列として格納した辞書です。

SerializingHTMLBuilder.searchindex_filename

ドキュメントの検索に使用できるインデックスです。次のエントリを含む、pickle 化されたリストです。

  • インデックス付けされたドキュメント名の一覧。

  • 最初のリストと同じ順序で、ドキュメントのタイトルを HTML 文字列として格納したリスト。

  • 単語の語幹 (英語のステマーで処理) を、最初のリストへのインデックスである整数のリストにマッピングする辞書。

environment.pickle

ビルド環境です。これは常に pickle ファイルであり、ビルダーとは独立しており、ビルダーが開始されたときに使用された環境のコピーです。

他の pickle ファイルとは異なり、この pickle ファイルはアンピクル化時に sphinx パッケージが利用可能である必要があります。