使用gitbook编辑电子书
gitbook是基于markdown格式的电子书整理工具,可以发布成html格式,或导出pdf、epub、mobi等格式。前一段时间我就发现这个工具,错误的认为它是基于github的,而且要基于git编辑。
事实上,gitbook是基于命令行的工具,手工编辑文档并实时预览,而且很方便生成电子书。同时,它可以关联到github下面,如何不熟悉就本地应用就可以。
安装
我是在archlinux下使用的,先安装 node.js 和 npm:
$ sudo pacman -S nodejs
$ sudo pacman -S npm
下面一步,如果按照网上的文档安装gitbook,会报错:
You need to install 'gitbook-cli' to have access to the gitbook command anywhere on your system.
If you've installed this package globally, you need to uninstall it.
>> Run 'npm uninstall -g gitbook' then 'npm install -g gitbook-cli'
需要安装 gitbook-cli:
$ sudo npm install -g gitbook-cli
运行
在运行前,先在书籍的目录下建立两个文档:README.md 和 SUMMARY.md。分别对应首页和目录,其中 SUMMARY.md 格式如下:
* [第1章](c1.md)
* [第1节](c1s1.md)
* [第2节](c1s2.md)
* [第2章](c2.md)
电子书的目录手动编辑就可以。执行以下命令就可以本地预览:
$ gitbook serve -p
默认地址在:
http://localhost:4000/
发布
执行预览后,本地目录会有一个 _books
目录,就是生成的html格式,可以直接放到网站。电子书目录可以托管到github。也可以使用命令导出为电子书格式,-o
命令制定电子书文件名:
- gitbook epub
- gitbook mobi
- gitbook pdf
以上三种方式都可以直接生成电子书,效果可以接受。如果进一步优化电子书,可以就需要 Sigil 或者 Calibre 等工具。
电子书封面
把封面图片放到书籍目录下,命名为 cover.jpg ,推荐大小是 1800x2360。小封面命名为 cover_small.jpg,大小 200x262 。另外有一个自动生成封面的插件 autocover :https://github.com/GitbookIO/plugin-autocover
更多的插件: https://github.com/GitbookIO/plugin
配置
配置存在 book.json 文件里,比如可以修改电子书名字:
{ "title": "My Awesome Book" }
可以使用这个网址检测文件的错误: http://jsonlint.com/
这样就可以生成简单的电子书了,我打算把之前整理的一些文章打包成一本书。
20160301update:开始写自己的电子书:《简化生活》
参考:
20150907