Sphinx プロジェクトに他の ReST ファイルを正しく含めるにはどうすればよいでしょうか? 質問する

Sphinx プロジェクトに他の ReST ファイルを正しく含めるにはどうすればよいでしょうか? 質問する

私の手書きのドキュメント/ユーザー ガイド (ReStructuredText と sphinx で作成) がかなり大きくなったため、サブディレクトリに .rst ファイルを整理し始めました。

には、各サブディレクトリの をindex.rst含めています。このには、さらにサブディレクトリ用の他のファイルも含まれています。subindex.rst.rst

index.rst:

.. include:: subdir1/subindex.rst
.. include:: subdir2/subindex.rst

subdir1/subindex.rst:

.. include:: file1.rst
.. include:: file2.rst

原理的にはこれはうまく機能しますが、sphinx は現在の作業ディレクトリを変更せずに、解析しようとするファイルを再帰的に探します.rst。そのため、include:: file1.rst内部を確認すると失敗しますsubdir1

私はサブディレクトリを無視するように設定することでこの問題を回避していますexclude_pattern。これは正しくないようです。

.rstサブディレクトリのファイルを含める正しい方法は何でしょうか?

ベストアンサー1

toctree ディレクティブあなたがしたいことをすればいいのです。

.. toctree::
    :glob:

    subdir1/*
    subdir2/*

glob はs*内のファイルをアルファベット順に並べ替えますsubdir。並べ替えを回避するには、glob なしで順序を指定します。

.. toctree::
    :maxdepth: 2

    subdir1/file2
    subdir1/file1
    subdir2/file1
    subdir2/file2

個別のページではなく、1つの大きなページが必要な場合は、シングルHTMLを作成する

おすすめ記事