如何在Sphinx TOC中包含`genindex`?

fun*_*ure 10 python-sphinx

Sphinx genindex在构建文档时会生成一个名为的索引,因此禁止在文档中使用该名称。现在,如何在目录中包含指向该索引的链接?

我已经试过了:

.. toctree::
   :maxdepth: 2

   genindex
   api


Indices and tables
==================

* :ref:`genindex`
Run Code Online (Sandbox Code Playgroud)

尽管最后一行确实创建了到文档中该索引的链接,但是在创建目录时,构建不知道引用:

WARNING: toctree contains reference to nonexisting document 'genindex'
Run Code Online (Sandbox Code Playgroud)

Dir*_*ler 5

创建genindex.rst具有以下内容的文件:

Index
=====
Run Code Online (Sandbox Code Playgroud)

在您的index.rst添加中:

.. toctree::
   :hidden:

   genindex
Run Code Online (Sandbox Code Playgroud)

如果您还希望在站点上拥有链接和文本“ 索引 ”,而不仅是在左侧导航中,请删除:hidden:

  • 这不是那么好笑。 (7认同)
  • 很好笑,[docs](http://www.sphinx-doc.org/en/stable/markup/toctree.html#special-names)明确声明不要使用该名称创建文件。 (5认同)
  • 你是对的。这可能会导致问题。我有一个项目,其中使用 rst2pdf 创建 PDF 不起作用,除非我不删除“genindex.rst”-Hack。 (3认同)