00. 目录

文章目录

  • 00. 目录
  • 01. GitBook简介
  • 02. GitBook安装
  • 03. GitBook使用
  • 04. GitBook命令
  • 05. GitBook配置
  • 06. GitBook插件
  • 07. 在线文档云平台
  • 08. 附录

01. GitBook简介

GitBook是一个使用 Git 和 Markdown 来构建书籍的工具。它可以将你的书输出很多格式:PDF,ePub,mobi,或者输出为静态网页。
GitBook工具链是开源并且完全免费的,它的源码可以在 GitHub 上获取。

02. GitBook安装

2.1 安装npm工具

deng@itcast:~$ sudo apt install npm

2.2 安装GitBook

deng@itcast:~$ sudo npm install gitbook-cli -g

2.3 验证是否安装成功

deng@itcast:~$ gitbook -V
CLI version: 2.3.2
Installing GitBook 3.2.3

03. GitBook使用

3.1 GitBook初始化

打开一个文件夹 test使用 gitbook init 初始化文件夹,会自动生成两个必要的文件 README.mdSUMMARY.md

deng@itcast:~/test$ gitbook init
warn: no summary file in this book
info: create README.md
info: create SUMMARY.md
info: initialization is finished
deng@itcast:~/test$ 
文件 说明
README.md 书的介绍文字,如前言、简介,在章节中也可做为章节的简介。
SUMMARY.md 定制书籍的章节结构和顺序。

README.mdSUMMARY.mdGitBook 制作电子书的必要文件。

3.2 GitBook预览

方式一:通过网络访问

deng@itcast:~/test$ 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 1 pages
info: found 0 asset files
info: >> generation finished with success in 0.3s ! Starting server ...
Serving book on http://localhost:4000

在浏览器输入http://ip:4000

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6NQWiroc-1593573700671)(assets/image-20200701101235013.png)]

方式二:生成静态页面

deng@itcast:~/test$ gitbook build
info: 7 plugins are installed
info: 6 explicitly listed
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 1 pages
info: found 0 asset files
info: >> generation finished with success in 0.4s !
deng@itcast:~/test$

生成.html静态文件,配置后可以直接访问预览

04. GitBook命令

GitBook命令都可以通过shell或者cmd环境下执行。

4.1 安装命令

deng@itcast:~/test$ npm install gitbook-cli -g

4.2 初始化命令

初始化 新建一个文件夹,例如新建 test,然后在该目录下执行命令

deng@itcast:~/test$ gitbook init

会自动生成两个必要的文件 README.md 和 SUMMARY.md。

4.3 预览命令

deng@itcast:~/test$ gitbook serve

gitbook会启动一个4000端口用于预览,可以在浏览器打开网址: http://localhost:4000 预览效果。

4.4 编译命令

deng@itcast:~/test$ gitbook build

运行该命令后会在根文件夹生成一个 book 文件夹,包含了书籍的所有 html 文件. 可以使用该命令来生成网页而不开启服务器,也可以将book文件夹部署到服务器上。

4.5 help命令

deng@itcast:~/test$ gitbook --helpUsage: gitbook [options] [command]

输出gitbook的帮助信息

4.6 serve命令

deng@itcast:~/test$ gitbook serve

生成静态网页并运行服务器

4.7 build命令

deng@itcast:~/test$ gitbook build

生成静态网页

deng@itcast:~/test$ gitbook build --gitbook=3.2.3

生成静态网页时指定gitbook的版本,如果本地没有将先下载

deng@itcast:~/test$ gitbook build --log=debug

指定log级别

deng@itcast:~/test$ gitbook build --debug

输出错误信息

4.8 ls命令

deng@itcast:~/test$ gitbook ls
GitBook Versions Installed:* 3.2.3Run "gitbook update" to update to the latest version.
deng@itcast:~/test$

列出所有的gitbook版本

4.9 ls-remote命令

deng@itcast:~/test$ gitbook ls-remote

列出远程可用的gitbook版本

4.10 update命令

deng@itcast:~/test$ gitbook update

更新到gitbook的最新版本

4.11 uninstall命令

deng@itcast:~/test$ gitbook uninstall 3.2.3

卸载对应的gitbook版本

4.12 install命令

deng@itcast:~/test$ gitbook install

安装依赖

05. GitBook配置

变量 描述
root 包含所有图书文件的根文件夹的路径,除了 book.json
structure 指定自述文件,摘要,词汇表等的路径,参考 Structure paragraph.
title 您的书名,默认值是从 README 中提取出来的。在 GitBook.com 上,这个字段是预填的。
description 您的书籍的描述,默认值是从 README 中提取出来的。在 GitBook.com 上,这个字段是预填的。
author 作者名。在GitBook.com上,这个字段是预填的。
isbn 国际标准书号 ISBN
language 本书的语言类型 —— ISO code 。默认值是 en
direction 文本阅读顺序。可以是 rtl (从右向左)或 ltr (从左向右),默认值依赖于 language的值
gitbook 应该使用的GitBook版本。使用 SemVer 规范,并接受类似于 “> = 3.0.0” 的条件。

root

包含所有图书文件的根文件夹的路径, book.json 文件除外。

"root" : "./docs"

structure

指定 Readme、Summary、Glossary 和 Languages 对应的文件名。

title

电子书的书名,默认值是从 README 中提取出来的。在 GitBook.com 上,这个字段是预先填写的。

"title" : "gitbook-notes"

description

电子书的描述,默认值是从 README 中提取出来的。在GitBook.com上,这个字段是预先填写的。

"description" : "C++教程"

author

作者姓名,在GitBook.com上,这个字段是预先填写的

"author" : "Ming Li"

direction

文本的方向。可以是 rtl 或 ltr,默认值取决于语言的值。

"direction" : "ltr"

gitbook

应该使用的GitBook版本。使用SemVer规范,接受类似于 >=3.0.0 的条件。

"gitbook" : "3.0.0",
"gitbook" : ">=3.0.0"

language

Gitbook使用的语言, 版本2.6.4中可选的语言如下: en, ar, bn, cs, de, en, es, fa, fi, fr, he, it, ja, ko, no, pl, pt, ro, ru, sv, uk, vi, zh-hans, zh-tw

"language" : "zh-hans",

links

在左侧导航栏添加链接信息

"links" : {"sidebar" : {"Home" : "https://github.com/json/gitbook-notes"}
}

styles

自定义页面样式, 默认情况下各generator对应的css文件

"styles": {"website": "styles/website.css","ebook": "styles/ebook.css","pdf": "styles/pdf.css","mobi": "styles/mobi.css","epub": "styles/epub.css"
}

例如要使 h1、h2 标签有下边框, 可以在 website.css 中设置

h1 , h2{border-bottom: 1px solid #EFEAEA;
}

plugins 插件列表

可以在插件前面加-符号删除默认插件,默认五种插件如下,更多插件

highlight:代码高亮
search:导航栏查询功能(不支持中文)
sharing:右上角分享功能
font-settings:字体设置(最上方的"A"符号)
livereload:为GitBook实时重新加载
pluginsConfig 配置插件的属性

综合实例

{"title": "GItBook笔记","description": "GitBook笔记","author": "tom","output.name": "site","language": "zh-hans","gitbook": "3.2.3","root": ".","links": {"sidebar": {"首页": "http://www.json.com"}},"plugins": ["code","-search","search-pro","github","splitter","tbfed-pagefooter","donate","-sharing","sharing-plus","prism","-highlight","styles-less","toggle-chapters","multipart","ancre-navigation"],"pluginsConfig": {"github": {"url": "https://github.com/json"},"code": {"copyButtons": true},"tbfed-pagefooter": {"copyright": "Copyright © lijiam 2019","modify_label": "本书发布时间:","modify_format": "YYYY-MM-DD HH:mm:ss"},"donate": {"wechat": "/assets/images/wxpay.png","alipay": "/assets/images/alipay.png","title": "","button": "赏","alipayText": "支付宝打赏","wechatText": "微信打赏"},"sharing": {"facebook": true,"twitter": true,"weibo": true,"qq": true,"all": ["douban","google","qzone","linkedin"]},"prism": {"css": ["prismjs/themes/prism-solarizedlight.css"],"lang": {"flow": "typescript"}}},"styles": {"website": "assets/styles/website.less","ebook": "assets/styles/ebook.less","pdf": "assets/styles/pdf.less","mobi": "assets/styles/mobi.less","epub": "assets/styles/epub.less"}
}

06. GitBook插件

在根目录下创建book.json文件

6.1 配置

book.jsonplugins参数中添加插件名。

{"plugins": ["mathjax"]
}

6.2 安装

gitbook install#或者
npm install gitbook-plugin-插件名

6.3 重启服务
如果使用gitbook install安装的很慢,建议使用npm init初始化一个package.json文件,然后每个包通过npm命令安装,以后就可以通过npm install一键快速安装依赖包了。

温馨提示:

1、插件一定先要在book.json文件里面plugins中才能生效,如果只是安装了插件,而没配置的话是不会生效的。

2、gitbook命令安装慢,而且是全部插件都安装一遍,如果只安装一个插件的话建议使用NPM命令安装。

6.4 插件列表

配置使用的插件

"plugins": ["-search","back-to-top-button","expandable-chapters-small","insert-logo"
]

其中-search中的 - 符号代表去除默认自带的插件

Gitbook默认自带有5个插件:

插件 说明
highlight 代码高亮
search 导航栏查询功能(不支持中文)
sharing 右上角分享功能
font-settings 字体设置(最上方的"A"符号)
livereload 为GitBook实时重新加载

6.5 插件属性

配置插件的属性 例如配置insert-logo的属性:

  "pluginsConfig": {"insert-logo": {"url": "images/logo.png","style": "background: none; max-height: 30px; min-height: 30px"}}

6.6 实用插件

记录一些实用的插件 用法:在book.json中添加"plugins"和"pluginConfig"字段。然后执行gitbook install,或者使用NPM安装npm install gitbook-plugin-插件名,也可以从源码GitHub地址中下载,放到node_modules文件夹里(GitHub地址在进入插件地址右侧的GitHub链接)

07. 在线文档云平台

VuePress
看云
语雀
BookStack
docsify
Docute
MinDoc
Wikitten
DokuWiki
MkDocs
Penflip

如果希望托管在平台,请根据项目数量选择使用GitBook或者看云

如果自建,轻量级的推荐docsify,内容多推荐DokuWiki

08. 附录

8.1 GitBook官方网站

网站:https://www.gitbook.com/

8.2 插件博客

网站:https://blog.csdn.net/fghsfeyhdf/article/details/88403548

8.3 MarkDown笔记

网站:https://www.jianshu.com/p/b03a8d7b1719

8.4 参考博客
网站:http://gitbook.hushuang.me/themes/

【Tools】GitBook简明教程相关推荐

  1. 【Tools】GitBook入门教程

    00. 目录 文章目录 00. 目录 01. 什么是GitBook 02. 为什么用GitBook 03. 怎么安装GitBook 04. 怎么使用GitBook 05. 附录 01. 什么是GitB ...

  2. GitBook使用教程

    各大站长平时除了写博客外,可以使用 gitbook 将一系列的博客专栏整理成电子书出版.这样既方便各大网友阅读,还可以带来新的离线阅读功能. 在以前我们只能靠出版社,或者编写 word 文档,来实现. ...

  3. EasyJWeb-Velocity脚本简明教程

    EasyJWeb-Velocity脚本简明教程 (pdf版) 很多人下载了EasyJWeb的开源应用示例,但是对动态页面模板文件中的标签使用不是很熟悉,这里简单介绍一下.EasyJWeb特定把视图限定 ...

  4. ArcGIS Pro 简明教程(4)工具和模型构建器

    ArcGIS Pro 简明教程(4)工具和模型构建器 by 李远祥 工具箱中的工具 ArcGIS Pro 在1.3版本基本上已经继承了ArcMap的所有工具,而且会不断加入一些它自身才有的工具,例如适 ...

  5. GitBook快速教程 2.2 目录页和普通页

    这是一个 gitbook 教程,介绍如何基于模版(见 \boilerplate\ 目录),快速地上手gitbook. 教程 pdf 最新版本可访问 twowinter@github.com,博客汇总目 ...

  6. 廖雪峰Git简明教程整理

    廖雪峰Git简明教程 声明:本教程完全搬运自廖雪峰老师的个人网站,仅限于学习使用.所有版权归廖雪峰老师所有.整理人为Megatron,如果侵权请联系本人zhangwz93@foxmail.com删除. ...

  7. HijackThis反浏览器劫持软件--简明教程

    近来很多网友由于误点不良网址,导致IE主页被改成英文搜索页或其它恶意网页,通常的方法诸如修改注册表.用上网助手或杀毒软件等是不能解决的,修改注册表,一点刷新就会恢复成原样,用上网助手等软件修复要么是根 ...

  8. JabRef文献管理软件简明教程

    本文转载自:https://www.cnblogs.com/tsingke/p/4523908.html JabRef 文献管理软件简明教程 大多只有使用LaTeX撰写科技论文的研究人员才能完全领略到 ...

  9. JabRef 文献管理软件简明教程

    JabRef 文献管理软件简明教程 大多只有使用LaTeX撰写科技论文的研究人员才能完全领略到JabRef的妙不可言,但随着对Word写作平台上BibTeX4Word插件的开发和便利应用,使用Word ...

最新文章

  1. C语言 大小写字符转换
  2. android传输注册数据异常,android数据传值再获取的问题
  3. 女生学习Java是否真的没有优势呢?
  4. 创建一个dynamics 365 CRM online plugin (一) - Hello World Plugin
  5. n皇后问题java版
  6. Liferay研究-smilingleo
  7. 深度学习:识别图片中的电话号码(2)
  8. 科研必备?年入百万?来看这份知乎大佬的图形学书籍清单!
  9. pytorch里的nn.Embedding是什么东西?
  10. 语音情感识别的优选方法与流程
  11. HTML设为首页/加入收藏代码
  12. 【FinE】隐含波动率
  13. redmine使用指南_Redmine安装与入门指南
  14. 关于利用51单片机实现篮球记分牌功能的概述
  15. 破解Kotlin协程创建调用的那些事
  16. H5 兼容底部地址栏、搜索栏
  17. Linux下文件(文件夹)的压缩和解压
  18. 非J2EE部署解决方案
  19. 自考免考计算机应用基础申请流程,自考免考课程申请过程
  20. 基于RFID定位技术的资产管理--新导智能

热门文章

  1. 支付通道对接常见的问题有哪些
  2. 解决URL传参中文乱码
  3. js数组查找方法 find() findIndex() - Kaiqisan
  4. java:if...else..if...else控制语句的使用
  5. Java多线程进阶(一)—— J.U.C并发包概述
  6. 【我的OpenGL学习进阶之旅】收集到的关于如何在OpenGL ES上使用MSAA(Multisample Anti-aliasing)实现抗锯齿效果的资料和源码
  7. Python中scipy中weibull分布的计算
  8. JToken和JObject有什么区别
  9. html背景图片div设置宽自动,CSS背景图片固定宽高比自适应调整的实现方法
  10. 什么是SVG格式?如何制作?