简介

GitBook 是一个基于 Node.js 的命令行工具,可使用 Github/Git 和 Markdown 来制作精美的电子书。GitBook支持输出以下几种文档格式

静态站点:GitBook默认输出该种格式

PDF:需要安装gitbook-pdf依赖

eBook:需要安装ebook-convert

准备安装

在使用GitBook 之前, 我们需要先安装一些必须的工具:

  • Node.js
  • GitBook
  • GitBookEditor
  • Git版本控制器。

Node.js

Node.js是一个基于 Chrome V8 引擎JavaScript 运行环境。

  • Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型,使其轻量又高效。
  • Node.js 的包管理器 npm, 是全球最大的开源库生态系统。

Node.js 下载(windows)

Node.js中文网

检查是否安装成功

node -v

gitbook

//全局安装
npm install gitbook -g

gitbook-cli

//全局安装,你将有权访问系统上的任何地方的gitbook命令
npm install -g gitbook-cli

Git

Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。基本安装请点击安装教程。如果不需要从GitHub更新书到本地再编译,则可以不安装Git。

GitBookEditor

GitBook官方客户端编辑器,支持Win、Linux、Mac系统。请点击下载GitBookEditor。使用该编辑器可以快速的创建、编辑GitBook。

基本使用

GitBook 大致分为两种使用方式,即离线和在线。最简单的使用方式是使用GitBook Editor编辑GitBook ,然后使用相关命令编译成功HTML。当然还有以下几种方式

  • 使用命令创建基本GitBook
  • 使用网页在线编辑器创建、编辑GitBook。
  • 使用itBookEditor客户端创建、编辑GitBook。

高级扩展

掌握了“基本使用”,但有时候想要gitBook更美观,或者更符合我们自己的需求,则通过book.json配置进行自定义、以及安装一些常用的插件等。

本地项目构建

新建文件夹gitbook, 在文件夹下创建下面3个文件

  • README.md 关于文档,在 SUMMARY.md 进行配置
  • SUMMARY.md 文档目录
  • book.json 文档框架,最核心的文件

1.SUMMARY.md

文档的目录结构,所有需要展示的文档都需要在它里面进行罗列。

详细 GitBook 官方英文文档

# Summary
* [前言](README.md)

2.book.json

示例:

{
"root": "./",
"title": "示例文档",
"head_title": "_示例文档_字条网",
"head_description": "示例文档",
"head_keywords": "示例文档", "gitbook": ">= 3.0.0", "language": "zh-hans", "plugins": [
"-sharing",
"-fontsettings",
"-lunr",
"-search",
"search-pro",
"theme-official",
"sitemap-general"
], "pluginsConfig": {
"sitemap-general": {
"prefix": "http://zitiao.org/simple/"
}
}
}

安装依赖

在文件夹gitbook下运行:

//安装项目依赖
npm install //安装gitbook依赖
gitbook install //会安装所需的所有插件,当自动打印如下文字,代表安装成功:
info: >> plugin "sitemap-general" installed with success

编译文件

gitbook build

运行

gitbook serve

//当自动打印出如下文字,就代码运行成功:

Starting server ...
Serving book on http://localhost:4000

在浏览器里访问 http://localhost:4000 就能看到文档了!

修改端口号

gitbook serve --port 4002

现在访问 http://localhost:4002 就可以看到端口号变成4002了!

gitbook简单教程的更多相关文章

  1. gitbook 入门教程之从零到壹发布自己的插件

    什么是插件 Gitbook 插件是扩展 Gitbook 功能的最佳方式,如果 Gitbook 没有想要的功能或者说网络上也没有现成的解决方案时,那么只剩下自食其力这条道路,让我们一起来自力更生开发插件 ...

  2. Git和Github简单教程

    原文链接:Git和Github简单教程 网络上关于Git和GitHub的教程不少,但是这些教程有的命令太少不够用,有的命令太多,使得初期学习的时候需要额外花不少时间在一些当前用不到的命令上. 这篇文章 ...

  3. FusionCharts简单教程(三)-----如何自定义图表上的工具提示

    最近有蛮多人总是问我这个FusionCharts制表的问题,帮助他们解决之后,在昨晚发现以前整理的笔记中有这个简单教程,而且以前也发表了几篇这个博文,所以就将其全部上传上来供别人参考.如有不正确之处望 ...

  4. FusionCharts简单教程(八)-----使用网格组件

            有时候我们会觉得使用图像不够直接,对于数据的显示没有表格那样直接明了.所以这里就介绍如何使用网格组件.将网格与图像结合起来.网格组件能够将FusionCharts中的单序列数据以列表的 ...

  5. Qt Quick 简单教程

    上一篇<Qt Quick 之 Hello World 图文详解>我们已经分别在电脑和 Android 手机上运行了第一个 Qt Quick 示例—— HelloQtQuickApp ,这篇 ...

  6. Git和Github简单教程(收藏)

    原文链接:Git和Github简单教程 目录: 零.Git是什么 一.Git的主要功能:版本控制 二.概览 三.Git for Windows软件安装 四.本地Git的使用 五.Github与Git的 ...

  7. mysql安装简单教程(自动安装/配置安装)

    mysql安装简单教程(自动安装/配置安装) 1.1前言: 由于特殊原因,在最近2-3个月里mysql真是安装了无数遍,每次安装都要上网找教程,每个教程基本都不一样,因此还是自己写下来比较好,毕竟自己 ...

  8. gitbook 入门教程之使用 gitbook.com 在线开发电子书

    gitbook 官网是官方提供的图书托管的在线平台,分为新版官网(需要FQ) https://www.gitbook.com/ 和旧版官网(无需FQ) https://legacy.gitbook.c ...

  9. 平衡树简单教程及模板(splay, 替罪羊树, 非旋treap)

    原文链接https://www.cnblogs.com/zhouzhendong/p/Balanced-Binary-Tree.html 注意是简单教程,不是入门教程. splay 1. 旋转: 假设 ...

随机推荐

  1. java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost:3306/

    出现这个异常原因可能很多: 1.编码问题 2.没有加载类驱动:换一种数据库的连接方式,就忘了这个:Class.forName(driverclass); import java.io.IOExcept ...

  2. ab的压力测试(转)

    其中-n代表请求数,-c代表并发数 返回结果: ##首先是apache的版本信息 This is ApacheBench, Version 2.3 <Revision:655654> Co ...

  3. 吴裕雄 Bootstrap 前端框架开发——Bootstrap 排版:标题

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  4. Caffe2 创建你的专属数据集(Create Your Own Dataset)[9]

    这一节尝试把你的数据转换成caffe2能够使用的形式.这个教程使用Iris的数据集.你可以点击这里查看Ipython Notebook教程. DB数据格式 Caffe2使用二进制的DB格式来保存数据. ...

  5. The 2019 ICPC China Nanchang National Invitational and International Silk-Road Programming Contest - F.Sequence(打表+线段树)

    题意:给你一个长度为$n$的数组,定义函数$f(l,r)=a_{l} \oplus a_{l+1} \oplus...\oplus a_{r}$,$F(l,r)=f(l,l)\oplus f(l,l+ ...

  6. linux用户权限、系统信息相关命令(待学)

    用户权限相关命令 目标 用户 和 权限 的基本概念 用户管理 终端命令 组管理 终端命令 修改权限 终端命令 01.用户和权限的基本概念 1.1 基本概念 用户 是Linux系统工作中重要的一环, 用 ...

  7. 从七牛服务下载PDF文件

    /** * 从七牛下载PDF文件 * @param request * @param response * @param exhiId * @throws MalformedURLException ...

  8. java 获取web登录者的ip地址

    /** * 获取访问用户的客户端IP(适用于公网与局域网). */ public static final String getIpAddr(final HttpServletRequest requ ...

  9. 劫后余生--New Start

    被搁置的计划 It was the best of times,it was the worst of times,it was the age of wisidom,it was the age o ...

  10. package.json中一些配置项的含义

    {   "name": "webpack-demo",   "version": "1.0.0",   "de ...