GitBook 是一款基于 Node.js 开发的开源的工具,可以通过命令行的方式创建电子书项目,再使用 MarkDown 编写电子书内容,然后生成 PDF、ePub、mobi 格式的电子书,或生成一个静态站点。

除此之外,还可以利用 Git 命令管理电子书版本。如果你是 GitHub 的重度使用者,还可以把你的 GitBook 帐户和 GitHub 帐户关联起来,这样不论在任何一方修改了内容,都可以互相同步。

一、安装 Node.js

由于 GitBook 是基于 Node.js 开发的,所以依赖 Node.js 环境。如果您的系统中还未安装 Node.js,请点击下面的链接,根据你所使用的系统下载对应的版本。如果已安装则略过本步骤。

Node.js 下载页面:https://nodejs.org/en/download/stable/

Windows 版和 Mac 版的 Node.js 都是常规的安装包,连续下一步安装即可。Lunix 版可以参照官方文档通过 yum、apt-get 之类的工具安装,也可以通过源码包安装,如下所示:

$ wget https://nodejs.org/dist/v5.4.1/node-v5.4.1.tar.gz
$ tar zxvf node-v5.4.1.tar.gz
$ cd node-v5.4.1
$ ./configure
$ make
$ make install

二、安装 GitBook

打开“命令提示符”(Mac 系统打开“终端”)输入以下命令安装 GitBook:

$ npm install gitbook-cli -g

由于网络的原因,安装的时间可能会较长一些,请耐心等待直到安装完成。安装完成后可以输入以下命令,以查看 GitBook 版本的方式检查是否安装成功:

$ gitbook -V

三、创建电子书项目

新建一个目录,并进入该目录使用 gitbook 命令初始化电子书项目。举个例子,现在要创建一个名为“MyFirstBook”的空白电子书项目,如下所示:

$ mkdir MyFirstBook
$ cd MyFirstBook
$ gitbook init

四、编辑电子书内容

初始化后的目录中会出现“README.md(电子书简介文件)”和“SUMMARY.md(导航目录文件)”两个基本文件。除此之外还可以手动新建其它“Glossary.md(书尾的词汇表)”、“book.json(电子书配置文件)”。电子书的正文内容可以根据自己的喜好创建新的后缀为 .md 文件,如“chapter01.md”,然后用 MarkDown 编写具体的文本内容即可。下面对这些文件分别做详细介绍。

1、README.md

此文件是简单的电子书介绍,可以把您所制作的电子书做一下简单的描述:

# 简介这是我的第一本使用 GitBook 制作的电子书。

2、SUMMARY.md

此为电子书的导航目录文件,每当新增一个章节文件就需要向此文件中添加一条记录。对于 Kindle 电子书来说,此文件所呈现的目录结构就是开头的目录内容和“前往”的目录导航。

# Summary* [简介](README.md)
* [第一章](section1/README.md)
* [第二章](section2/README.md)

如果需要“子章节”可以使用 Tab 缩进来实现(最多支持三级标题),如下所示:

# Summary* [第一章](section1/README.md)* [第一节](section1/example1.md)* [第二节](section1/example2.md)
* [第二章](section2/README.md)* [第一节](section2/example1.md)

3、Glossary.md

对于电子书内容中需要解释的词汇可在此文件中定义。词汇表会被放在电子书末尾。其格式如下所示:

# 电子书
电子书是指将文字、图片、声音、影像等讯息内容数字化的出版物和植入或下载数字化文字、图片、声音、影像等讯息内容的集存储和显示终端于一体的手持阅读器。# Kindle
Amazon Kindle 是由 Amazon 设计和销售的电子书阅读器(以及软件平台)。用户可以通过无线网络使用 Amazon Kindle 购买、下载和阅读电子书、报纸、杂志、博客及其他电子媒体。

4、book.json

“book.json”是电子书的配置文件,可以看作是电子书的“原数据”,比如 title、description、isbn、language、direction、styles 等,更多点击这里查看。它的基本结构如下所示:

{"title": "我的第一本電子書","description": "用 GitBook 制作的第一本電子書!","isbn": "978-3-16-148410-0","language": "zh-tw","direction": "ltr"
}

5、普通章节.md 文件

普通章节.md 文件可以使用您感觉顺手的文本编辑器编写。MarkDown 的写法可以点击这里查看相关示例。每编写一个 .md 文件,不要忘了在“SUMMARY.md”文件中添加一条记录哦。

6、电子书封面图片

GitBook 帮助文档建议封面图片的尺寸为 1800*2360 像素并且遵循建议:

  • 没有边框
  • 清晰可见的书本标题
  • 任何重要的文字在小版本中应该可见

图片的格式为 jpg 格式。把图片重命名为“cover.jpg”放到电子书项目文件夹即可。

五、预览电子书内容

电子书内容编写完毕后可以使用浏览器预览一下。先输入下面的命令据 .md 文件生成 HTML 文档:

$ gitbook build

生成完毕后,会在电子书项目目录中出现一个名为“_book”的文件夹。进入该文件夹,直接用浏览器打开“index.html”,或先输入下面的命令:

$ gitbook serve

然后在浏览器中输入“http://localhost:4000”即可预览电子书内容,预览完毕后按 Ctrl + C 结束。

六、生成电子书文件

确定电子书没有问题后,可以通过输入以下命令生成 mobi 电子书:

$ gitbook mobi ./ ./MyFirstBook.mobi

如果出现以下错误提示,说明您还未安装 Calibre。由于 GitBook 生成 mobi 格式电子书依赖 Calibre 的 ebook-convert,所以请先点击这里下载安装 Calibre。

Error: Need to install ebook-convert from Calibre

Calibre 安装完毕后,对于 Mac OS X 系统,还需要先设置一下软链接:

$ ln -s /Applications/calibre.app/Contents/MacOS/ebook-convert /usr/local/bin

再次运行转换命令,即可生成 mobi 格式电子书。

七、把项目托管到 GitBook.com

以上所有的步骤都是在本地进行的,如果需要实现电子书的版本管理,或者把电子书发布到网络上,还可以通过 Git 命令将本地的项目托管到 GitBook.com 上。

1、注册 GitHub.com 账号

首先进入 GitBook.com 注册一个账号,并新建一个项目。在“Setting(设置)”页面获取到“Git URL(Git 链接)”,链接的样子如下所示:

https://git.gitbook.com/kindlefere/myfirstbook.git

2、安装 Git 软件

在开始下面的步骤之前请先确保您的系统中已经安装了 Git。一般 Mac 和 Lunix 自带 Git 功能,可以在终端运行 git --version 查看 Git 版本。Windows 一般不会自带 Git 功能,请点击这里下载先安装。

在安装 Windows 版的 Git 时,会看到“Use Git from Git Bash only”和“Use Git from the Windows Command prompt”两个选项。前者指的在程序自带的独立终端中使用 Git。后者是指可以通过系统自带的“命令提示符”使用 Git 命令。可以根据自己的喜好选择,个人推荐使用后者。

3、上传已有的电子书项目

在本地新建一个文件夹,并通过 Git 命令把刚才新建的远程项目抓取到本地,如下所示:

$ mkdir MyFirstBook-Git
$ cd MyFirstBook-Git
$ git init
$ git pull https://git.gitbook.com/kindlefere/myfirstbook.git

然后把本地项目“MyFirstBook”中的所有内容拷贝到刚才新建的文件夹中,如上面的“MyFirstBook-Git”。然后使用 Git 命令把本地的项目上传到远程,如下所示:

$ git add -A
$ git commit -m "提交说明"
$ git remote add gitbook https://git.gitbook.com/kindlefere/myfirstbook.git
$ git push -u gitbook master

期间需要输入你的 GitBook 注册邮箱和密码。今后修改内容后只需要输入以下 Git 命令即可:

$ git add [修改的文件]
$ git commit -m "提交说明"
$ git push -u gitbook master

八、把项目关联到 GitHub 帐户

如果你喜欢使用 GitHub 管理项目。还可以把您的 GitBook 帐户和 GitHub 帐户关联起来,这样两者的修改内容就可以互相同步了。

1、关联 GitBook 和 GitHub 帐户

关联设置也很简单,首先进入 GitBook 的“Account Settings(帐户设置)”页面,在“Profile(个人资料)”标签页找到“GitHub”选项卡,点击【Connect to GitHub】按钮会转向 GitHub 的“Authorize application”页面,点击【Authorize application】按钮即可完成关联。

2、把 GitBook 项目导入到 GitHub

完成关联后即可设置同步电子书项目了。以电子书项目“MyFirstBook”为例,首先需要把项目导入到 GitHub 中一份。进入某个电子书项目的设置页面,切换到“GitHub”选项卡。在“GitHub Repository”中,点击【Export to GitHub】按钮,按照向导所示步骤将项目导入 GitHub 中。

3、设置 GitBook 和 GitHuB 同步

导出成功后,再回到 GitBook 项目设置页面的“GitHub”选项卡,在“GitHub Repository”中的输入框中填入 GitHub 的 Repository 名,如“GitHub用户名/myfirstbook”,点击【Save】按钮保存。

保存后当前页面会出现一个名为“Integration”的选项卡,点击里面的【Add webhook】按钮,允许 GitBook 接收 Github 的内容更新。这样就把 GitBook 上的项目和 GitHub 相对应的项目关联上了。

此后即可用 GitHub 管理电子书项目,在 GitBook 上对电子书内容修改也会自动同步到 GitHub 中。

GitBook制作电子书详细教程(命令行版)相关推荐

  1. GitBook制作电子书使用教程

    一.概述 [官网]https://www.gitbook.com/ 参考:https://chrisniael.gitbooks.io/gitbook-documentation/content/bu ...

  2. XP母盘制作详细教程(完全版)

    XP母盘制作详细教程(完全版) 现在XP系统已经成为很多网吧的选择,但一直没有网友提供完整的方案.春节放假期间做了几套系统,顺便把过程记录如下 希望能给那些想学习网吧系统的朋友一点帮助 安装Windo ...

  3. java编辑2048小游戏_Java 制作命令行版 2048小游戏

    Java 命令行版 2048小游戏(2020年8月14日) 制作背景 大二即将开学,从头开始学习了一个多月的java,对二维数组的操作稍微熟悉了一些.于是想做一个简单的2048来试一试. 众所周知,2 ...

  4. csvtk:高效命令行版极简dplyr

    写在前面 什么时候写 csvtk 呀,csvtk 也借鉴了些 datamash 的东西. 之前写 datamash 的使用教程 linux 极简统计分析工具 datamash 必看教程,收到了一位读者 ...

  5. word制作表格详细教程

    word制作表格详细教程 Word制作表格大家要先建立一个概念word表格多是行列结构比较复杂如登记表等,不需要填写较多数据以及进行表的计算处理等.这篇文章将从word如何制作插入表格,对操作过的表格 ...

  6. Windows上使用gitbook制作电子书

    0. 前言 第一次在windows上使用gitbook制作电子书,在网上搜了好多资料,自己亲手试了下并整理如下. 1. 准备工具 Step1: 下载nodejs(nodejs中文官方): http:/ ...

  7. python刷网易云_牛逼了!用Python开发的命令行版网易云音乐,Github获8300颗星!...

    大家好,我是程序员G哥 最近在逛Github发现了一个非常有趣的库musicbox,是用纯Python打造的,收获了8300颗星.Python语言简单易学,好玩有趣,身边越来越多的小伙伴都开始学习Py ...

  8. 使用gitbook制作电子书

    使用gitbook制作电子书 本文旨在说明gitbook的安装和使用方法: 安装 1.安装node.js 移步:Node.js的安装 2.安装gitbook npm install gitbook - ...

  9. 康威生命游戏java_Java Python 康威生命游戏 - 命令行版

    Java & Python 康威生命游戏 - 命令行版(2020年7月23日) 制作背景 高二的时候看霍金的<大设计>最后几页的时候看到里面提到了康威生命游戏,介绍了它的规则,感觉 ...

最新文章

  1. C#温故而知新学习系列之.NET框架高级特性—概述.NET框架中的反射(一)
  2. adb connect 出现timeout的处理方式
  3. SimpliciTI简介
  4. QTP 11 补丁大全
  5. 电子科技大学计算机2019报名人数,电子科技大学录取分数线2019(在各省市录取数据)...
  6. 开源监控系统Prometheus介绍
  7. AssetBundle解析工具——AssetStudio
  8. 纽约的雪--纽约公立小学的故事
  9. 当我在linux图形界面终端输入startx,我在干什么
  10. 计算机组成原理——第八章
  11. postman传数组参数
  12. 2022美国大学生数学建模竞赛D题思路
  13. php类 汉子转拼音 通讯录按字母顺序排列
  14. python对钉钉考勤旷工的数据填入excel
  15. python get rect 函数_Python之Pygame.rect函数
  16. 大学计算机应用基础及上机实验指导,计算机应用基础上机实验指导
  17. Windows 和 android 平台Boost编译方法
  18. 杨辉三角~~~~~~~~
  19. vue中前端实现pdf预览(含vue-pdf插件用法)
  20. win10安装inventor失败,怎么强力卸载删除注册表并重新安装

热门文章

  1. ibm服务器开不了机维修,IBM X3500服务器故障开不了机
  2. Python旅游景点推荐系统 爬虫 酒店 旅游新闻
  3. CISSP第三章 访问控制
  4. iso 2631 matlab,声学基础及其分析软件 - 声振论坛 - 振动,动力学,声学,信号处理,故障诊断 - Powered by Discuz!...
  5. 2007电子杂志的发展必然—企业电子商刊(iebook)!
  6. 这是一个很神奇的网站!
  7. 刚刚出新的Kubernetes 却曝出了“高危”安全漏洞;亚马逊将推免费新闻视频服务,对标苹果 | 极客头条...
  8. “华为天才少年”自制 B 站百大 Up 主奖杯
  9. 安装labelimg及出现的问题
  10. 关于给hexo博客增加相册页面(实现瀑布流相册,实现加密相册)