配置

GitBook允许您使用灵活的配置来自定义您的书。这些选项在book.json文件中指定。对于不熟悉JSON语法的作者,您可以使用JSONlint之类的工具来验证语法。

常规设置

变量 说明
root 包含所有图书文件的根文件夹的路径,除了book.json
structure 指定自述,摘要,词汇表等的路径。请参见结构段落.
title 书的标题,默认值从README中提取。在GitBook.com上,此字段已预填。
description 您的图书说明,默认值从自述文件中提取。在GitBook.com上,此字段已预填。
author 作者姓名。在GitBook.com上,此字段已预填。
isbn 书的国际码ISBN
language 图书语言的ISO代码 ,默认值是en
direction 文本的方向。可以是rtlltr,默认值取决于language的值
gitbook GitBook的版本。使用SemVer规范并接受诸如“> = 3.0.0”的条件
其他属性设置
  • links: 在左侧导航栏添加链接信息

    {
    "links": {
      "sidebar": {
        "Home": "https://www.baidu.com"
      }
    }
    }
    
  • styles: 自定义页面样式, 默认情况下各generator对应的css文件

    {
    "styles": {
      "website": "styles/website.css",
      "ebook": "styles/ebook.css",
      "pdf": "styles/pdf.css",
      "mobi": "styles/mobi.css",
      "epub": "styles/epub.css"
    }
    }
    

    例如使<h1> <h2>标签有下边框, 可以在website.css中设置

    h1 , h2{ border-bottom: 1px solid #EFEAEA; }
    

结构体

除了root变量,你可以告诉Gitbook Readme,Summary,Glossary,Languages的文件名(而不是使用默认名称,如README.md)。 这些文件必须在您的书的根(或每个语言书的根)。不接受诸如dir/MY_README.md之类的路径。

变量 说明
structure.readme 自述文件名(默认为README.md
structure.summary 摘要文件名(默认为SUMMARY.md
structure.glossary 词汇表文件名(默认为GLOSSARY.md
structure.languages 语言文件名(默认为LANGS.md

PDF选项

PDF输出可以使用book.json中的一组选项来定制:

变量 说明
pdf.pageNumbers 在每页底部添加页码(默认为true
pdf.fontSize 基本字体大小(默认为12
pdf.fontFamily 基本字体系列(默认为Arial
pdf.paperSize 纸张尺寸,选项为 'a0', 'a1', 'a2', 'a3', 'a4', 'a5', 'a6', 'b0', 'b1', 'b2', 'b3', 'b4', 'b5', 'b6', 'legal', 'letter' (默认为 a4)
pdf.margin.top 上边距 (默认为 56)
pdf.margin.bottom 底边距 (默认为 56)
pdf.margin.right 右边距 (默认为 62)
pdf.margin.left 左边距 (默认为 62)

词汇表

您可以指定要显示为注释的术语及其相应的定义。 基于这些术语,GitBook在编译的时候会自动构建索引并在页面中突出显示这些术语。

GLOSSARY.md是一个h2标题的列表,以及一个描述段落:

## 条款
该术语的定义

## 另一个名词
使用它的定义,它可以包含粗体文本
以及所有其他类型的内联标记...

多种语言

GitBook支持多种语言编写的书籍或者文档。 首先需要在根目录创建一个名为LANGS.md的文件,然后按照语言创建子目录:

# Languages

* [中文](zh/)
* [English](en/)
* [French](fr/)
* [Español](es/)

每种语言的配置

每个语言(例如:en)目录中都可以有一个book.json来定义自己的配置,它将作为主配置的扩展。

唯一的例外是插件,插件是全局指定的,语言环境配置不能指定特定的插件。

Markdown语法

Markdown是GitBook的默认解析器,本文档基本上都是Markdown语法编写的。当然,你也可以选择AsciiDoc语法来编写文档。

AsciiDoc

从·2.0.0·版本开始,GitBook接受AsciiDoc语法文件作为输入格式。

有关格式的更多信息,请参阅AsciiDoc语法快速参考

跟markdown一样,GitBook可以从下的面文件来提取结构:README.adocSUMMARY.adocLANGS.adocGLOSSARY.adoc

插件

可以通过 Gitbook 的插件来扩展 Gitbook 的功能,现有的 Gitbook 插件能够实现数学公式,Google 统计,评论等等功能。

所有的插件都可以从 https://plugins.gitbook.com/ 获取。

变量 说明
plugins 要加载的插件列表
pluginsConfig 插件配置

安装插件

Gitbook 安装插件比较简单,需要在项目下添加 book.json 文件,然后在其中添加

{
    "plugins": ["plugins1", "plugins2"],
    "pluginsConfig": {
        "plugins1": {}
    }
}

注册完插件之后,可以通过下面的命令来安装插件

gitbook install

Gitbook默认自带5个插件

  • highlight:代码高亮,通常会使用 prism 来替换
  • search:导航栏查询功能(不支持中文),所以通常会使用 search-pro 来替换
  • sharing:右上角分享功能
  • font-settings:字体设置(最上方的"A"符号)
  • livereload:为GitBook实时重新加载

[!Tip] 可以在插件名称前面加 - 去除自带插件,例如常用去除自带搜索 "plugins": [ "-search" ]

常用的插件

下面列举一些常用的gitbook插件,至于怎么加上自己开发的插件,这里就不多说了,感兴趣的可以看这篇中文文档

用法:在book.json中添加以下内容。然后执行gitbook install,或者使用NPM安装(单独安装推荐NPM)npm install gitbook-plugin-插件名,也可以从源码GitHub地址中下载,放到node_modules文件夹里(GitHub地址在进入插件地址右侧的GitHub链接)

修改页面样式

功能增强

查看图片

数学插件 & Tex

[!note|label: MathJax 和 KaTeX 的区别] mathjaxkatex 插件是 Tex 公式绘制的不同实现,它们基于各自的开源库:KaTeXMathJax
MathJax 支持整个 Tex 语法,但是在制作电子书版本时不是很完美。 KaTex 在所有格式(网页和电子书)的绘制上都很完美,但是还不支持 所有的语法。

更多其他插件选择

book.json配置(直接用本书配置来说明)

{
  "title": "hqbook",
  "author": "Haoqiang Chen",
  "description": "平时零散编程笔记收录手册,以便日后查阅。",
  "keywords": "编程,markdown,笔记",
  "introduction": {
    "path": "README.md",
    "title": "hqbook"
  },
  "links": {
    "home": false,
    "about": false,
    "issues": false,
    "contribute": false,
    "tail": {
      "GitHub地址": "https://github.com/HaoqiangChen/hqbook"
    },
    "gitbook": false,
    "sharing": {
      "google": true,
      "facebook": true,
      "twitter": true,
      "weibo": true,
      "qrcode": true
    }
  },
  "variables": {
    "themeColor": "#3884ff",
    "themeHqbook": {
      "nav": [
        {
          "url": "https://www.baidu.com",
          "target": "_blank",
          "name": "百度一下"
        },
        {
          "url": "https://jsrun.net/",
          "target": "_blank",
          "name": "JSRUN"
        },
        {
          "url": "https://www.runoob.com/",
          "target": "_blank",
          "name": "菜鸟教程"
        },
        {
          "url": "https://www.atool99.com/",
          "target": "_blank",
          "name": "ATOOL在线工具"
        }
      ]
    }
  },
  "plugins": [
    "-highlight",
    "-lunr",
    "-search",
    "theme-hqbook",
    "chapter-fold",
    "flexible-alerts",
    "prism",
    "search-pro",
    "sitemap"
  ],
  "pluginsConfig": {
    "fontSettings": {
      "theme": "white",
      "family": "serif",
      "size": 1
    },
    "chapter-fold": {},
    "flexible-alerts": {
      "style": "flat",
      "note": {
        "label": "笔记"
      },
      "tip": {
        "label": "提示"
      },
      "warning": {
        "label": "警告",
        "icon": "fa fa-warning"
      },
      "danger": {
        "label": "注意",
        "icon": "fa fa-exclamation-triangle"
      }
    },
    "localized-footer": {
      "hline": true,
      "filename": "./FOOTER.md"
    },
    "prism": {
      "css": [
        "gitbook-plugin-theme-hqbook/_themes/prism-xonokai.css"
      ]
    },
    "styles": {
      "website": "styles/website.css"
    },
    "theme-hqbook": {
      "copyLines": false,
      "hide-elements": [
        ".summary .gitbook-link"
      ],
      "flexible-linkcard": {
        "title": "Converts blockquotes into beautiful linkcard, custom nice links",
        "hrefUrl": "https://github.com/HaoqiangChen/hqbook",
        "imgSrc": "../../images/home/logo.png"
      }
    },
    "sitemap": {
      "hostname": "https://haoqiangchen.github.io/hqbook/"
    }
  },
  "pdf": {
    "toc": true,
    "pageNumbers": true,
    "fontSize": 12,
    "paperSize": "a4",
    "margin": {
      "right": 62,
      "left": 62,
      "top": 36,
      "bottom": 36
    }
  }
}
Copyright © 京ICP备2021019819号-1 all right reserved,powered by Gitbook网站更新时间: 2025-02-20 10:07:38

results matching ""

    No results matching ""