gitbook
环境搭建
- 安装node
- 安装gitbook
- gitbook快速入门
- book.json
- 插件使用
环境搭建
安装node
- 下载解压
wget -c https://nodejs.org/download/release/v12.22.12/node-v12.22.12-linux-x64.tar.gz
tar xf node-v12.22.12-linux-x64.tar.gz
mv node-v12.22.12-linux-x64 /usr/local/node
- 添加环境变量
cat ~/.bash_profile
NODEPATH="/usr/local/node"
PATH=$PATH:$HOME/bin:$NODEPATH/bin
source ~/.bash_profile # 重新加载环境变量
node -v # 查看node版本
安装gitbook
npm install -g gitbook-cli # 全局安装gitbook-cli
gitbook -V # 查看gitbook版本
CLI version: 2.3.2
GitBook version: 3.2.3
gitbook快速入门
- 初始化项目
mkdir vim_book
cd vim_book
gitbook init # 初始化
- 添加md文件到项目
[root@localhost vim_book]# tree -N
.
├── end
│ └── README.md
├── img
├── notes
│ ├── VIM从放弃到爱不释手-README.md
│ ├── VIM从放弃到爱不释手.xmind
│ ├── VIM从放弃到爱不释手-基础-三大模式.md
│ ├── VIM从放弃到爱不释手-基础-安装VIM.md
│ ├── VIM从放弃到爱不释手-基础-文件的打开与关闭.md
│ ├── VIM从放弃到爱不释手-基础-替换.md
│ ├── VIM从放弃到爱不释手-基础-查找.md
│ ├── VIM从放弃到爱不释手-基础-移动光标.md
│ └── VIM从放弃到爱不释手-基础-编辑文件.md
├── README.md
└── SUMMARY.md
- 编写SUMMARY.md
[root@localhost vim_book]# cat SUMMARY.md
# Summary
* [简介](notes/VIM从放弃到爱不释手-README.md)
* 入门
* [README](notes/VIM从放弃到爱不释手-README.md)
* [三大模式](notes/VIM从放弃到爱不释手-基础-三大模式.md)
* [安装VIM](notes/VIM从放弃到爱不释手-基础-安装VIM.md)
* [文件的打开与关闭](notes/VIM从放弃到爱不释手-基础-文件的打开与关闭.md)
* 进阶
* [替换](notes/VIM从放弃到爱不释手-基础-替换.md)
* [查找](notes/VIM从放弃到爱不释手-基础-查找.md)
* [移动光标](notes/VIM从放弃到爱不释手-基础-移动光标.md)
* [编辑文件](notes/VIM从放弃到爱不释手-基础-编辑文件.md)
* [结束](end/README.md)
- 预览项目
[root@localhost vim_book]# gitbook serve
Live reload server started on port: 35729
Press CTRL+C to quit ...
info: 12 plugins are installed
info: 7 explicitly listed
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 10 pages
info: found 94 asset files
info: >> generation finished with success in 1.0s !
Starting server ...
Serving book on http://localhost:4000
使用浏览器访问 http://localhost:4000,如果是别的电脑则使用IP访问 http://安装gitbook服务器的IP:4000
book.json
在项目根目录创建book.json文件
[root@localhost vim_book]# cat book.json
{
"title": "VIM从放弃到爱不释手",
"author": "Rock",
"description": "VIM从放弃到爱不释手",
"language": "zh-hans",
"styles": {
"website": "styles/website.css"
},
"links": {
"sidebar": {
"Home": "https://kexec.cn"
}
},
"plugins": [
"-highlight",
"-search",
"-sharing",
"-font-settings",
"-livereload"
],
"pluginsConfig": {
}
}
title | 本书标题 |
---|---|
root | 包含所有图书文件的根文件夹的路径,除了book.json |
author | 本书作者 |
description | 本书描述 |
language | 本书语言,中文设置 “zh-hans” 即可 |
gitbook | 指定使用的 GitBook 版本 |
styles | 自定义页面样式 |
structure | 指定 Readme、Summary、Glossary 和 Languages 对应的文件名 |
variables | 这个选项定义书籍中的变量 |
links | 在左侧导航栏添加链接信息 |
plugins | 配置使用的插件 |
pluginsConfig | 配置插件的属性 |
自定义页面样式
"styles": {
"website": "styles/website.css",
"ebook": "styles/ebook.css",
"pdf": "styles/pdf.css",
"mobi": "styles/mobi.css",
"epub": "styles/epub.css",
}
structure结构配置
除了 root 变量,你可以通过 structure 告诉Gitbook [Readme],[Summary],[Glossary],[Languages]的文件名(
而不是使用默认名称,如README.md)。这些文件必须在您的书籍项目的根目录。不接受像 doc/README.md 这样的子目录路径。
"structure": {
"readme": "README.md",
"summary": "SUMMARY.md",
"glossary": "GLOSSARY.md",
"languages": "LANGS.md"
}
readme | 自述文件名(默认为 README.md) |
---|---|
summary | 摘要文件名(默认为 SUMMARY.md) |
glossary | 词汇表文件名(默认为 GLOSSARY.md) |
languages | 语言文件名(默认为 LANGS.md) |
links 链接导航
通过 links 配置在左侧导航栏添加指定的链接导航,如:添加自己的博客链接,GIthub链接等等…
"links": {
"sidebar": {
"Home": "https://kexec.cn"
}
}
默认插件
highlight - 语法高亮插件
search - 搜索插件
sharing - 分享插件
font-settings - 字体设置插件
livereload - 热加载插件
code 代码复制插件
expandable-chapters 目录折叠
expandable-chapters-small 目录折叠(小)
back-to-top-button 回到顶部
search-pro 高级搜索
tbfed-pagefooter 页脚配置
"tbfed-pagefooter":{
"copyright":"Copyright © mine 2000-2022",
"modify_label":"文件修订时间",
"modify_format": "YYYY-MM-DD HH:mm:ss"
}
page-treeview 生成页内目录
"page-treeview": {
"copyright": "Copyright © aleen42",
"minHeaderCount": "2",
"minHeaderDeep": "2"
}
simple-page-toc 生成页内目录
"simple-page-toc": {
"maxDepth": 3, # 使用深度最多为maxdepth的标题
"skipFirstH1": true # 排除文件中的第一个h1级标题
}
使用方法: 在需要生成目录的地方用下面的标签括起来,全文都生成的话就在首尾添加
内容部分page-toc-button 悬浮目录
名称 默认 描述
maxTocDepth 2 标题的最大深度(2 = h1 + h2 + h3)。不支持值> 2。
minTocSize 2 显示toc按钮的最小toc条目数。
ancre-navigation 悬浮目录和回到顶部
donate 打赏插件
文章最下面的按钮,点击可弹出图片
"donate": {
"wechat": "微信收款的二维码URL",
"alipay": "支付宝收款的二维码URL",
"title": "支持1",
"button": "支持2",
"alipayText": "支持2",
"wechatText": "支持2",
}
todo
github
emphasize 文本加上底上
splitter 侧边栏宽度可调节
sharing-plus 分享插件
favicon
anchors
anchor-navigation-ex
"donate":{
"alipay":"./source/images/donate.png",
"title":"喜欢的化,鼓励一下吧",
"button":"赞赏",
"alipayText":""
}
"anchor-navigation-ex":{
"showLevel": false
}
"favicon":{
"shortcut": "./img/favicon.jpg",
"bookmark": "./img/favicon.jpg",
"appleTouch": "./img/favicon.jpg",
"appleTouchMore": {
"120x120": "./img/favicon.jpg",
"180x180": "./img/favicon.jpg"
}
}
change_girls 背景自动切换
time:图片的切换时间,单位是秒
urls: 一个数组,可以定义多个图片,只能使用互联网上的绝对地址
"change_girls": {
"time":10,
"urls": [
"https://www.xxx.com/a.jpg"
]
}
"insert-logo": {
"url": "/images/favicon.ico",
"style": "background: none; max-height: 30px; min-height:30px;"
}
alerts 警报
pageview-count 阅读量计数
auto-scroll-table 表格滚动条
popup 弹出大图 单击图片,在新页面查看大图。
lightbox 单击查看图片 点击图片在新窗口查看,大小不变
click-reveal 点击显示 默认隐藏,点击可显示。
custom-favicon 修改标题栏图标
"favicon": "favicon.ico"
accordion 折叠模块
这个插件名叫手风琴,可以实现将内容隐藏起来,外部显示模块标题和显示箭头,点击箭头可显示里面的内容。
node 管理工具
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
source .bashrc
nvm install 10.24.1
npm config set registry http://registry.npm.taobao.org/ # 设置 taobao npm 源
npm install -g gitbook-cli # 全局安装gitbook-cli
gitbook init
gitbook serve
gitbook build
- alerts 提示框的增强
- anchor 锚点
- chapter 菜单折叠
- code 代码行号、复制
- favicon 网站的小图标
- github 链接到github仓库
- pagefooter 页脚说明
- prism 代码着色
- search 增强中文搜索
- section 文本折叠
- sharing 分享增强
- splitter 菜单动态伸缩
- statistics 搜索引擎点击统计,百度统计,谷歌统计
- version 多版本选择
再说明:
gitbook 3.2.3 版本会出现 split 错误;3.0.0 可正常使用;
gitbook install # 安装扩展
gitbook ls # 查看 本地版本
gitbook fetch 3.0.0 # 拉取 3.0.0 版本
gitbook serve # 切换为 3.0.0 版本开启服务
Comments | NOTHING
该文章已经关闭评论