我正在尝试以某种方式使用sphinx来记录文档的多个“级别”,例如:

  • Api引用
  • 手册
  • 教程

  • 这个想法是,目录相对于您所在的部分显示在侧栏上。因此,当您位于主索引上时,它仅显示上述部分。当你进入例如。 “手册”显示了特定于该部分的不同ToC,以及一种返回主ToC的方法。

    我一直在试图弄清楚如何使其在Sphinx中工作而不被黑客入侵,但是到目前为止,还没有找到一种方法。文件夹结构已经反射(reflect)了不同的部分(即,所有“手动”文档都存储在_source/manual下),我尝试将单独的索引文件放置在每个目录中,但是看来toctree功能仅查看主索引文件。

    我正在使用“readthedocs”主题,我专门查看的代码是https://github.com/snide/sphinx_rtd_theme/blob/master/sphinx_rtd_theme/layout.html#L93

    谁能告诉我如何使用Sphinx添加这样的ToC?

    谢谢

    最佳答案

    (此响应可能有点晚了)
    我有一个类似的情况,同一目录树中包含三个部分:

  • 硬件
  • 软件
  • 教程

  • 我试图实现相同的目的,即从我的侧边栏菜单中隐藏了不属于当前toctree-l1的所有内容。知道Sphinx添加了CSS类“current”后,我想到了:
    #sidebar li.toctree-l1:not(.current){
      display: none;
    }
    

    这不是有史以来最好的解决方案,但是由于Sphinx只能处理一个文档的主根,并从该主根创建整个TOC树,因此,如果仅在侧边栏菜单中需要它,那么CSS应该为您工作。

    我的菜单的屏幕截图仅显示一个部分下面的内容:

    关于python - Python-Sphinx中的多个级别的Toctree,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25693324/

    10-13 06:36