2017-06-15 3 views
3

手書きのドキュメント/ユーザーガイド(ReStructuredText with sphinxで書かれています)がかなり大きくなったので、サブディレクトリに自分の.rstファイルを整理し始めました。 index.rst他のReST-fileをsphinx-projectに正しく組み込むには?

私はさらにサブディレクトリのための他の.rst -filesを含んitselfs各サブディレクトリのsubindex.rstを含めています。

index.rst

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

subdir1/subindex.rst:原則として

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

これは、スフィンクスが再帰的にそれを解析しようとする.rst -filesを探している以外、うまく動作します。現在の作業ディレクトリを変更することなく。だから、include:: file1.rstsubdir1の中に見ると失敗します。

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

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

+0

'toctree'ディレクティブについてお読みください:http://www.sphinx-doc.org/en/stable/markup/toctree.html – Paebbels

+0

subindex.rstのincludeディレクティブを' .. include ::/subdir1/file1.rst'と '..inc ::/subdir1/file2.rst'です。 – mzjn

答えて

2

toctree directiveは、必要な操作を行う必要があります。

.. toctree:: 
    :glob: 

    subdir1/* 
    subdir2/* 

グロブ*はアルファベット順にsubdirの内のファイルを並べ替えます。ソートを避けるために、グロブを使わずに順序を指定することができます。

.. toctree:: 
    :maxdepth: 2 

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

したくない場合は、個々のページが、1つの巨大なページ、あなたはmake singlehtmlを呼び出すことができます。

関連する問題