【发布时间】:2015-02-24 11:43:45
【问题描述】:
这是我理解的新的阅读文档主题generates the sidebar from the toctree,深度为2。我的文档比较深,深度为2还不够用。我怎样才能增加这个限制,或者最好完全删除它?
如果这不可能,我如何使用本地 ToC 而不是全局目录树?
【问题讨论】:
标签: python python-sphinx sidebar read-the-docs toctree
这是我理解的新的阅读文档主题generates the sidebar from the toctree,深度为2。我的文档比较深,深度为2还不够用。我怎样才能增加这个限制,或者最好完全删除它?
如果这不可能,我如何使用本地 ToC 而不是全局目录树?
【问题讨论】:
标签: python python-sphinx sidebar read-the-docs toctree
注意:之前的答案已过时。正如@Ariel 在评论中指出的那样,maxdepth 现在可以通过在html_theme_options 中设置navigation_depth 进行配置。根据README,在项目的 conf.py 中进行更改:
html_theme_options = {
'navigation_depth': 4,
}
查看source for the theme on Github,似乎ToC 深度在line 93 in sphinx_rtd_theme/layout.html 上是硬编码的。因此,您无法对主题进行配置来覆盖它。
由于该行是硬编码的,您将始终获得toctree 返回的全局目录树,而不是以下行“支持”的本地目录树。
当然,您可以分叉主题并更改该行以供本地使用(您可以在 RTD 上使用自定义主题,因此也应该在那里工作)。我尝试使用演示主题这样做。 maxdepth=3 看起来像这样,因此可能需要一些额外的 CSS。 documentation for the toctree template function 指定对于无限深度,只需传递 maxdepth=-1。请注意,这不会将折叠/展开添加到 TOC 的子级别。
可能是拉取请求的好目标?
【讨论】:
至少在 ReadTheDocs 中无法自定义此行为。但是,您仍然可以阅读页面中的附加细节层 - 它们只是不会显示在导航中。
【讨论】: