【问题标题】:Hide specific files from toctree?从 toctree 隐藏特定文件?
【发布时间】:2013-12-15 12:10:42
【问题描述】:

我在我的本地主机上使用 readthedocs.org 实例从我的 github repo 构建 HTML 文档,我希望能够执行以下操作。

目前我有一个使用 toctree 的 glob 功能读取的文件列表,如下所示:

.. toctree::
    :maxdepth: 2
    :glob:

     *

但我需要避免在我的目录中列出某些文件,例如:

Test_Manuals.rst
Test_Process.rst
Test_Users.rst
Testing.rst       <--- Only this file should appear in the toctree, all others are listed inside this one 
Testing_on_test_dot_spy.rst

我尝试在:glob: 部分下方添加:hidden:,但它只是隐藏了所有内容。

我查看了尽可能多的文档,但没有找到将这两个选项一起使用的示例。

知道如何实现吗?

【问题讨论】:

  • 你能简单地手动构造 toctree 而不是使用 * 吗?在最坏的情况下,您需要编写一个自定义脚本 sn-p 输出 .rst 本身:(
  • 我想让开发者在github上编辑文档,不用担心toctree。它应该使用 :glob: 来索引所有可用的文件,但我想隐藏一些特定的文件。
  • 在这种情况下维护手动文档树是最简单的选择。

标签: python-sphinx glob restructuredtext toctree


【解决方案1】:

我对 Sphinx 比较陌生,所以也许这是可怕的 Sphinx 礼仪,但我发现这给出了预期的行为而没有任何警告:

.. toctree::
  :glob:

  dir_to_glob/*

.. toctree::
  :hidden:

  dir_to_glob/file_to_hide

在第二个 toctree 中添加似乎会覆盖如何处理 file_to_hide 而不会弄乱全局中的任何内容。这样,您只需要维护一个“排除”列表(对我来说很小,听起来也可能适合您的情况。)

【讨论】:

  • 这在我的场景中不起作用:我在index.rst 中的顶级目录树包含foo,而foo.rst 中有你的两个目录树。当我制作 html 时,index.html 会显示它的目录树,它包含完整通配符中的所有内容,而不是通配符减去特定的内容。编辑:首先放置隐藏的目录树也没有解决它。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-11-26
  • 2011-12-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多