Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python sphinx 在使用“读取文档”主题时,如何将Sphinx生成的索引添加到侧边栏?_Python Sphinx_Sidebar_Read The Docs_Toctree - Fatal编程技术网

Python sphinx 在使用“读取文档”主题时,如何将Sphinx生成的索引添加到侧边栏?

Python sphinx 在使用“读取文档”主题时,如何将Sphinx生成的索引添加到侧边栏?,python-sphinx,sidebar,read-the-docs,toctree,Python Sphinx,Sidebar,Read The Docs,Toctree,当使用sphinx rtd主题时,我希望在侧栏中有一个自动生成索引的链接。我已尝试将其添加到目录树: .. toctree:: first second Index <:ref:`genindex`> 从斯芬克斯和没有其他影响 我想我可以简单地在themelayout.html文件中硬编码索引,但也许有更好的方法,不涉及修改标准主题 有什么提示吗 那么: .. toctree:: first second * :ref:`geninde

当使用
sphinx rtd主题时,我希望在侧栏中有一个自动生成索引的链接。我已尝试将其添加到目录树:

.. toctree::

    first
    second
    Index <:ref:`genindex`>
从斯芬克斯和没有其他影响

我想我可以简单地在theme
layout.html
文件中硬编码索引,但也许有更好的方法,不涉及修改标准主题

有什么提示吗

那么:

.. toctree::

    first
    second

* :ref:`genindex`

如果你了解狮身人面像和金贾是如何工作的,这很容易。不幸的是,如果你不这样做,他们不会给你足够的信息。简而言之,您必须覆盖模板:

  • 确保sphinx文档文件夹下有一个
    \u templates
    文件夹
  • 确保它列在您的
    conf.py
    中,例如
    templates\u path=[''\u templates']
  • 在名为
    layout.html
    的文件夹中创建一个文件
  • 将此代码段放入并保存。 感叹号/标记强制jinja使用父模板。 别忘了,否则会出现递归错误。 您只需覆盖
    菜单

    {%extends“!layout.html”%}
    {%块菜单%}
    {{super()}}
    {%endblock%}
    

这样做有效,但在目录和索引链接之间添加一个空行。这样做有效,但不会在主页目录树上添加索引链接,只在侧栏目录树上添加索引链接。是的,这就是问题的目的。如果需要,请将Steven的答案与目录树放在同一页上。通常它是默认存在的。谢谢,这确实比破解主题
layout.html
要好得多,因为我在2014年就这样做了,现在我已经切换到了这个解决方案(迟做总比不做好——接受这个作为答案也是一样:-)非常有魅力。我没有layout.html文件(使用现成的模板),所以添加了一个空的文件,然后添加了给定的代码,所有的工作都很好。感谢上述解决方案仅适用于平面html目录结构(无子目录)。我建议改用
。然后它也适用于嵌套目录结构
.. toctree::

    first
    second

* :ref:`genindex`