我找不到处理此问题的指令。
假设有一个
rst
文档,并且出于某种原因您想在构建过程中隐藏单个 section
(无论是 HTML、PDF ..),例如:
Visible section
===============
Here some example I want to show
Not visible section
===================
Some text that I have written but for the current build I want to hide from the final document
是否有一个
.. hidden::
指令可以处理这个问题,我正在考虑类似的事情:
Visible section
================
Here some example I want to show
.. hidden::
Not visible section
===================
Some text that I have written but for the current build I want to hide from the final document
.. visible::
Another section
===============
Other visible section in both text and final document
您可以使用注释语法:http://www.sphinx-doc.org/en/master/usage/restructedtext/basics.html#comments
我得到的 Sphinx 版本会自动生成一个 index.rst 文件,该文件以这样的注释开头:
.. sphinx-quickstart on Sat Jun 22 15:48:19 2019.
You can adapt this file completely to your liking, etc
它没有出现在文档中。您可以以两个点和一个空格开始行,后跟您自己的文本,但也不会显示。您需要确保您创建的所有行的缩进与第一行相同。那么整个部分就不会显示出来。还要确保该部分之前和之后都有一个空行(除非它是文件中的第一部分或最后一个部分)
这里有一个隐藏部分的解决方案,因此它不会显示在 HTML 输出中。 不过,这并不影响构建。
这个想法是使用 class 指令,这样就能够将 CSS 类分配给部分。在 CSS 中,您可以使用
display: none
(或任何其他 CSS)定义类。
对于您的示例,它看起来像(注意标识):
Visible section
================
Here some example I want to show
.. class:: hidden
Not visible section
===================
Some text that I have written but for the current build I want to hide from the final document
Another section
===============
Other visible section in both text and final document
在 CSS 中添加以下样式:
.hidden { display: none }
这里有一个链接,解释了如何向 Sphinx 添加自定义 CSS。
如果您确实想从输出中删除某些元素(而不仅仅是隐藏它们),那么 strip-classes Docutils 设置可能是您的朋友。 它可以在与“conf.py”Sphinx 配置相同的目录中的“docutils.conf”文件中指定。