最近使用markdown写文档越来越多了,有些成体系的文章希望逐步整理成小册子或者小文档,不排除后面有时间了整理成书籍。
于是调研了下专门用于制作电子书类文档的工具,之前听说比较多的是gitbook和Read the Docs。不过gitbook的开源版本2018年末就不更新了,尝试折腾了挺久都不好使。于是网上找到了几个候选:mdbook、bookdown、mkdocs、gohugo、和peach。mdbook则是用rust语言实现的, 只有一个单独的命令行程序,能够实时渲染,最近开发迭代还比较多。
bookdown是r语言实现的,依赖于RStudio集成环境制作;mkdocs是python实现的,gohugo和peach是go语言实现的。由于mdbook尝试了下能够比较好的满足我的需求,其他就没有深入去尝试了,感兴趣的读者可以自己去试试。
mdbook介绍
mdbook是一个用markdown来创建书籍的命令行工具,非常适合用来创建产品、api文档、手册、课程材料等。
特点:
- 轻量级markdown语法
- 集成了搜索功能
- 代码块语法高亮支持
- 多个主题支持
- 快速、安全、简单
- 书籍The Rust Programming Language book也在使用mdbook来编写
安装
手动下载安装
去github 下载,点下载链接,支持windows, mac, linux。
下载解压后,将mdbook放到/usr/local/bin下即可使用mac可以使用brew安装,安装的版本可能不是最新,但比较方便
1
brew install mdbook
使用
1 | mkdir my-quant-book |
浏览器输入http://localhost:3000/ 就可以看到书籍了。
在my-quant-book下生成了book和src两个文件夹和book.toml一个配置文件。
在src目录下自动生成了SUMMARY.md和chapter_1.md 2个markdown文件。chapter_1.md和普通markdown文件一样,SUMMARY.md比较特殊,用来表示文档包含那些文件以及他们的顺序是咋样的。
mdbook服务默认启动端口是3000,如果需要更改端口,可以使用-p参数,如mdbook serve -p 3001
将端口改为3001。
其他跟markdown一样正常编辑就好了。不知道markdown语法的可以参考我的另外一篇《markdown实战》文章。
交流
欢迎关注微信公众号交流~
- 微信公众号:诸葛说talk