GitBook windows
GitBook 是一个基于 Node.js 的命令行工具,可使用 Github/Git 和 Markdown 来制作精美的电子书。
一、官网下载nodejs直接安装
传送门,安装完成后如下:
GitBook是基于Nodejs,使用Git/Github和Markdown制作电子书的命令行工具。
1、安装Nodejs
首先,安装Nodejs,官网地址:https://nodejs.org/en/
安装完成后输入命令node -v检测是否安装成功
可以看到npm也安装了,此时可以在cmd控制台进行验证(win+r),输入cmd进入控制台:
C:\pc>node -v v8.11.1 C:\pc>npm -v 5.6.0
二、安装gitbook
在cmd控制台输入如下命令进行安装:
C:\pc>npm install gitbook-cli -g
npm WARN notice [SECURITY] lodash has the following vulnerability: 1 low. Go here for more details: https://nodesecurity.io/advisories?search=lodash&version=4.17.4 - Run `npm i npm@latest -g` to upgrade your npm version, and then `npm audit` to get more info.
C:\pc\AppData\Roaming\npm\gitbook -> C:\pc\AppData\Roaming\npm\node_modules\gitbook-cli\bin\gitbook.js
+ gitbook-cli@2.3.2
added 578 packages in 134.873s
查看安装的版本:
C:\pc>gitbook -V CLI version: 2.3.2 GitBook version: 3.2.3
2、安装全局Gitbook
在Nodejs安装目录下打开命令控制台,输入npm install gitbook-cli -g
由于安装默认采用国外镜像,所以需要等待一段时间。也可以使用国内镜像
在当前用户目录下有一个.cnpmrc文件,加入以下配置信息:
registry=http://registry.npm.taobao.org
3、初始化
在任意文件夹下执行命令gitbook init,最终会生成README.md、SUMMARY.md两个文件。主要目录需要在SUMMARY.md文件中配置。
4、构建
执行命令gitbook build,会生成_book文件夹
5、启动
执行命令gitbook serve(也会执行构建工作),然后可以通过浏览器输入http://localhost:4000访问电子书目录
三、安装gitbook editor windows版
备用下载链接:https://pan.baidu.com/s/1nX6FRtyzvdNXj8ijaVIfng 提取码:3b7w
直接运行.exe文件,如图:
此时可点击Do This Later进入
点击进入编辑即可:
之后保存即可
四、测试
cmd控制台进入所建的电子书目录下:
输入:gitbook init 进行初始化
e:\Gitbook\2019\Import\test>gitbook init Installing GitBook 3.2.3 gitbook@3.2.3 C:\Users\FUJIAN~2\AppData\Local\Temp\tmp-186002ka7aHl7tyHD\node_modules\gitbook ├── escape-html@1.0.3 ├── destroy@1.0.4 ├── escape-string-regexp@1.0.5 ├── ignore@3.1.2 ├── bash-color@0.0.4 ├── gitbook-plugin-livereload@0.0.1 ├── cp@0.2.0 ├── github-slugid@1.0.1 ├── graceful-fs@4.1.4 ├── nunjucks-do@1.0.0 ├── q@1.4.1 ├── spawn-cmd@0.0.2 ├── gitbook-plugin-fontsettings@2.0.0 ├── open@0.0.5 ├── is@3.3.0 ├── direction@0.1.5 ├── object-path@0.9.2 ├── extend@3.0.2 ├── gitbook-plugin-search@2.2.1 ├── json-schema-defaults@0.1.1 ├── jsonschema@1.1.0 ├── crc@3.4.0 ├── urijs@1.18.0 ├── semver@5.1.0 ├── front-matter@2.3.0 ├── immutable@3.8.2 ├── dom-serializer@0.1.0 (domelementtype@1.1.3, entities@1.1.2) ├── error@7.0.2 (string-template@0.2.1, xtend@4.0.1) ├── tmp@0.0.28 (os-tmpdir@1.0.2) ├── npmi@2.0.1 (semver@4.3.6) ├── omit-keys@0.1.0 (array-difference@0.0.1, isobject@0.2.0) ├── send@0.13.2 (fresh@0.3.0, etag@1.7.0, statuses@1.2.1, range-parser@1.0.3, ms@0.7.1, depd@1.1.2, debug@2.2.0, mime@1.3.4, http-errors@1.3.1, on-finished@2.3.0) ├── mkdirp@0.5.1 (minimist@0.0.8) ├── resolve@1.1.7 ├── rmdir@1.2.0 (node.flow@1.2.3) ├── fresh-require@1.0.3 (is-require@0.0.1, shallow-copy@0.0.1, sleuth@0.1.1, astw@1.3.0, through2@0.6.5, acorn@0.9.0, escodegen@1.11.0) ├── js-yaml@3.12.1 (esprima@4.0.1, argparse@1.0.10) ├── gitbook-plugin-theme-default@1.0.7 ├── cpr@1.1.1 (rimraf@2.4.5) ├── tiny-lr@0.2.1 (parseurl@1.3.2, livereload-js@2.4.0, qs@5.1.0, debug@2.2.0, body-parser@1.14.2, faye-websocket@0.10.0) ├── read-installed@4.0.3 (debuglog@1.0.1, util-extend@1.0.3, slide@1.1.6, readdir-scoped-modules@1.0.2, read-package-json@2.0.13) ├── gitbook-plugin-lunr@1.2.0 (html-entities@1.2.0, lunr@0.5.12) ├── chokidar@1.5.0 (path-is-absolute@1.0.1, async-each@1.0.1, inherits@2.0.3, glob-parent@2.0.0, is-glob@2.0.1, is-binary-path@1.0.1, anymatch@1.3.2, readdirp@2.2.1) ├── nunjucks@2.5.2 (asap@2.0.6, yargs@3.32.0, chokidar@1.7.0) ├── gitbook-plugin-highlight@2.0.2 (highlight.js@9.2.0) ├── moment@2.13.0 ├── gitbook-plugin-sharing@1.0.2 (lodash@3.10.1) ├── gitbook-markdown@1.3.2 (kramed-text-renderer@0.2.1, gitbook-html@1.3.3, kramed@0.5.6, lodash@4.17.11) ├── i18n-t@1.0.1 (lodash@4.17.11) ├── cheerio@0.20.0 (entities@1.1.2, css-select@1.2.0, htmlparser2@3.8.3, jsdom@7.2.2, lodash@4.17.11) ├── juice@2.0.0 (slick@1.12.2, deep-extend@0.4.2, batch@0.5.3, cssom@0.3.1, commander@2.9.0, cross-spawn-async@2.2.5, web-resource-inliner@2.0.0) ├── gitbook-asciidoc@1.2.2 (gitbook-html@1.3.3, asciidoctor.js@1.5.5-1, lodash@4.17.11) ├── request@2.72.0 (tunnel-agent@0.4.3, aws-sign2@0.6.0, forever-agent@0.6.1, oauth-sign@0.8.2, is-typedarray@1.0.0, caseless@0.11.0, stringstream@0.0.6, aws4@1.8.0, isstream@0.1.2, json-stringify-safe@5.0.1, tough-cookie@2.2.2, qs@6.1.2, node-uuid@1.4.8, combined-stream@1.0.7, mime-types@2.1.21, bl@1.1.2, hawk@3.1.3, http-signature@1.1.1, har-validator@2.0.6, form-data@1.0.1) └── npm@3.9.2 info: create SUMMARY.md info: initialization is finished
输入:gitbook serve 启动查看服务
e:\Gitbook\2019\Import\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 1 asset files info: >> generation finished with success in 1.2s ! Starting server ... Serving book on http://localhost:4000
浏览器访问:http://localhost:4000
之后就可以尽情的编辑了
五、问题
1、生成的静态文件无法跳转
解决方法:修改js文件,参照
- 找到项目目录
gitbook
- 找到目录下的
theme.js
文件 - 将
if(m)
改成if(false)
提示:定位代码位置直接搜索:if(m)for(n.handler&&