Gitbook相关注意事项
一、Gitbook文档编写环境搭建
1.1 gitbook
环境搭建
gitbook
环境搭建安装
nodejs
以及npm
,参考nodejs与npm安装;安装
proxychains-ng
用于终端走代理,参考proxychain安装与使用。如果您不想安装proxychains-ng
,可以参考terminal走代理进行设置;npm install gitbook-cli -g
安装gitbook-cli
用于管理gitbook
的版本;gitbook fetch 3.2.3
安装gitbook
的3.2.3版本;
如果没有代理,那么可以将npm替换为国内源,参考npm替换国内源。
1.2 calibre
安装
calibre
安装calibre
提供了ebook-converter
,用于将gitbook生成pdf。Ubuntu安装命令:sudo aptitude install calibre
,Mac OS
和Windows
直接用安装包安装即可,Mac OS
也可以使用brew cask install calibre
安装。
1.3 编辑器选择
建议使用VS Code
作为gitbook
的编辑器,VS Code
插件丰富且社区十分活跃,推荐使用koroFileHeader。
二、文档编写格式规定
2.1 标题
以
# 一级标题
格式作为标题;以
## 一、xxx
格式作为正文一级标题;以
### 1.x xxx
作为正文二级标题;以
#### 1.1.x xxx
作为正文三级标题;禁止使用三级以上标题。
2.2 html特性的使用
html
代码需要保持良好的缩进,便于日后修改。例如:
该段代码在gitbook
中效果如下:
Bad
Good
// 应该足以满足任何情况!
c := make(chan int, 64)
// 大小:1
c := make(chan int, 1) // 或者
// 无缓冲 channel,大小为 0
c := make(chan int)
三、Markdown注意
在每一级标题之间要空一行,否则
gitbook pdf
生成的pdf排版有问题,例如:在描述键盘快捷键时,使用
<kbd>Ctrl</kbd>
标签将快捷键包裹,效果:Ctrl。在使用序号表示小节时,要在
.
后面空一格。当描述的内容属于这一小节时,内容要进行一个<kbd>Tab</kbd>
的缩进,否则你所写的内容就会与小节处于同级。节与节之间不需要空一行。例如:在markdown里面,没有换行的概念。只有通过一行空格来区分段。例如:
以上写法会被markdown认为是一行,实际显示效果如下:
如果想要换行,加一个空白行,例如:
front-matter
用于表示markdown文件的matadata,格式如下:这个格式很好懂,就不多解释了,类似于
ymal
(冒号后面注意空一格,要求和yaml
一样)。front-matter只能位于文件的最前端,所有注释都不能加在front-matter之前。例如:在标注代码块时,尽量带上代码的语言,这样markdown在渲染时会有高亮,看起来比较美观。例如:
四、开发准则
在
clone
前,推荐将公钥先添加到Github
,避免每次push
都需要输入账号密码,添加公钥的方法参考github添加公钥。在
clone
项目后,首先修改项目的配置。名字和邮箱应为
github
的primary email
,如果使用全局的邮箱提交,在github
上无法显示本人提交。在开发时,为了避免冲突,每次都应在
master
分支执行git pull
,再切换自己的branch,并执行git merge master
,合并master
分支的修改。提交代码是,
commit msg
应为以下格式:在提交之前,请在项目根目录使用
gitbook pdf
生成pdf
文件,并至少检查修改部分是否显示正确。
五、关于SUMMARY.md的自动生成
经过研究,有现成的解决方案。下面简述步骤:
安装gitbook-summary(需要nodejs)
在目录中的
README.md
会作为该目录章节的链接(所以所有目录中介绍该目录内容的文件应该为README.md)前文讲述了
front-matter
,里面的title
的值将作为SUMMARY.md
中的标题名。(所以每个文件都应该指定front-matter
,至少应该包含title
字段)在
Handbook
根目录运行以下命令:
该解决方案地址在这里,感兴趣的可以研究一下。
Last updated
Was this helpful?