Skip to content

自动编号 ​

WonderPen 提供两种章节编号方式:

  • 新建时续号:根据前一篇文档的标题生成下一个标题,适合按顺序添加章节或日记。生成的数字是普通文字,已有标题不会随目录变化自动改号。
  • 编号宏:在标题中写入 {$N} 等标记,让编号随目录位置重新计算,适合经常增删、移动章节的长篇作品。

数字章节编号 ​

右键点击已有文档,选择在下方新建文档时,WonderPen 会尝试根据它的标题,为新建的同级文档续号。例如:

前一篇文档标题新建文档标题
第 1 章第 2 章
第一章第二章
Chapter 1Chapter 2
001002
1.21.3

并非所有标题格式都能识别。如果没有生成编号,可以手动填写标题。这里的 1.2 只是标题中的文字,不代表目录树的实际层级。

日期章节编号 ​

在日期标题的文档下方新建同级文档时,也可以按日历顺延一天,适合写日记:

前一篇文档标题新建文档标题
2026-01-252026-01-26
2026/01/312026/02/01
2026年12月31日2027年01月01日
1月25日1月26日

日期续号以原标题为基础,不是自动填入今天的日期。日期后如果还有文字,会保留这些文字,新建后可按需要修改。

宏 ​

要让已有章节的编号随目录变化而更新,可以在目录树中右键点击文档,选择重命名,把标题里的固定数字改为宏。例如,将 第 3 章 佳肴 改为 第 {$N} 章 佳肴。每篇需要动态编号的文档都应使用宏。

编辑标题时显示宏的原始写法,结束编辑后显示计算出的编号;导出标题时也使用计算结果。

编辑标题时输入宏,结束编辑后显示章节编号

例如,以下是同一父文档下的前三篇文档,前面及中间均没有其他文档,也没有重置标记:

原始标题(含宏)显示标题
第{$N}章 启程第1章 启程
第{$N}章 相遇第2章 相遇
第{$N}章 归途第3章 归途

同级计数 ​

{$N} 默认表示当前文档在同一父文档下的同级序号,从 1 开始;{$N0} 使用同一序号,但从 0 开始。

  • 不同父文档下分别计数,顶层文档也有自己的序号。
  • 同级中没有使用宏的文档也占一个位置;下级文档不占父文档同级的序号。
  • 移动、插入或删除同级文档后,编号会重新计算。

例如,同级的前三篇文档依次是“序言”“第一章”“第二章”,即使序言没有使用宏,后两篇标题中的 {$N} 也会显示为 2、3。可在正文第一章的标题中添加 {$N_RESET},让它从 1 开始,详见重置编号。

调整当前编号 ​

在宏中加上 +数字,可以给当前宏的结果增加一个非负整数。以下每行是同级第一篇文档的不同标题写法,均未使用重置标记:

原始标题(含宏)显示标题
第{$N}章第1章
第{$N0}章第0章
第{$N+49}章第50章
第{$N0+50}章第50章

这个加数只作用于所在的宏,不会改变后续文档的起点。如果希望从某一章开始连续编号为 50、51、52,请使用指定编号开始数字。

宏的输入格式

宏中的字母需使用大写,符号使用半角字符,宏内部不能有空格。例如 {$N} 有效,{$n}、{$ N} 无效。宏外可以保留空格,如 第 {$N} 章。无法识别的写法会原样显示。

宏的中文支持 ​

要显示汉字数字,可以使用 {$N_ZH} 或 {$N0_ZH}。它们的计数规则与 {$N}、{$N0} 相同,只改变数字的显示形式。

以下每行是同级第一篇文档的不同标题写法,均未使用重置标记:

原始标题(含宏)显示标题
第{$N_ZH}章第一章
第{$N0_ZH}章第零章
第{$N_ZH+49}章第五十章
第{$N0_ZH+50}章第五十章

中文数字宏也遵循 {$N_RESET} 和 {$N_RESET:n} 设置的起点,无需另外写中文重置标记。

双重自动编号 ​

如果多个小故事的章节放在同一父文档下,可以同时保留章节总编号和故事内章节编号:总编号连续递增,每个故事的内部编号从 1 开始。

基础用法 ​

使用 {$N} 表示章节总编号,使用第二个宏 {$M} 表示故事内章节编号。例如,同级第一篇标题 第{$N}章 小故事A {$M} 显示为 第1章 小故事A 1。

{$M} 与 {$N} 都按同级文档的位置计数,但可以分别重置。它不会识别“小故事A”“小故事B”等文字来自动分组,需要在新故事的第一章添加重置标记。

下面依次列出同级的前三篇文档。未添加重置标记时,即使故事名称从“小故事A”变为“小故事B”,两个编号仍会一起递增:

原始标题(含宏)显示标题
第{$N}章 小故事A {$M}第1章 小故事A 1
第{$N}章 小故事A {$M}第2章 小故事A 2
第{$N}章 小故事B {$M}第3章 小故事B 3

{$M} 也支持 {$M0}、{$M_ZH}、{$M0_ZH} 及 +数字,规则与 {$N} 相同。

重置编号 ​

在新故事的第一章标题中添加 {$M_RESET},就能让该章的 {$M} 从 1 重新开始,而 {$N} 继续原来的计数。

如下图所示,前面的小故事A占了五章,所以 第{$N}章 小故事B {$M}{$M_RESET} 显示为 第6章 小故事B 1,下一章的故事内编号为 2。

对应上图,以下三行依次是同级的第 5、6、7 篇文档:

原始标题(含宏)显示标题
第{$N}章 小故事A {$M}第5章 小故事A 5
第{$N}章 小故事B {$M}{$M_RESET}第6章 小故事B 1
第{$N}章 小故事B {$M}第7章 小故事B 2

重置标记可以放在标题的任意位置,本身不会显示。它影响所在文档及后续同级文档中对应的编号,直到遇到下一个同类重置标记;不会影响其他父文档下的编号。

{$N_RESET} 同理,可让 {$N} 从 1 重新开始。重置标记只放在需要重新起算的文档上,不要每章都添加,否则每章都会从 1 开始。

指定编号开始数字 ​

如果第一卷已有 100 章,而第二卷的章节位于另一个父文档下,可以在第二卷第一章的标题中写入 第{$N}章{$N_RESET:101},让它从第 101 章开始;后续同级章节继续使用 第{$N}章,即可依次显示为第 102 章、第 103 章。

第二卷的前三篇同级文档可依次写为:

原始标题(含宏)显示标题
第{$N}章{$N_RESET:101}第101章
第{$N}章第102章
第{$N}章第103章

{$N_RESET:n} 中的 n 是不带前导零的正整数。它与普通重置标记一样,作用于当前及后续同级文档,直到下一个同类重置标记。{$M_RESET:n} 也支持指定起点。

加数与重置的区别 ​

只在第一篇的宏上加 100,前两篇同级文档会显示为:

原始标题(含宏)显示标题
第{$N+100}章第101章
第{$N}章第2章

改为在第一篇设置起点,后续同级文档就会接着计数:

原始标题(含宏)显示标题
第{$N}章{$N_RESET:101}第101章
第{$N}章第102章

{$N0} / {$M0} 比对应的 {$N} / {$M} 小 1,因此在 {$N_RESET:101} 所在文档中,{$N0} 显示为 100。若宏中还有加数,会在重置后的编号上继续相加。

检查重置格式

{$N_RESET:0}、{$N_RESET:-1}、{$N_RESET:01} 或含空格的写法不会被识别,会原样显示。需要从 0 开始时,使用 {$N0};需要中途归零时,配合 {$N_RESET}。