#chapter #preprocessor #mdbook #sub #subchapters #chapter-zero

bin+lib mdbook-chapter-zero

一个允许第0章(子章节)的 mdBook 预处理器

1 个不稳定版本

0.1.0 2024年4月10日

1263文本处理

MIT 许可证

12KB
175

mdbook-chapter-zero

一个为 mdBook 设计的预处理器,允许选定的(子)章节编号从0开始而不是1。

有时您希望在书中特定章节中具有包含嵌套子章节或介绍性子章节的综合前言。mdBook 的前缀章节无法灵活地处理这种情况。此预处理器允许您具有可能的嵌套(子)章节0。

安装

此预处理器目前只能从源代码安装

cargo install --git https://github.com/xmiaocat/mdbook-chapter-zero

之后,将其添加到您的 book.toml

[preprocessor.chapter-zero]

最后,像往常一样运行 mdbook build

配置

此预处理器接受两个配置选项,以下显示默认值

[preprocessor.chapter-zero]
levels = []
marker = "<!-- ch0 -->\n"

要应用全局0索引到特定级别的所有(子)章节,请使用 levels 选项

  • levels: 应从0开始全局的章节级别的列表。默认为 [],这意味着不对章节编号进行全局更改。以下是一些示例
    • 如果设置为 [0],则顶级章节将使用0索引。
    • 如果设置为 [1],则所有章节的第一级子章节将使用0索引。
    • 如果设置为 [0, 1],则顶级章节和所有章节的第一级子章节将使用0索引。

levels 影响的所有(子)章节都将忽略 marker

要仅将0索引应用于特定(子)章节,请使用 marker 选项

  • marker: 表示此章节的直接子章节应使用0索引的字符串。默认为 <!-- ch0 -->\n

要将0索引应用于特定(子)章节的子项,请在父章节的Markdown文件中任何位置添加marker。出于清晰起见,最好将其放在文件顶部。

您可以使用任何字符串作为marker,不仅限于HTML注释,因为预处理程序会将标记从Markdown中删除。

与编号预处理器的使用

当与mdbook-numeqmdbook-numthm等处理器一起使用时,这些处理器可以将带有章节编号前缀的项目进行编号,请确保通过包含以下内容来确保此预处理程序在编号预处理程序之前运行。

[preprocessor.chapter-zero]
before = ["numeq", "numthm"]

到您的book.toml中。

依赖项

~11–22MB
~315K SLoC