GitBook

1. GitBook 简介

你现在看的这本书就是 GitBook 写的,GitBook可以很方便的使用 Markdown 的语法排版,也可以用 Mathjax 生成数学公式,当然还有很多其他的插件。
完成后的书籍可以导出 PDF,也可以导出静态 HTML 用于发布到自己网站上,或者利用 gitbook 托管,非常方便。

2. 安装 GitBook

Node.js

直接官网下载压缩包,解压后设置环境变量即可

vim ~/bashrc 
export NODEJS_HOME=/path/to/nodejs
export PATH=$PATH:$NODEJS_HOME/bin

测试 Node.js 安装是否成功:

node -v

GitBook

npm install gitbook-cli -g

测试 GitBook 是否安装成功

gitbook -V

3. 使用 GitBook

初始化一本书

gitbook init

当前目录就会生成这样的结构,README.md 是书的总体介绍,SUMMARY.md 是书的结构,之后自己还会创建新的*.md作为书的不同部分。

.
├── README.md
└── SUMMARY.md

导出 html

gitbook build

当前目录就会生成 _book 目录,打开里面的 index.html 就是生成的网页。 导出 pdf

sudo apt-get install calibre
gitbook pdf ./ ./book.pdf

本地测试

gitbook serve

这样就会默认在本地的4000端口开启web服务,在本地测试生成的网站。

4. GitBook 配置

需要创建 book.json 作为这本书的配置文件。

.
├── book.json
├── README.md
└── SUMMARY.md

配置文件如下:

{
    "title": "Software Development",
    "description": "A guide for Software Development",
    "author": "Wu Han",
    "language": "zh-hans",
    "gitbook": "2.6.7",
    "links": {
        "sidebar": {
            "Home": "http://wuhanstudio.cn"
        }
    },
    "plugins": [
        "katex@^1.1.3"
    ]
}

需要提醒的是,gitbook 3.2 的版本编译出来的 html 目录链接会发生混乱,暂时可以配置为2.6.7的版本编译就没有问题了,之后应该会修复这个问题。