# 官网(旧) - GitBook (Legacy)

新的访问不了时,可使用:
https://legacy.gitbook.com/
但原因其实是新官网加载太慢,让网页空置一下就出来了。

# API Documents

  • 官方API文档
    https://docs.gitbook.com/v2-changes/important-differences
  • 具体:
    https://chrisniael.gitbooks.io/gitbook-documentation/content/
  • 其他:
    https://chrisniael.gitbooks.io/gitbook-documentation/content/format/configuration.html
    http://www.chengweiyang.cn/gitbook/customize/book.json.html

# 教程

# Gitbook个人不错的使用教程

https://skyao.gitbooks.io/learning-gitbook/content/creation/multiple_lang.html
https://www.imooc.com/article/22889

# 安装

# 安装gitbook-cli客户端

npm install gitbook-cli -g

# 基础

# 查看gitbook版本,并安装gitbook

gitbook -V
输出结果:

CLI version: 2.3.2  
GitBook version: 3.2.3  

# 语法

# 块用法:/>


标签需正常闭合。

# 多层目录:

# javascript

  • # ECMAscript
    • ES6特性
    • ES7特性
    • ES8特性
    • ES9特性

# 段首开头:

写法:(错误)
大幅度发到付 写法:(正确)
大幅度发到付

# 正确的字体样式:

(正确)

# 错误的字体样式:

(错误)

  • [优化点]

  • [安全点]

# 序号加粗

1.

# 加圈的序号

1

# 插件

# Gitbook默认自带有5个插件:

highlight: 代码高亮
search: 导航栏查询功能(不支持中文)
sharing:右上角分享功能
font-settings:字体设置(最上方的"A"符号)
livereload:为GitBook实时重新加载

# gitbook插件

logo: "insert-logo"
高级搜索(支持中文): "search-pro"
代码复制按钮: "copy-code-button"
导航目录折叠: "expandable-chapters"
导航目录展开: "expandable-chapters"
导航目录折叠: "chapter-fold"
回到顶部: "back-to-top-button"
在右上角添加github图标: "github"
分享当前页面: "sharing-plus"
页面添加页脚: "tbfed-pagefooter"
打赏: "donate"
自动生成目录树:"atoc"
根据文件夹自动生成SUMMARY.md文件: "summary"
菜单可以折叠: "toggle-chapters"
主题插件, 修改标题和表格颜色: "theme-comscore"
侧边栏宽度可调节: "splitter"
参考:
http://gitbook.zhangjikai.com/plugins.html

# atoc

  • 用法:
    book.json
  "plugins": [  
    "atoc"  
  ],  
  "pluginsConfig": {  
    "atoc": {  
      "addClass": true,  
      "className": "atoc"  
    }  
  }  

需要生成目录树的文件:

<!-- toc -->  
所有内容  
<!-- endtoc -->  

# theme-comscore

改变文章里标题的字体颜色

# theme-default

给文章里标题自动添加序号
具体如:
"theme-default": {
"showLevel": true
},

# chapter-fold

使用方式:
在book.json中写入以下内容
{
"plugins": ["chapter-fold"]
}
https://segmentfault.com/a/1190000019473512?utm_source=tag-newest

# 多个折叠目录插件

chapter-fold
expandable-chapters-small
Toggle Chapters
expandable-chapters
https://www.jianshu.com/p/427b8bb066e6
默认展开:
expandable-chapters
默认折叠:
chapter-fold
想要展开,最佳的组合是:
https://segmentfault.com/a/1190000019806829?utm_source=tag-newest

# popup弹出大图

https://www.jianshu.com/p/427b8bb066e6

# custom-favicon 修改标题栏图标

https://www.jianshu.com/p/427b8bb066e6

# 案例

https://xiaohuochai.site/utils/helper/gitbook.html

  • 写得好的作品
    https://docs.cocos.com/creator/manual/zh/getting-started/
    https://mta.qq.com/docs/?q=
  • 阮一峰的EcmaScript6文档
    也是gitbook写成的。
    + 网址
    http://es6.ruanyifeng.com/#docs/set-map#Map
    + github
    https://github.com/ruanyf/es6tutorial
  • 用例:
    https://docs.gitbook.com/account
    https://www.jianshu.com/p/421cc442f06c

# gh-pages

# 结合 GitHub Pages 使用 GitBook

https://www.jianshu.com/p/3d03ab330df5
一键发布
https://blog.csdn.net/simplehouse/article/details/78766513
发布组件-gh-pages
https://github.com/tschaub/gh-pages

# 问题

# Error: ENOENT: no such file or directory, open '_book/index.html'

  • 描述:
warn: "options" property is deprecated, use config.get(key) instead  
warn: "options.generator" property is deprecated, use "output.name" instead  
use simple mode:  true  

Error: ENOENT: no such file or directory, open '_book/index.html'  
  • 解决方法:
    gitbook update
    tnpm run book-install

# Error loading version latest: Error: Cannot find module 'internal/util/types'

原因:
这个问题原因在于graceful-fs引入了node模块internal/util/types,此模块用处是给vm引入内置js文件,具体作用不可知也不想去考究了,重点在于此法已被废除,只有低版本nodejs和npm可用,但是强行降低node版本有点削足适履的意思,这种天怒人怨的低级bug,graceful-fs开发团队应该早就修复了才对,为什么还会出现报错,去gitbook的git仓库看了一下版本更迭,gitbook-cli默认的版本是2.6.9,最新的版本3.2.2,推测是旧版本没有使用最新版本的graceful-fs导致的问题,果然。。更新之后即可正常运行
参考:
https://www.zhihu.com/question/270284604/answer/766617038
解决:
gitbook fetch 3.2.2

# gitbook Error: EPERM: operation not permitted, open

原因:
不是这台机器创建的文件,由git工具拉取下来的新文件。
在windows中,创建的用户不一样,权限不一,导致部分文件没权限,最终热加载失败
解决办法:
赋予当前用户的读写权限
使用git-bash

chown -R 用户名 赋权文件夹/文件  

# Error: ENOENT: no such file or directory, stat 'E:\kaifa\My\Git\MyGitBook_book\gitbook\gitbook-plugin-fontsettings\fontsettings.js'

  • 方法一
    切换低版本的就行了,并且用Node V6
    在book.js中加入(使用3.0.0以下的版本)
    推荐是:2.6.7~2.6.4
gitbook fetch 2.6.7  
  • 方法二
    在book目录下,如下代码新建book.json
{  
        "plugins": [  
                "fontsettings",  
                "sharing",  
                "lunr",  
                "search",  
                "highlight",  
                "livereload"  
        ]  
}  

保存文件后,运行gitbook install安装插件依赖
重新执行gitbook build或gitbook serve

  • 方法二
gitbook serve .   

参考:
https://segmentfault.com/q/1010000009569245

# windows 系统 GitBook生成PDF、epub报错Error during ebook generation: 'ebook-convert' 乱码

解决:
https://www.cnblogs.com/gobyte/p/10953081.html

# gitbook导出的pdf不显示图片

解决:
把图片放到文件的当前文件夹里,用./引入

# gitbook serve 在window热加载失败的解决办法:

(1)修改文件:C:\Users\tobeyang.gitbook\versions\3.2.2\lib\cli\serve.js
(家里电脑的路径)C:\Users\ASUS.gitbook\versions\3.2.3\lib\cli\serve.js Image Text
Image Text
实现:第一次启动成功后,删除_book文件夹 解决:重新编译,权限不通过。 增加代码:

var process = require('child_process');
var isFirst = true;
if(isFirst){
    process.exec('rm -rf _book', function(err){ //当成功时,error是null
        if(err === null){
            console.log('delete folder _book success!');
        }else{
            console.log('delete folder _book fail!Because: ' + err);
        }
        isFirst = null;
    });
}

增加异常捕获 Image Text
Image Text
解决:新增文件时,编译权限不通过 增加代码:

.catch(function(error1){
    console.log(error1);
});
.catch(function(error2){
    console.log(error2);
});

(2)修改文件:C:\Users\tobeyang.gitbook\versions\3.2.2\lib\output\website\copyPluginAssets.js
(家里电脑的路径)C:\Users\ASUS.gitbook\versions\3.2.3\lib\output\website\copyPluginAssets.js Image Text
将 confirm: true 改为 confirm: false
解决:复制粘贴内容,实现热加载
(3)md文件不能为空,否则编译失败。

# [Error: EPERM: operation not permitted, open 'f:\My\GitBook\my-gitbook_book\LIFE\VPN\README.md'] {

errno: -4048, code: 'EPERM', syscall: 'open', path: 'f:\My\GitBook\my-gitbook\_book\LIFE\VPN\README.md' } 解决办法: md文件不能为空,既可解决!

# 去掉或者隐藏“Published with Gitbook”/“本书使用 GitBook 发布”

https://www.itsvse.com/thread-5819-1-1.html

# 类似框架

# hexo

# 主题配置

# 本地重新编译&启动

hexo g
hexo s

# 发布步骤:

hexo clean //清理服务器缓存
hexo g -d //生成+部署

# 教程

# 博客-hexo搭建教程

https://blog.csdn.net/grave2015/article/details/79961843

# gh-pages部署hexo

https://www.jianshu.com/p/986b975a29ae

# Github Pages(三):使用Hexo博客生成工具

https://hans2936.github.io/2018/06/06/HexoLog/

Last Updated: 11/29/2019, 12:12:18 AM