10

私は Sphinx (sphinx-1.2b1-py2.7) を使用しています。目次をサイドバーに表示したい。バイナリのようです: サイドバーの目次とテキスト本文の箇条書きリストの両方しか取得できないか、何も取得できません (サイドバーの目次と箇条書きリストはありません)。

次のように toctree ディレクティブを使用すると:

.. toctree::  
   :hidden:

   Topic1  
   Topic2  

結果: サイドバーに TOC がなく、本文にトピックの箇条書きリストがありません。

次のように toctree ディレクティブを使用すると:

.. toctree::  

   Topic1  
   Topic2  

結果: サイドバーの目次と本文のトピックの箇条書きリスト。

サイドバーにTOCが欲しいだけです。他のコマンド (maxdepth、includehidden) は機能しません。私はそれが行われたのを見てきましたが、それを機能させることはできません。conf.py は問題ないように見えますが、答えを探して数日経ってもうまくいきません。ありがとう。

4

1 に答える 1

5

私もこれに苦労しました。ここで答えを見つけました。

TOC は、toctree()内部 (たとえば、layout.html というファイル) への呼び出しを介して表示されます。特に、次のようなコード スニペットを介してサイドバーに表示されます<div class="sidebar">

{% block sidebartoc %}
<h3>{{ _('Table Of Contents') }}</h3>
{{ toctree() }}
{% endblock %}

私はテーマを使用しているので、layout.html はディレクトリ _themes 内のテーマ ディレクトリ内にあります。そうしないと、layout.html がディレクトリ _templates 内にある可能性があります。

新しいバージョンの Sphinx では、TOC を次の:hidden:ように使用するときに TOC を表示するために必要なもの

.. toctree::  
   :hidden:

のように、includehidden=Trueへの呼び出しに引数を追加することです。toctree()

{% block sidebartoc %}
<h3>{{ _('Table Of Contents') }}</h3>
{{ toctree(includehidden=True) }}
{% endblock %}
于 2013-12-30T14:13:13.480 に答える