使用mdbook制作ebook
Windows/Linux/Macos
安装方式
1、cargo 主版本安装:
1 | cargo install --git https://github.com/rust-lang/mdBook.git mdbook |
2、源码安装
安装:
1 | cargo install mdbook |
这将自动从 crates.io 下载 mdBook,构建它,并将其安装在 Cargo 的全局二进制目录中( ~/.cargo/bin/默认)。
卸载:
1 | cargo uninstall mdbook |
同样,确保将 Cargo bin 目录添加到您的 PATH.
3、github 下载
https://github.com/rust-lang/mdBook/releases
同上,配置环境变量。
基础使用
使用”mdbook init”命令创建一本书:
1 | mdbook init <directory> |
在生成这本书之前,它会问几个问题。 回答完问题后,您可以将当前目录更改为新书:

有几种方法可以渲染一本书,但最简单的方法之一是使用 serve命令,它将构建您的书并启动本地网络服务器:
1 | mdbook serve --open (缩写:-o) |
–open :将打开您的默认网络浏览器以查看您的新书。 即使在编辑书籍内容时,您也可以让服务器保持运行状态,并且 mdbook将自动重建输出,并自动刷新您的网络浏览器。
结构
一本书由几个文件组成,这些文件定义了书籍的设置和布局。
book.toml
在书的根部,有一个 book.toml文件,其中包含用于描述如何构建图书的设置。 这是用 TOML 标记语言 。 默认设置通常足以让您入门。
1 | # 示例 |
SUMMARY.md
一本书的下一个主要部分是摘要文件,位于 src/SUMMARY.md. 该文件包含本书所有章节的列表。 在查看章节之前,必须将其添加到此列表中。
这是一个包含几章的基本摘要文件:
1 | # 示例: |
尝试打开 src/SUMMARY.md在您的编辑器中并添加几章。 如果任何章节文件不存在, mdbook将自动为您创建它们。
源文件
你的书的内容都包含在 src目录。 每章都是一个单独的 Markdown 文件。 通常,每个章节都以带有章节标题的 1 级标题开始。
1 | #示例: |
文件的精确布局取决于您。 文件的组织将与生成的 HTML 文件相对应,因此请记住,文件布局是每章 URL 的一部分。
虽然 mdbook serve命令正在运行,您可以打开任何章节文件并开始编辑它们。 每次保存文件时, mdbook将重建这本书并刷新您的网络浏览器。
src目录将包含在输出中。 因此,如果您有图像或其他静态文件,只需将它们包含在 src目录。
发布一本书
写完书后,您可能希望将其托管在某个地方以供其他人查看。 第一步是构建本书的输出。 这可以在book.toml同一目录中使用“mdbook build”命令构建
这将生成一个名为 book其中包含您图书的 HTML 内容。 然后,您可以将此目录放在任何 Web 服务器上以托管它。
命令行工具
1 | mdbook help —帮助命令 |
mdbook test 相关:
禁用代码块上的测试
rustdoc 不测试包含 ignore属性:

rustdoc 也不会测试指定 Rust 以外的语言的代码块:

rustdoc 会 测试没有指定语言的代码块:

指定目录
test可以将目录作为参数以用作书的根目录 而不是当前的工作目录。
1 | mdbook test <directory> |
常规配置
下面是 book.toml 文件的示例:
1 | [book] |


