【问题标题】:How to hide TOC from sidebar in sphinx.ext.autosummary?如何从 sphinx.ext.autosummary 的侧边栏中隐藏 TOC?
【发布时间】:2021-06-25 23:28:53
【问题描述】:

我需要 Sphinx 自动摘要扩展来使用 :toctree: generated/ 生成存根,但我还想防止 TOC 条目出现在 HTML 侧边栏中。考虑以下文档字符串:

MySubPackage (mypackage.mysubpackage)
=====================================

Some Title
----------

.. currentmodule:: mypackage.mysubpackage

Some description


.. toctree::
   :hidden:
   :maxdepth: 1

   mypackage.mysubpackage.mysubsubpackage1
   mypackage.mysubpackage.mysubsubpackage2

Sub-Packages
------------

.. autosummary::
   :toctree: generated/

   mysubsubpackage1
   mysubsubpackage2

每个subsubpackage 都包含更多私有subsubsubpackages 以及在subsubpackage__init__.py 文件的文档字符串中公开的类和方法。 autosummary 成功为这些subsubpackages 中的所有类和函数生成存根文件,但不为中间包生成存根.rst 文件。最后,我留下了缺少的存根文件,没有这些存根文件,既不存在 TOC 条目,也不存在子子包的类和方法的模块路径。使用 Sphinx 的 .. toctree:: 指令通过生成中间存根文件解决了一半的问题。但是,我最终在侧边栏 TOC 中有重复的条目。我所需要的只是进行自动摘要以生成中间存根文件或使用某种自动摘要选项,例如:hiddentoc:,以便它保留生成的存根文件但不添加到 TOC 的条目中。我对 Sphinx 比较陌生,我尝试仅使用文档字符串来自动化文档生成过程。

提前非常感谢!

【问题讨论】:

标签: python python-sphinx documentation-generation toctree


【解决方案1】:

问题解决了!对于有类似问题的任何人,请继续阅读。

该问题是由于子包的__init__.py文件中重复使用:toctree: generated/选项引起的。它导致自动摘要扩展创建嵌套的/generated/generated/.. 目录,因此它无法找到 *.stub 文件。删除输出目录路径并将其保留为简单的:toctree: 后,问题已解决,无需使用额外的.. toctree::.. autosummary:: 指令。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-03-24
    • 1970-01-01
    • 2017-05-16
    • 2017-04-08
    • 1970-01-01
    • 2012-03-03
    • 2014-10-18
    相关资源
    最近更新 更多