《LINUX教程:GitBook 使用入门教程》要点: 本文介绍了LINUX教程:GitBook 使用入门教程,希望对您有用。如果有疑问,可以联系我们。
各大站长平时除了写博客外,可以使用?GitBook 将一系列的博客专栏整理成电子书出版.这样既便利各大网友阅读,还可以带来新的离线阅读功能.
在以前我们只能靠出版社,或者编写 word 文档,来实现.然而有了 gitbook 之后,一切都变得那么简单了.今天就为大家分享一下,如安在 Windows 系统上安装 gitbook,进行电子书的编写和发布.
1. GitBook Editor
最简单的方式就是使用GitBook编纂器,没有什么难度,后面的教程主要针对命令行的方式

PS:GitBook的book页面默认没有download按钮的

必要到设置中打开,打开后再次publish生效

同步GitHub

更新失败,无法转换成pdf/mobi/epub格局


Token

2. 安装 nodejs
首先我们必要做的是安装 Nodejs.大家可以到 Nodejs 的官网进行下载.下载完成后,执行双击进行运行安装.安装完成后,打开 cmd 命令行,输入 node -v 查看安装的 nodejs 的相关版本信息.
也可以在安装目次中找到 node.exe 文件,打开输入 node -v 查看安装的 nodejs 的相关版本信息.
3. nodejs 镜像配置
nodejs 安装完成后,我们就可以开始安装 gitbook 了.但是在安装之前,我们还需要配置一下 nodejs 插件安装的下载镜像地址.因为默认的镜像地址是在国外,需要翻墙才可以拜访,因此我们需要设置国内的镜像地址.国内的我推荐大家使用阿里巴巴的镜像地址 http://registry.npm.taobao.org .执行下面的命令,进行配置.
npm config set registry http://registry.npm.taobao.org
除了上面的办法外,我们也可以在用户主目录下编辑 .npmrc 文件,添加一行 registry=http://registry.npm.taobao.org 保存就可以了.用户的主目录一般在 C:UsersAdministrator,具体随你的操作系统系统盘而定.
4. 全局安装 gitbook
现在我们可以开始安装全局的 gitbook 了.执行 npm install gitbook-cli -g 命令,进行安装.安装的过程中,由于需要下载安装包,因此大家需要等待必定的时间,具体时长取决于你的网速和硬件配置.
安装完成后,我们可以执行 gitbook -v 查看安装的版本信息.
5. gitbook 常用的命令
安装完成了后,我们就可以开始编写内容,进行电子书发布了.我这里给大家保举3种最常用的命令
gitbook init
gitbook help
gitbook --help
gitbook build
gitbook serve
gitbook build --gitbook=2.0.1
gitbook ls
gitbook ls-remote
gitbook fetch 标签/版本号
gitbook update
gitbook uninstall 2.0.1
gitbook build --log=debug
gitbook builid --debug
gitbook
C:UsersAllenIversonDesktopgitcourse>gitbook
Usage: gitbook [options] [command]
Commands:
ls List versions installed locally
current Display currently activated version
ls-remote List remote versions available for install
fetch [version] Download and install a <version>
alias [folder] [version] Set an alias named <version> pointing to <folder>
uninstall [version] Uninstall a version
update [tag] Update to the latest version of GitBook
help List commands for GitBook
* run a command with a specific gitbook version
Options:
-h,
-v,
-d,
-V,
gitbook serve
C:UsersAllenIversonDesktopgitbook-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 3 pages
info: found 0 asset files
info: >> generation finished with success in 1.9s !
Starting server ...
Serving book on http://localhost:4000
gitbook ls
C:UsersAllenIversonDesktopgitcourse>gitbook ls
GitBook Versions Installed:
* 3.2.2
Run "gitbook update" to update to the latest version.
gitbook ls-remote
C:UsersAllenIversonDesktopgitcourse>gitbook ls-remote
Available GitBook Versions:
4.0.0-alpha.5,4.0.0-alpha.4,4.0.0-alpha.3,4.0.0-alpha.2,4.0.0-alpha.1,3.2.2,3.2.1,3.2.0,3.2.0-pre.1,3.2.0-
pre.0,3.1.1,3.1.0,3.0.3,3.0.2,3.0.1,3.0.0,3.0.0-pre.15,3.0.0-pre.14,3.0.0-pre.13,3.0.0-pre.12,3.0.0-pre.11,3
.0.0-pre.10,3.0.0-pre.9,3.0.0-pre.8,3.0.0-pre.7,3.0.0-pre.6,3.0.0-pre.5,3.0.0-pre.4,3.0.0-pre.3,3.0.0-pre.2,3.0
.0-pre.1,2.6.7,2.6.6,2.6.5,2.6.4,2.6.3,2.6.2,2.6.1,2.6.0,2.5.2,2.5.1,2.5.0,2.5.0-beta.7,2.5.0-beta.6,2.5.0
-beta.5,2.5.0-beta.4,2.5.0-beta.3,2.5.0-beta.2,2.5.0-beta.1,2.4.3,2.4.2,2.4.1,2.4.0,2.3.3,2.3.2,2.3.1,2.3.0,2.2.0,2.1.0,2.0.4,2.0.3,2.0.2,2.0.1,2.0.0,2.0.0-beta.5,2.0.0-beta.4,2.0.0-beta.3,2.0.0-beta.2,2.0.0-beta.1,2.0.0-alpha.9,2.0.0-alpha.8,2.0.0-alpha.7,2.0.0-alpha.6,2.0.0-alpha.5,2.0.0-alpha.4,2.0.0-alpha.3,2.0.0-alpha.2,2.0.0-alpha.1
Tags:
latest : 3.2.2
pre : 4.0.0-alpha.5
gitbook -V
C:UsersAllenIversonDesktopgitcourse>gitbook -V
CLI version: 2.3.0
GitBook version: 3.2.2
gitbook pdf

C:UsersAllenIversonDesktopgitcourse>gitbook pdf
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 3 pages
info: found 0 asset files
EbookError: Error during ebook generation: 'ebook-convert' is not recognized as an internal or external command,operable program or batch file.
差错提示:ebook-convert不是内部或外部命令,原因是GitBook在生成PDF的过程中使用到calibre的转换功能,没有安装calibre或安装了calibre没有配置环境变量都会导致转换PDF失败
C:UsersAllenIversonDesktopgitcourse>gitbook pdf
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 3 pages
info: found 2 asset files
info: >> generation finished with success in 8.6s !
info: >> 1 file(s) generated
安装calibre后,转换成功.PS:安装calibre后必要重新启动命令行窗口
设置PDF输出格局
book.json
{
"gitbook": "2.x.x","title": "Go语言圣经","description": "<The Go Programming Language>中文版","language": "zh","structure": {
"readme": "preface.md"
},"pluginsConfig": {
"fontSettings": {
"theme": "white","family": "msyh","size": 2
},"plugins": [
"yahei","katex","-search"
]
},"pdf": {
"pageNumbers": true,"fontFamily": "Arial","fontSize": 12,"paperSize": "a4","margin": {
"right": 62,"left": 62,"top": 56,"bottom": 56
}
}
}
Variable |
Description |
pdf.pageNumbers |
是否添加页码,默认是true |
pdf.fontSize |
字体年夜小,默认是12 |
pdf.fontFamily |
字体,默认字体是Arial) |
pdf.paperSize |
Paper size,options are 'a0','a1','a2','a3','a4','a5','a6','b0','b1','b2','b3','b4','b5','b6','legal','letter' (default is a4 ) |
pdf.margin.top |
Top margin (default is 56 ) |
pdf.margin.bottom |
Bottom margin (default is 56 ) |
pdf.margin.right |
Right margin (default is 62 ) |
pdf.margin.left |
Left margin (default is 62 ) |
gitbook mobi
C:UsersAllenIversonDesktopgitcourse>gitbook mobi
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 32 pages
info: found 34 asset files
info: >> generation finished with success in 26.0s !
info: >> 1 file(s) generated
gitbook epub
C:UsersAllenIversonDesktopgitcourse>gitbook epub
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 32 pages
info: found 34 asset files
info: >> generation finished with success in 18.5s !
info: >> 1 file(s) generated
_baidu_page_break_tag_
6. calibre
下载地址

Fedora下安装Calibre
Ubuntu 14.04下安装电子书治理软件Calibre 1.34
Calibre 的详细先容:请点这里 Calibre 的下载地址:请点这里
ebook-convert
C:UsersAllenIversonDesktopgitcourse>ebook-convert
用法: ebook-convert.exe input_file output_file [options]
转换不同格式的电子书.
input_file 表示输入文件,output_file 表示输出文件.这两者作为命令行参数必须指定到最前面.
输出的电子书格式可由 output_file 的扩展名得到.同时 output_file 也可以是一种以 .EXT 为扩展名的特殊格式.在这种情况下,输出文件的名称则使用输入文件的名称.注意:文件名不能以连字号作为开头.如果 output_
file 不含扩展名,那么它将被视为一个目录并将会在该目录下生成 HTML 格式的“开放式电子书(OEB)”.这些文件会被视为正常文件而被输出插件所识别.
在指定输入和输出文件后,您可以自定义特定的转换选项.根据输入和输出文件的类型不同可用的转换选项也不同.如需获取针对输入和输出文件的赞助,请在命令行中输入 -h.
对于转换系统的完整文档请查阅
https://manual.calibre-ebook.com/conversion.html
给 ebook-convert.exe 传有空格的参数时,请将参数包括在引号中.例如 "C:some path with spaces"
选项:
-h,
Name.recipe" output.epub
ebook-convert –version
C:UsersAllenIversonDesktopgitcourse>ebook-convert --version
ebook-convert.exe (calibre 2.81.0)
Created by: Kovid Goyal kovid@kovidgoyal.net
使用



7. GitBook 编译,生成pdf报错
最近在使用 GitBook 生成静态网页和pdf文件时,百度,谷歌了很久也没有类似的办理方案,最近发现是版本问题,我把我的相关经验分享给大家!
在执行 gitbook build,gitbook serve,gitbook pdf等命令均坚持.报错了错误提示内容如下:
info: 10 plugins are installed
info: 9 explicitly listed
info: loading plugin "baidu"... OK
info: loading plugin "donate"... OK
info: loading plugin "sitemap"... 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 24 pages
info: found 2 asset files
warn: "options" property is deprecated,use config.get(key) instead
warn: "options.generator" property is deprecated,use "output.name" instead
error: error while generating page "README.md":
TypeError: this.contentPath is not a function
当然也有些网友的报错内容如下:
warn: "options" property is deprecated,use config.get(key) instead
warn: "page.progress" property is deprecated
warn: "sections" property is deprecated,use page.content instead
TypeError: Path must be a string. Received undefined
这种问题的原因是,gitbook的版本太低.年夜家执行 gitbook update 命令进行升级,升级到3.2.2版本即可.
也有网友反映,报一下的错:
Error: Couldn't locate plugins "baidu,donate",Run 'gitbook install' to install plugins from registry.
这是提示插件没有安装的差错.大家执行 gitbook install 命令完成安装即可

8.gitbook-convert
把docx、xml、html、odt文档转成GitBook
安装
$ npm install gitbook-convert -g
常用敕令

使用
$ gitbook-convert [options] <file> [export-directory]


9. 常用插件
Gitbook 自己功能丰富,但同时可以使用插件来进行个性化定制.Gitbook 插件 里已经有100多个插件,可以在 book.json 文件的 plugins 和 pluginsConfig 字段添加插件及相关配置,添加后别忘了进行安装.
{
"title": "Webpack 中文指南","description": "Webpack 是当下最热门的前端资源模块化管理和打包工具,本书大部分内容翻译自 Webpack 官网.","language": "zh","plugins": [
"disqus","github","editlink","prism","-highlight","baidu","splitter","sitemap"
],"pluginsConfig": {
"disqus": {
"shortName": "webpack-handbook"
},"github": {
"url": "https://github.com/zhaoda/webpack-handbook"
},"editlink": {
"base": "https://github.com/zhaoda/webpack-handbook/blob/master/content","label": "编纂本页"
},"baidu": {
"token": "a9787f0ab45d5e237bab522431d0a7ec"
},"sitemap": {
"hostname": "http://zhaoda.net/"
}
}
}
$ gitbook install ./
editlink
内容顶部显示 编纂本页 链接.
ad
在每个页面顶部和底部添加广告或任何自界说内容.
splitter
在左侧目录和右侧内容之间添加一个可以拖拽的栏,用来调整双方的宽度.
image-captions
抓取内容中图片的 alt 或 title 属性,在图片下面显示题目.
github
在右上角显示 github 仓库的图标链接.
anchors
题目带有 github 样式的锚点.
chart
使用 C3.js 图表.
styles-sass
使用 SASS 替换 CSS.
styles-less
使用 LESS 替换 CSS.
ga
添加 Google 统计代码.
添加 disqus 评论插件.
sitemap
天生站点地图.
latex-codecogs
使用数学方程式.
mermaid
使用流程图.
自动保留左侧目录区域导航条的位置.
sharing
默认的分享插件.
fontsettings
默认的字体、字号、色彩设置插件.
search
默认搜刮插件.
自界说页脚,显示版权和最后修订时间.
prism
基于 Prism 的代码高亮.
atoc
插入 TOC 目次.
ace
插入代码高亮编纂器.
highlight
默认的代码高亮插件,通常会使用 prism 来替换.
显示 github 仓库的 star 和 fork 按钮.
sectionx
分别各个段落,并提供一个展开收起的按钮.
mcqx
使用选择题.
include-codeblock
经由过程引用文件插入代码.
fbqx
使用填空题.
spoiler
暗藏答案,当鼠标划过时才显示.
anchor-navigation
锚点导航.
youtubex
插入 YouTube 视频.
redirect
页面跳转.
expandable-chapters
收起或展开章节目次中的父节点.
baidu
使用百度统计.
duoshuo
使用多说评论.
jsfiddle
插入 JSFiddle 组件.
jsbin
插入 JSBin 组件.
开发插件
最好先查看别人的插件是怎么做的,然后再看官方文档.
本文永远更新链接地址: 欢迎参与《LINUX教程:GitBook 使用入门教程》讨论,分享您的想法,编程之家PHP学院为您提供专业教程。 (编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|