介绍GitBook安装和使用
安装
GitBook 是一个基于 Node.js 的命令行工具,支持 Markdown 和 AsciiDoc 两种语法格式,可以输出 HTML、PDF、eBook 等格式的电子书。所以我更喜欢把 GitBook 定义为文档格式转换工具。
因为 GitBook 是基于 Node.js,所以我们首先需要安装 Node.js
1 | // 检查是否有Node.js环境 |
使用
想象一下,现在你准备构建一本书籍,你在硬盘上新建了一个叫 mybook 的文件夹,按照以前的做法,你会新建一个 Word 文档,写上标题,然后开始巴滋巴滋地笔耕。但是现在有了 GitBook,你首先要做的是在 mybook 文件夹下执行以下命令:
1 | gitbook init |
执行完后,你会看到多了两个文件 —— README.md 和 SUMMARY.md,它们的作用如下:
README.md —— 书籍的介绍写在这个文件里
SUMMARY.md —— 书籍的目录结构在这里配置
然后就是编辑这个书的目录了,实际上需要一个支持MarkDown的编辑器,我们使用VSCode,来编辑 README.md 和 SUMMARY.md文件
编辑 SUMMARY.md 文件,内容修改为:
1 |
|
然后我们回到命令行,在 mybook 文件夹中再次执行gitbook init
命令。GitBook 会查找 SUMMARY.md 文件中描述的目录和文件,如果没有则会将其创建。
接着我们执行gitbook serve
来预览这本书籍,执行命令后会对 Markdown 格式的文档进行转换,默认转换为 html 格式,最后提示 “Serving book on http://localhost:4000”。嗯,打开浏览器看一下吧.
当你写得差不多,你可以执行 gitbook build 命令构建书籍,默认将生成的静态网站输出到 _book 目录。实际上,这一步也包含在 gitbook serve 里面,因为它们是 HTML,所以 GitBook 通过 Node.js 给你提供服务了。
当然,build 命令可以指定路径:
1 | gitbook build [书籍路径] [输出路径] |
serve 命令也可以指定端口:
1 | gitbook serve --port 2333 |
你还可以生成 PDF 格式的电子书:
1 | gitbook pdf ./ ./mybook.pdf |
如果生成不了,你可能还需要安装一些工具,比如 ebook-convert。或者在 Typora 中安装 Pandoc 进行导出。
此时基本就完成了。
安装过程中遇到的问题
gitbook init
超时
解决:替换npm的源gitbook build
生成的html本地不能跳转
解决:修改书籍下”theme.js”文件的内容。把if(m)for(
替换为if(false)for(