GitBook
本地版基本信息
有本地版和网页版两种。推荐使用本地版。
网页版:GitBook网页版
以下介绍本地版。
本地版依赖node.js,且由于GitBook长期未维护,只能使用v10.21.0及之前的版本。所以推荐使用nvm管理node.js。
在npm官网搜索GitBook,里面会有具体的说明。
安装
npm install gitbook-cli -g
FIRST COMMAND
查看版本:
gitbook -v
初始化项目
在项目文件夹中,
gitbook init
会自动创建README.md和SUMMARY.md,分别是介绍文档和目录文档。
和Github类似,GitBook也提供了忽略文件,GitBook会依次读取.gitignore,.bookignore,.ignore文件。一个文件一行,可以用通配符。
npm init
由于后面使用npm管理,所以需要进行npm初始化。 如果你真的不使用npm管理,也可以不进行这一步。
会自动创建npm项目的配置文件package.json。
初始化配置和插件
初始化配置文件
在项目文件夹根目录新建book.js或book.json文件,作为配置文件。
注意,json文件内不能含有注释。如果想加注释,只能用js文件。
常用配置如下,以book.json为例:
{
"title": "书名",
"description": "描述",
"isbn": "图书编号",
"author": "作者",
"lang": "zh-cn",
"plugins": ["search-pro", "code", "expandable-chapters", "back-to-top-button", "theme-lou"],
"pluginsConfig": {
"fontSettings": {
"theme": "sepia",
"family": "sans",
"size": 4
}
},
"vairables": {}
}
插件相关
查找插件
插件同样在npm官网搜索,关键词为gitbook-plugin-。
常用插件列举
增强搜索
npm install gitbook-plugin-search-pro
代码框
npm install gitbook-plugin-code
菜单折叠
npm install gitbook-plugin-expandable-chapters
返回顶部
npm install gitbook-plugin-back-to-top-button
自动创建目录
npm i gitbook-plugin-toc
这里的目录是指页面内顶端的页内目录,需要在需要插入的地方插入代码:
<!-- toc -->
注意:因为有些时候会有BUG,且很多时候前端模板可以自动生成,所以弃用。
自动更新SUMMARY文件
npm i gitbook-plugin-summary-pro
注意:为了防止出现BUG,在book.json中,这个尽量放在第一个。
自定义主题插件
npm install gitbook-plugin-theme-主题名
插件安装方法
在配置文件中(book.js或book.json)下的plugins的list里添加插件名。只添加gitbook-plugin-后面的即可,如:
search-pro
code
expandable-chapters
back-to-top-button
toc
summary-pro
theme-主题名
theme-aleen42
theme-beauty
theme-comscore
theme-cuav
theme-door
theme-gestalt-yl
theme-het-ycy
theme-jolie
theme-lou
theme-seers
有一些插件,需要额外的配置,例如summary-pro,需要额外在book.json中配置:
"pluginsConfig": {
"summary-pro": {
"firstpage": {
"title": "SomeTechnology"
}
}
},
比较好的theme
beauty
lou
aleen42
comscore
Write Book
章节配置说明
SUMMARY.md是链接列表文件,名字是章节的名字,链接指向章节文件的路径。
子章节可以直接内嵌。
例如:
# 概要
- [第一章](part1/README.md)
- [1.1 第一节](part1/writing.md)
- [1.2 第二节](part1/gitbook.md)
- [第二章](part2/README.md)
- [2.1 第一节](part2/feedback_please.md)
- [2.2 第二节](part2/better_tools.md)
具体内容
直接写相关md文件即可。
启动项目
有两种方法进行:
使用gitbook管理运行
使用npm管理运行
有两种启动方式:
打包成HTML静态文件并启动Web服务
仅打包成HTML静态文件
这两种方法都可以任意选择启动方式。
但是,npm管理方法的扩展性更好,推荐这个方法。
GitBook管理运行
打包并启动Web服务
在项目文件夹中,
gitbook serve
在项目根目录会生成book文件夹,里面是HTML静态文件。同时可以通过以下网址访问。
http://localhost:4000
仅打包成HTML静态文件
在项目文件夹中,
gitbook build
同上,只不过不会开启Web服务。
npm管理运行
修改package.json文件,在scripts下面添加:
"scripts":{
"serve": "rmdir /S /Q _book && gitbook serve",
"build": "rmdir /S /Q _book && gitbook build"
}
注意:这里的删除是防止产生冗余干扰。
然后通过以下命令运行:
npm run serve
npm run build
使用效果同上。
高阶操作
Nginx配置文件参考
server {
listen 8065;
server_name 你的服务器IP;
location / {
charset utf-8;
root /electronic-book-demo/build/;
index index.html index.htm;
}
}
server {
listen 80;
server_name demo.域名.com;
location / {
charset utf-8;
root /electronic-book-demo/build/;
index index.html index.htm;
}
}