我可以在 GitHub 的 rST 中 "fix" 标题级别吗?
Can I "fix" heading levels in rST on GitHub?
在 GitHub 上,在 .md
文件中,我可以指定按照它们在那里显示的方式尊重的标题级别,但我的 .rst
文件不是: "highest" 级标题被视为 1 级标题,
例如,
## Heading
Stuff
## Sub-heading
More stuff
在 .md
中会将第一个视为 second-level 标题,将第二个视为 third-level 标题,而其等效项(例如由 pandoc
生成) ,
Heading
-------
Stuff
Sub-heading
~~~~~~~~~~~
More stuff
被视为 first-level 和 second-level 标题。
有办法克服这个问题吗?我可以 "fix" rST 中的标题级别,按照 GitHub 的解释吗?
不,这不可能。
Docutils 不允许跳过 header 级别。事实上,它会在不一致的嵌套级别上严重崩溃。此外,对于 ReST 语法中的哪些字符代表哪个级别,这里没有硬性规定。简单地假设它们按照它们被发现的顺序出现(不一致出现在你退后一步,然后又下来——假设你使用相同的模式返回)。因此,无论您使用哪个字符,第一个 header 始终是 1 级 header (<h1>
)。但是,在 Markdown 中,级别在语法中是明确的。如果用户以 ### Header
开头,则文档中的第一个 header 必须是级别 3 (<h3>
)。在幕后,Docutils 没有保留该信息的机制。它只知道header是连续顺序中的"next higher"还是"lower"级别。
在 GitHub 上,在 .md
文件中,我可以指定按照它们在那里显示的方式尊重的标题级别,但我的 .rst
文件不是: "highest" 级标题被视为 1 级标题,
例如,
## Heading
Stuff
## Sub-heading
More stuff
在 .md
中会将第一个视为 second-level 标题,将第二个视为 third-level 标题,而其等效项(例如由 pandoc
生成) ,
Heading
-------
Stuff
Sub-heading
~~~~~~~~~~~
More stuff
被视为 first-level 和 second-level 标题。
有办法克服这个问题吗?我可以 "fix" rST 中的标题级别,按照 GitHub 的解释吗?
不,这不可能。
Docutils 不允许跳过 header 级别。事实上,它会在不一致的嵌套级别上严重崩溃。此外,对于 ReST 语法中的哪些字符代表哪个级别,这里没有硬性规定。简单地假设它们按照它们被发现的顺序出现(不一致出现在你退后一步,然后又下来——假设你使用相同的模式返回)。因此,无论您使用哪个字符,第一个 header 始终是 1 级 header (<h1>
)。但是,在 Markdown 中,级别在语法中是明确的。如果用户以 ### Header
开头,则文档中的第一个 header 必须是级别 3 (<h3>
)。在幕后,Docutils 没有保留该信息的机制。它只知道header是连续顺序中的"next higher"还是"lower"级别。