#import #mdbook #embed #code #include #text-file

bin+lib mdbook-bookimport

从其他文件导入代码/文本到您的 mdbook - 无链接失效

1 个不稳定版本

0.1.1 2019 年 4 月 3 日

#30#include

MIT/Apache

20KB
323

mdbook-bookimport

Build status

从其他文件导入代码/文本到您的 mdbook - 无链接失效。

背景/初始动机

mdbook-bookimport 最初是 mdbook #879 中的一个问题。

当时,mdbook 中默认的 #include 预处理器仅支持通过指定行号导入文件的小部分 - 因此,如果您包含正在维护/更改的文件的一部分,您最终会忘记更新导入的行号,因为您的文件发生变化。

mdbook-bookimport 允许您根据文件中的文本导入文件的一部分 - 因此,当您修改文件时,您将继续导入您预期的代码。

快速入门

cargo install mdbook-bookimport
# In your book.toml
[preprocessor.bookimport]
<!-- In your markdown files -->

{{#bookimport ../path/to/file.foo@some-tag-name-here}}
// Some file named "file.foo"
fn main () {
  let not_imported = "This will NOT be imported!";

  // @book start some-tag-name-here

  // ...
  let imported = "This will be imported!"
  let also_imported = "Everyting between start/end gets imported."
  // ...

  // @book end some-tag-name-here
}

完整指南

mdbook-bookimport 指南

API 文档

API

测试方法

./test.sh

另请参阅

许可证

Apache 2.0 / MIT

依赖项

~13–25MB
~374K SLoC