我正在使用Sphinx从第一个文件生成pdf文件。 Sphinx自动生成最多3级标题的节号,以及高达此级别的内容表。但是,我希望各个级别的标题都有编号并且在TOC中。为此,我尝试使用.. sectnum::
(http://docutils.sourceforge.net/docs/ref/rst/directives.html#table-of-contents)。结果并不完全符合我的预期:
1)在TOC和文本中的所有部分编号前面都添加了一个数字1.即,而不是1,它是1.1,而不是2,它是1.2。
2)在TOC和文本中直到第三级标题,部分编号重复排序,即在错误的标题前面有一个部分编号(正确的编号)(添加了1。前)。
这是我的第一个文件:
.. sectnum::
level 1: the first party
========================
level 1 desc: this document is about xyz
level 2
-------
level 2 desc
level 3
~~~~~~~~
level 3 content
level 4
^^^^^^^^
level 4 content
level 5
''''''''
level 5 content jflkasjfslkajf
asdfsafs
level 1: the second part
========================
fjsdafjskalfjslkafjksaljflksaj
fasdhfkjsahfjkhdsf
level 2
-------
level 2 desc
level 3
~~~~~~~~
level 3 content
level 4
^^^^^^^^
level 4 content
level 5
''''''''
level 5 content jflkasjfslkajf
asdfsafs
以下是TOC的结果:
(我拍了一下我的pdf文件来显示结果,但我发现我无法发布图片,因为我需要10点声望,这是我第一次发布任何内容)
1 1.1 level 1: the first party
1.1 1.1.1 level 2
2 1.2 level 1: the second part
2.1 1.2.1 level 2
以下是文字的结果:
1.1 LEVEL 1: THE FIRST PARTY
level 1 desc: this document is about xyz
1.1 1.1.1 level 2
level 2 desc
1.1.1 1.1.1.1 level 3
level 3 content
1.1.1.1.1 level 4
level 4 content
1.1.1.1.1.1 level 5
level 5 content jflkasjfslkajf asdfsafs
正如您所看到的,节编号中添加了1.并且标题重复到3级。
如果有人能帮我解决这个问题,我真的很感激。
答案 0 :(得分:2)
Sphinx似乎认为整个项目是一个文档,每个.rst
文件都是它的一个章节;您可以在主.. toctree::
中指明文件的顺序。我猜这就是你获得这些数字的原因。我猜这是一个非常常见的用例,不要让.rst
个文件编号,所以也许有人应该提出这个。
顺便提一下,请注意Sphinx明确不支持sectnum
。相反,他们建议您使用顶级:numbered:
中的.. toctree::
参数。 (http://sphinx-doc.org/rest.html)
答案 1 :(得分:0)
我尝试将您的代码呈现为HTML,并且效果很好。
也许您可以考虑使用HTML格式。
此外,
#addressBookWidgetDiv {
min-width: 300px;
width: 100%;
max-width: 900px;
min-height: 228px;
height: 240px;
max-height: 400px;
}
#walletWidgetDiv {
min-width: 300px;
width: 100%;
max-width: 900px;
min-height: 228px;
height: 240px;
max-height: 400px;
}
和
.. sectnum::
我认为它们没有什么不同,取决于您选择的设计。
.. toctree::
:numbered:
sectnum
)选择:toctree
了解详情> toctree number