gitbook 编译书籍源码 为PDF
- 安装nodejs
- 安装gitbook
- 编译书籍
- 启动gitbook网页版
- 输出为PDF等其他格式
安装nodejs
- 载nodejs 解压到任意文件夹,这里以D:\devtools\node-v6.10.0-win-x64为例,可以看到有nmp.cmd 命令。
设置nmp 缓存与global 文件夹
npm config get userconfig //查看用户配置文件的位子 默认在 $Home/.npmrc,windows 在用户目录下
npm config get globalconfig // 查看全局配置文件的位置
npm config get cache // 获取缓存的位置
npm config get prefix // 获取全局仓库的位置
// 修改全局仓库的位置,其他位置保持不变
npm config set prefix "D:\devtools\nodejsnpmModules"
修改完全局仓库之后,可以看到在.npmrc 中多了一句
prefix=D:\devtools\nodejsnpmModules
安装gitbook
- 将nodejs的安装目录 和npm 的全局库目录(这里是D:\devtools\nodejsnpmModules)放到PATH 环境变量中
- 在nodejs 安装目录下运行
npm install gitbook-cli -g
安装完成后,在D:\devtools\nodejsnpmModules 下可以看到有gitbook.cmd 这个命令文件。
编译书籍
- 将源码下载到任意文件夹,如果是go 语言的书籍,必须放到gopath里,不然里面的go 命令执行不了(这里以D:\workspace\GoWorkSpace\src\github.com\gopl-zh\gopl-zh.github.com 为例),推荐是用go get URL 的方式获取git 库中的文件。会自动放到gopath的workspace 里。比如我这里编译的书籍URL 在https://github.com/gopl-zh/gopl-zh.github.com 可以通过go get github.com/gopl-zh/gopl-zh.github.com 下载到go path 中。
下载有很多文件,这里分为有写书籍是通过 Makefile 来做的,这种比较烦。windows 没法make,需要逐条执行makefile 里的go 命令
整个makefile 的内容如下
default:
go run update_version.go
gitbook build
go run fix-data-revision.go
go run builder.go
zh2tw:
go run zh2tw.go . .md$$
tw2zh:
go run zh2tw.go . .md$$ tw2zh
loop:
go run zh2tw.go . .md$$ tw2zh
go run zh2tw.go . .md$$ zh2tw
cover:
composite cover_patch.png cover_bgd.png cover.jpg
convert -resize 1800x2360! cover.jpg cover.jpg
convert -resize 200x262! cover.jpg cover_small.jpg
convert -resize 400x524! cover.jpg cover_middle.jpg
convert -quality 75% cover.jpg cover.jpg
convert -quality 75% cover_small.jpg cover_small.jpg
convert -quality 75% cover_middle.jpg cover_middle.jpg
convert -strip cover.jpg cover.jpg
convert -strip cover_small.jpg cover_small.jpg
convert -strip cover_middle.jpg cover_middle.jpg
default 里的必须执行切需要最先执行,一条条的执行就行。
然后执行tw2zh: 中的语句
启动gitbook网页版
在D:\workspace\GoWorkSpace\src\github.com\gopl-zh\gopl-zh.github.com 中是用gitbook serve 会启动一个本地的4000端口,然后访问localhost:4000就可以看书了
输出为PDF等其他格式
- 到http://calibre-ebook.com/download下载calibre,安装版和便携版都可以。
- 解压或者安装 calibre,在安装/解压目录中找到包含ebook-convert.exe的文件夹,将此文件夹添加到PATH变量中
- 运行如下命令生成pdf 或者epub 文件
gitbook pdf // pdf
gitbook epub // epub