@yangfch3
2016-01-31T17:02:48.000000Z
字数 4025
阅读 22094
git
gitbook.com+(github)第一种方法是直接在gitbook网站上注册账号,创建书籍;gitbook在线站点.
创建书籍时选择非basic或者science即可创建保存在gitbook站点上的书籍,书籍页面进行setting等操作。
此类方法创建的书籍可使用gitbook.com提供的在线编辑器编辑。
如果突然想让自己的书籍与github仓库建立联系,进行同步,也可以点击书籍页面的welcom的link to github,或者setting里面进行关联!
gitbook.com+github+gitbook editor(gitbook-cli)本地gitbook editor流程:
gitbook editorgitbook.com账号登陆SUMMARY.md和对应的md文件手动修改) 相对书籍进行相关配置,新建book.json,输入以下内容!
关于book.json各个参数的介绍,请点击此
{"title": "yangfch3's Diary","author": "_","description": "_","extension": null,"generator": "website", // 使用的编译模式"isbn": null,"links": {"sharing": {"all": null,"facebook": null,"google": null,"twitter": null,"weibo": null},"sidebar": {"yangfch3's github": "http://github.com/yangfch3"}},"output": null, // 自定义指定编译输出目的文件夹"pdf": {"fontSize": 12,"footerTemplate": null,"headerTemplate": null,"margin": {"bottom": 36,"left": 62,"right": 62,"top": 36},"pageNumbers": false,"paperSize": "a4"},"mobi": {"fontSize": 12,"footerTemplate": null,"headerTemplate": null,"margin": {"bottom": 36,"left": 62,"right": 62,"top": 36},"pageNumbers": false,"paperSize": "a4"},"styles": {"website": "styles/website.css","ebook": "styles/ebook.css","pdf": "styles/pdf.css","mobi": "styles/mobi.css","epub": "styles/epub.css"}, // 用户自定义的样式,编译时对应的"plugins": ["disqus","codeblock-filename"],"pluginsConfig": {"disqus": {"shortName": "hub7diary"}},"variables": {}}
github仓库,利用git进行commit和pushnode.jsnpm install <pacName> --save-devbook.json里的pluginConfig里进行插件配置(如果需要的话) npm init创建package.json记录书籍依赖包(可以不创建,直接将依赖插件记录在book.json即可,一次性安装所有插件可以使用:gitbook install)使用
gitbook editor的好处是无需命令行,无需node插件,无需手动新建文件,缺点是对中文支持差!
使用node.js制作书籍
node.jsnpm install gitbook -g npm install gitbook-cli -gSUMMARY.md和README.mdgitbook init新建章节文件夹,分区编写章节保存,在SUMMARY.md里建立映射关系
# Summary* [Introduction](README.md)* [chapter1_Name](folder1/README.md)* [chapter1_Name](folder2/README.md)* [section1_Name](folder2/section1.md)* ...
book.json,设置参数(参见上文)gitbook serve会编译书籍并建立一个临时服务器(使用gitbook build是只编译),可以再浏览器浏览(结果会有服务器IP与端口提示)git来commit和push本地仓库与github仓库同步之后,可以利用github仓库来在gitbook.com上新建书籍
新建书籍时选择github或import即可
线上编辑与本地
editor编辑混合使用容易产生错误(目录与文件对应错误,无法编译),请整理文件对应结构,然后在SUMMARY.md里手动纠正
gitbook其他设置当我们在gitbook.com上建好书籍后,我们可以为书籍进行封面,主题,配置域名等设置。
封面:在gitbook在线编辑器设置按钮下添加封面或者直接书籍仓库的根目录下放置一个cover.jpg即可
主题:在gitbook.com书籍页面的setting页面有landing page选项用于设置主题
配置域名:gitbook.com上书籍setting页面选择domains,设置homepage和content的域名。在书籍目录编译后的_book下添加一个CNAME文件,添加好域名即可!
具体参见:链接:绑定域名,Custom Domains
书籍左边sidebar:在book.json的sidebar key 下设置,见上方配置代码
发布到github pages:链接:发布到 GitHub Pages
本地转换为pdf等格式:
gitbook.com为我们提供了在线的转换工具,我们可以在线下载电子书的epub、mobi等格式文档,但是如果我想在本地实现1. 确保全局安装`gitbook-cli`:**`npm install gitbook-cli -g`** 2. 安装**`Calibre`** 3. 运行**`gitbook pdf ./..path../BookFloder ./..path../xxx.pdf`**附:
1.Calibre下载链接与使用教程 教程2
2. 运行时路径不要跨盘符
3. 转换为其他类型文档时将epub、mobi等
gitbook-plugin-disqus:npm install gitbook-plugin-disqus --save-devgitbook install 将插件脚本插入书籍的每个页面npm init一下,将插件记录到package.json的devDependence里setting>add disqus to site ===> start use engage ===> 设定siteName即讨论栏目的名字 ===> 在setting>admin>setting里进行设定 ===> 获取disqus的shortName ===> 更改book.json的pluginConfig进行配置(或者在gitbook editor里edit configuration) 用于书籍分割不同的部分。
gitbook默认只支持章节,如果想将书籍分为几个部分,每个部分的章节顺序不受影响,则需要使用multipart
gitbook-plugin-multipart npm install gitbook-plugin-multipart --save-devgitbook install 将插件脚本插入书籍的每个页面npm init记录本地依赖包在SUMMARY.md里设定part名
# Book Title* Getting Started* About this guide## Part I - Introduction* Really interesting...* Did you know?...* Oh yes...* I know!...* Quite...* Gosh...## Part 2 - Advanced* Right then* Let's get busy* No more mucking about* Of course
book.json添加multipart到plugins中 有时发现对于github账号对gitbook的授权老是出问题

临时解决方案:
1. 新建书籍选择basic,而不要选择一直出错的github
2. 账户设置 ===> 提高对github的授权级别
3. 再将新建书籍与github仓库建立联系(link to github)
4. 本地推送更新到github仓库
5. 此时空的书籍便会更新同步了