狮身人面像部分编号超过3级标题:.. sectnum ::

时间:2013-11-19 01:42:10

标签: python-sphinx restructuredtext

我正在使用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级。

如果有人能帮我解决这个问题,我真的很感激。

2 个答案:

答案 0 :(得分:2)

Sphinx似乎认为整个项目是一个文档,每个.rst文件都是它的一个章节;您可以在主.. toctree::中指明文件的顺序。我猜这就是你获得这些数字的原因。我猜这是一个非常常见的用例,不要让.rst个文件编号,所以也许有人应该提出这个。

顺便提一下,请注意Sphinx明确不支持sectnum。相反,他们建议您使用顶级:numbered:中的.. toctree::参数。 (http://sphinx-doc.org/rest.html

答案 1 :(得分:0)

我尝试将您的代码呈现为HTML,并且效果很好。

也许您可以考虑使用HTML格式。

enter image description here


此外,

#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