隐藏 Sphinx 重组文本中的标题级别

Jef*_*f G 5 restructuredtext python-sphinx

我继承了一个现有的 RST 文档,其结构如下:

DocTitle
========

Heading2
--------

Heading1
========
Run Code Online (Sandbox Code Playgroud)

请注意,Heading1是一个比 更大的标题Heading2。由于我现在要将此文档添加到目录中,因此我希望它能够正确缩进。这意味着将标题更改为新标题,如下所示:

DocTitle
########

Heading2
--------

Heading1
========
Run Code Online (Sandbox Code Playgroud)

问题是上面的结果Heading2大于Heading1。有没有某种方法可以定义标题样式而不向页面添加实际标题?例如,我想做类似的事情:

DocTitle
########

.. hidden::
   Heading1
   ========

Heading2
--------

Heading1
========
Run Code Online (Sandbox Code Playgroud)

有什么方法可以在 RST 文件中实现此结果吗?

相关问题: 跳过 reStructuredText 中的标题级别

这个问题的答案是“否”,但我想知道是否有一种方法可以定义从结果输出中隐藏的标题。

G. *_*lde 0

使用自定义 CSS 可以隐藏 HTML 输出中的元素,例如

\n
DocTitle\n########\n\n.. rst-class:: hide-me\n\ndummy section heading\n=====================\n\nHeading2\n--------\n\nHeading1\n========\n\n.. contents::\n.. sectnum::\n
Run Code Online (Sandbox Code Playgroud)\n

与 CSS 规则一起section.hide-me > h2 {display: none;}

\n

笔记:

\n
    \n
  • 虚拟部分仍然在输出中并显示在目录中。它还会影响节编号。

    \n
  • \n
  • rST 源中的“节标题”实际上创建了一个<section>带有嵌套<title>元素的文档树节点。<section>并且<title>元素没有“级别”属性 \xe2\x80\x93 节级别是从其嵌套级别派生的。

    \n
  • \n
  • “class”值被添加​​到<section>元素中,而不是其<title>。\n子节也嵌套在父元素中<section>。删除分类为“hide-me”的元素也会删除标题为“Heading2”的小节。

    \n
  • \n
\n

使用 Docutils 编译原始文档将使用两个顶级标题作为节标题,从而使文档没有文档标题。\n使用 Sphinx,两个标题也具有相同的级别,但第一个标题也用于文档元数据标题。

\n

如何将标题与文档的附加“超级标题”保持在同一级别?\n您还可以使用“ title”指令设置自定义“元数据文档标题” 。

\n