文章目录
- mdBook:用 Markdown 写电子书,Rust 官方出品
mdBook:用 Markdown 写电子书,Rust 官方出品
mdBook 是 Rust 官方开源的一个工具,专门用来把 Markdown 文件转换成在线书籍。目前在 GitHub 上有 21k+ 的 Star。
这个工具的设计思路很简单:你写好 Markdown 文件,它帮你生成一个干净、可阅读的在线文档站点。
很多技术文档、教程、手册都是用它来生成的。Rust 官方的《The Rust Programming Language》这本书,最早也是用 mdBook 来构建的。
功能特点
mdBook 的功能围绕"写书"这个核心需求展开:
- Markdown 驱动:所有内容用 Markdown 格式编写,学习成本低
- 实时预览:支持
mdbook serve命令,修改文件后浏览器自动刷新 - 代码高亮:内置多种编程语言的语法高亮支持
- 搜索功能:生成的书籍自带全文搜索
- 主题定制:可以自定义 CSS 和模板,调整输出样式
- 多语言支持:支持国际化,可以写多语言版本的书籍
- 插件系统:通过 preprocessor 和 backend 插件扩展功能
安装方法
如果你已经安装了 Rust 环境,直接用 cargo 安装:
cargoinstallmdbook安装完成后,用mdbook --version验证是否成功。
基本使用
创建新书:
mdbook init my-book这个命令会生成一个标准的目录结构:
my-book/ ├── book/ ├── src/ │ ├── SUMMARY.md │ └── chapter_1.md └── book.toml其中book.toml是配置文件,src/SUMMARY.md定义了书籍的目录结构。
预览书籍:
mdbook serve默认会在本地启动一个 HTTP 服务器,打开浏览器访问http://localhost:3000就能看到效果。
构建静态文件:
mdbook build生成的 HTML 文件会保存在book/目录下,可以直接部署到任何静态文件服务器。
配置说明
book.toml是核心配置文件,包含书籍的基本信息和构建选项:
[book] title = "我的技术文档" authors = ["你的名字"] language = "zh" [build] build-dir = "book" create-missing = true [output.html] default-theme = "light" preferred-dark-theme = "navy"常见的配置项包括主题选择、代码高亮风格、是否启用搜索等。
SUMMARY.md 格式
目录结构通过src/SUMMARY.md文件定义:
# 目录 - [前言](./README.md) - [第一章:入门](./chapter_1.md) - [1.1 安装](./chapter_1/install.md) - [1.2 配置](./chapter_1/config.md) - [第二章:进阶](./chapter_2.md)Markdown 的列表语法直接对应书籍的层级结构,缩进表示子章节。
实际应用场景
mdBook 适合用来写:
- 项目文档和 API 参考
- 技术教程和培训材料
- 团队内部知识库
- 个人学习笔记
它的输出是纯静态 HTML,不需要数据库,部署方便,可以直接放在 GitHub Pages、Netlify 等平台上。
和同类工具对比
相比 GitBook、Docusaurus 等工具,mdBook 的特点是轻量和专注。它不追求功能大而全,而是把"写 Markdown 生成书籍"这件事做好。
如果你的技术栈是 Rust,或者你需要一个简单可靠的文档生成工具,mdBook 是一个不错的选择。
项目使用 Mozilla Public License v2.0 开源,可以免费用于商业和非商业项目。
rkdown 生成书籍"这件事做好。
如果你的技术栈是 Rust,或者你需要一个简单可靠的文档生成工具,mdBook 是一个不错的选择。
项目使用 Mozilla Public License v2.0 开源,可以免费用于商业和非商业项目。