#config-file #mdbook #preprocessor #text #replace #pattern

app mdbook-yapp

用于简单文本替换的mdBook预处理器

10个版本 (5个稳定版)

1.1.0 2024年4月23日
1.0.3 2024年4月23日
0.1.0 2024年3月25日
0.0.3 2023年11月10日

#112 in 文本处理

每月下载量 34次

MIT/Apache

26KB
302

mdBook的另一个预处理器

Crates.io MIT licensed Apache 2.0 licensed Contributor Covenant

概述

这是一个简单的在章节中替换文本的mdbook预处理器。

要替换的短语与指定内容定义在纯文本配置文件中。

安装

使用Cargo安装

$ cargo install mdbook-yapp

通过将以下行添加到您的 book.toml 中来配置此预处理器

[preprocessor.yapp]

按常规构建您的书籍

$ mdbook build

当找不到配置文件时,应显示警告消息。

2023-11-11 12:01:02 [INFO] (mdbook::book): Book building has started
[WARNING][Yapp] configuration file not found, in current directory expected a file with the name starting with prefix: yapp
[WARNING][Yapp] configuration file not found, in current directory expected a file with the name starting with prefix: yapp
2023-11-11 12:01:03 [INFO] (mdbook::book): Running the html backend

按照下一节所述准备配置文件。

配置

此预处理器需要一个纯文本格式的单个配置文件。此文件的名称应以前缀 yapp 开头。字母大小写不敏感。因此,名称如 yappYappYappiyapp.config 和类似名称都是可以的。

配置文件必须包含文本行的对。第一行是在章节中要搜索的短语,第二行是替换内容。如果有一个名为 yapp.config 的配置文件,其内容如下

jd
John Doe

将通知此预处理器在书的所有章节中搜索所有 jd 实例,并将它们替换为文本 John Doe

配置文件可以有空白行,这些行将被忽略。当定义多个替换时,空白行可以使配置更易于阅读,如下所示

jd
John Doe

^note
**Note**:

@version
1.23.4

替换是按照配置文件中定义的顺序进行的,因此替换可以链式进行,如下所示

a
ab

ab
abb

abb
abba

abba
ABBA

所有章节中的每个字母 a 都将被替换为 ABBA

请注意,在配置文件中使用之前,每个配置文件中的每一行都会被修剪。因此,内容如下所示

a
    ab

         ab
 abb

   abb
                     abba

 abba
   ABBA

将具有与上一个示例相同的效果。

为了在搜索模式或替换内容中保留空白字符,请将其括在单引号或双引号中

' a '
' b c '

或双引号中

" a "
" b c "

因此,对于输入 │ a │ 的替换结果将是 │ b c │

许可协议

许可协议为以下之一

由您选择。

贡献

所有有意提交以包含在作品中的贡献,都应按上述方式双许可,不附加任何额外的条款或条件。

依赖项

~11-22MB
~322K SLoC