Gitbook 命令行工具
<br/ >
1、Gitbook 简介
1.1 Gitbook
GitBook 是一个基于 Node.js 开发的命令行工具,使用它可以很方便的管理电子书,GitBook 是目前最流行的开源书籍写作方案。
使用 GitBook 可以让创作者专注写作,自由的挥洒,不必太多的关心内容排版、发布和版本管理等问题。
除了通过 GitBook 命令行管理电子书外,还可以在线或者使用桌面编辑器 Gitbook Editor 来编写和管理电子书。
对于新手来说,推荐使用 Gitbook Editor 来编写和管理电子书,因为它集成了 GitBook 命令、Markdown 编器和 Git 的功能,内容通过 Git 可与 gitbook.com / Gitlab / GitHub 同步,方便版本管理和团队协作。
可对于程序员或熟悉 Git 和 Markdown 的人,更推荐使用 GitBook 命令行 + Typora + SourceTree 来编写和管理电子书。使用专业工具做专业的事,比 Gitbook Editor 高效很多。
GitBook 是开源的。
1.2 GitBook 功能
- 支持 Markdown 或 AsciiDoc 语法。
- 可导出静态站点或电子书(PDF、epub、mobi)。
- 支持多语言。
- 可设置封面。
- 支持变量、模板和模板继承。
- 有丰富的插件。
1.3 GitBook 的工具组合
- Node.js:为了使用 npm 安装 GitBook,一定要先安装 Node.js。
- GitBook 命令:基于 Node.js 开发的命令行工具,用于创建和管理电子书。
- Markdown:GitBook 使用 Markdown 来写作,作者再也不用担心排版了。
- Git:GitBook 使用 Git 管理写作内容,方便多人协作和版本管理。
- Github/Gitlab:跟代码一样,写作的内容可以托管在 Github 或 Gitlab 中。
- gitbook.com:用于在线编写、发布和托管电子书的网站。
1.4 GitBook 的使用场景
- 搭建公司内部的文档平台,用于公司内部的资料共享。
- 发表开源的电子书,用于在互联网上共享自己的知识,普惠大众。
2、Gitbook 环境配置
2.1 安装 Node.js
- 因为 GitBook 是使用 Node.js 开发的,需要通过 Node.js 包管理工具 NPM 安装,所以在开始之前要先把 Node.js 安装好。
2.2 安装 GitBook
使用 NPM 安装 GitBook 的命令行工具。
$ sudo npm install gitbook-cli -g
安装完成后查看 GitBook 的版本。
$ gitbook --version
更新 GitBook 命令。
$ npm update gitbook-cli -g
卸载 GitBook 命令。
$ sudo npm uninstall gitbook-cli -g
注意:
本例中使用的是全局安装 GitBook 命令,还有一种安装方式是本地安装,两种方式有什么不同呢?
- 本地安装:安装包会被下载到当前所在目录,因此只能在当前目录下使用。
- 全局安装:安装包会被下载到到特定的系统目录下,安装包能够在所有目录下使用。
例如,查看 macOS 下全局安装被安装到了哪里?
$ which gitbook
/usr/local/bin/gitbook
- GitBook 被安装到了 /usr/local/bin/ 目录下,因此可以全局使用。
2.3 快速开始 GitBook
1)初始化 GitBook
# 创建 mygitbook 文件夹,并切换到这个文件夹下面
$ mkdir mygitbook && cd mygitbook # 初始化 gitbook 工作目录,创建必要的文件
$ gitbook init
warn: no summary file in this book
info: create README.md
info: create SUMMARY.md
info: initialization is finished
然后会初始化 GitBook 目录,创建两个 md 格式的文件 README.md 和 SUMMARY.md
- README.md - 项目的介绍都写在这个文件里。
- SUMMARY.md - GitBook 的目录结构在这里配置。
2)定义目录结构
两种方法
在 SUMMARY.md 文件中定义目录结构有两种方法。
方法 ➊. 先定义好目录结构,通过
gitbook init自动生成目录结构对应的文件夹和 Markdown 文件。方法 ➋. 先创建好文件夹和 Markdown 文件再来编辑目录结构。
SUMMARY.md
SUMMARY.md 的目录结构长什么样?看下面:
# Summary * [项目简介](README.md)
* [快速开始](docs/快速开始.md)
* [环境搭建](docs/环境搭建.md)
* [简单使用](docs/简单使用.md)
* [学入学习](docs/深入学习)
这个目录建好以后在根目录下执行命令:
$ gitbook init
那些没有的目录和文件都会被创建:
info: create docs/快速开始.md
info: create docs/环境搭建.md
info: create docs/简单使用.md
info: create docs/深入学习.md
info: create SUMMARY.md
info: initialization is finished
gitbook init只支持生成两级目录。
3)启动服务
在根目录执行命令:
$ gitbook serve
结果:
Live reload server started on port: 35729
Press CTRL+C to quit ... info: 7 plugins are installed
info: loading plugin "livereload"... OK
info: loading plugin "highlight"... OK
info: loading plugin "search"... OK
info: loading plugin "lunr"... OK
info: loading plugin "sharing"... OK
info: loading plugin "fontsettings"... OK
info: loading plugin "theme-default"... OK
info: found 5 pages
info: found 0 asset files
info: >> generation finished with success in 1.9s ! Starting server ...
Serving book on http://localhost:4000 # 注意浏览地址
执行
gitbook serve命令后,会先编译书籍 gitbook build,如果没有问题会打开一个 Web 服务器,默认监听 4000 端口。如果编译有问题,会抛出错误信息。快速启动 GitBook 服务器脚本下载,点击查看软件下载密码获取方法。
4)查看效果
用浏览器打开 http://localhost:4000/ 或 http://127.0.0.1:4000/ 查看显示书籍的效果。

如果想发给别人看,把 localhost 换成自己电脑的 IP 地址。
Gitbook 命令行工具的更多相关文章
- GitBook是一个命令行工具(Node.js库),我们可以借用该工具使用Github/Git和Markdown来制作精美的图书,但它并不是一本关于Git的教程哟。
GitBook是一个命令行工具(Node.js库),我们可以借用该工具使用Github/Git和Markdown来制作精美的图书,但它并不是一本关于Git的教程哟. 支持输出多种格式 GitBook支 ...
- windows下的命令行工具babun
什么是babun babun是windows上的一个第三方shell,在这个shell上面你可以使用几乎所有linux,unix上面的命令,他几乎可以取代windows的shell.用官方的题目说就是 ...
- 『.NET Core CLI工具文档』(一).NET Core 命令行工具(CLI)
说明:本文是个人翻译文章,由于个人水平有限,有不对的地方请大家帮忙更正. 原文:.NET Core Command Line Tools 翻译:.NET Core命令行工具 什么是 .NET Core ...
- 命令行工具aspnet_regiis.exe实现加密和解密web.config
命令行工具aspnet_regiis.exe,是一个类似于DOS的命令工具,称之为命令解释器.使用命令行工具加密和解密web.config文件中的数据库连接字符串时,只需要简单的语法命令即可. 加密语 ...
- nodejs 编写(添加时间戳)命令行工具 timestamp
Nodejs除了编写服务器端程序还可以编写命令行工具,如gulp.js就是Nodejs编写的. 接下来我们来实现一个添加时间戳的命令: $ timestamp action https://www.n ...
- 如何用Node编写命令行工具
0. 命令行工具 当全局安装模块之后,我们可以在控制台下执行指定的命令来运行操作,如果npm一样.我把这样的模块称之为命令行工具模块(如理解有偏颇,欢迎指正) 1.用Node编写命令行工具 在Node ...
- Orchard中的命令行工具
在Orchard中提供了一个命令行工具,我们可以使用这个命令行工具创建用户.创建博客.生成代码.配置网站.打包模块等.并且这个命令行工具是可以扩充的,只要我们在自己开发的模块中创建一个Command类 ...
- Linux 性能监控之命令行工具
引言 对于系统和网络管理员来说每天监控和调试Linux系统的性能问题是一项繁重的工作.这些命令行工具可以在各种Linux系统下使用,可以用于监控和查找产生性能问题的原因.这个命令行工具列表提供了足够的 ...
- 命令行工具解析Crash文件,dSYM文件进行符号化
备份 文/爱掏蜂窝的熊(简书作者)原文链接:http://www.jianshu.com/p/0b6f5148dab8著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”. 序 在日常开发 ...
随机推荐
- day15--JavaScript语言
JavaScript JavaScript是一门单独的编程语言.浏览器内置JavaScript的解释器. 独立的语言,浏览器具有js解释器. 存在与HTML中,在HTML中写JavaScript,存在 ...
- CentOS7.5安装nodejs
安装方法1——直接部署 1.首先安装wget yum install -y wget 如果已经安装了可以跳过该步 2.下载nodejs最新的tar包 可以在下载页面https://nodejs.org ...
- Storm消息容错机制(ack-fail机制)
storm消息容错机制(ack-fail) 1.介绍 在storm中,可靠的信息处理机制是从spout开始的. 一个提供了可靠的处理机制的spout需要记录他发射出去的tuple,当下游bolt处理t ...
- 动态产生DataSource------待整理
1. https://www.cnblogs.com/wsss/p/5475057.html https://www.cnblogs.com/jiligalaer/p/5418874.html htt ...
- Redis分布式锁实现方式(附有正解及错误示例)
一.前言 本文内容主要来自博客:https://wudashan.com/2017/10/23/Redis-Distributed-Lock-Implement/,本文用于归纳总结及笔记用途,如有需要 ...
- js获取当前用户IP地址和城市
引用下面的js: <script src="http://pv.sohu.com/cityjson?ie=utf-8"></script> 直接获取IP和城 ...
- ruby那些事儿
为了学习sass,客串一下ruby,这是一个破案的过程,探索的过程. Ruby是日本人发明的一种类似于Python和Perl的服务器端脚本语言,它完全面向对象,适合于快速开发,一般开发效率是java的 ...
- SQLserver 字符串转换日期,日期转换成为字符串
sqlserver 日期与字符串之间的转换 该文章摘自:http://www.cnblogs.com/windphoenix/archive/2013/04/26/3044784.html 字符转 ...
- BZOJ.2095.[POI2010]Bridges(最大流ISAP 二分 欧拉回路)
题目链接 最小化最大的一条边,二分答案.然后就变成了给一张无向图定向使其为欧拉回路 二分答案后对于一个位置的两条边可能都保留,即双向边,需要给它定向:可能只保留小的一条,即单向边,不需考虑 如何给它定 ...
- 洛谷P1784 数独
To 洛谷.1784 数独(类似(或者说相同)题:CODEVS.4966 简单数独(4*4数独) CODEVS.2924 数独挑战) 题目描述 数独是根据9×9盘面上的已知数字,推理出所有剩余空格的数 ...