GitBook簡介
GitBook 是使用 GitHub / Git 和 Markdown(或AsciiDoc)構建漂亮書籍的命令行工具(和Node.js庫);
GitBook 可以將您的內容作為網站(可定制和可擴展)或電子書(PDF,ePub或Mobi)輸出;
GitBook.com 是使用 GitBook 格式創建和托管圖書的在線平台。它提供托管,協作功能和易於使用的編輯器。
GitBook環境安裝(需要安裝NodeJS環境)
NodeJS安裝:
官方下載地址:https://nodejs.org/en/download/
windows下:
直接下載.msi安裝包依照向導安裝即可,安裝完成后在命令行中查看版本驗證成功與否。
Linux下:
$ wget https://nodejs.org/dist/v10.9.0/node-v10.9.0-linux-x64.tar.xz // 下載 $ tar xf node-v10.9.0-linux-x64.tar.xz // 解壓 $ cd node-v10.9.0-linux-x64/ // 進入解壓目錄 $ ./bin/node -v // 執行node命令 查看版本 v10.9.0
解壓文件的 bin 目錄底下包含了 node、npm 等命令,我們可以使用 ln 命令來設置軟連接:
$ ln -s /usr/software/nodejs/bin/npm /usr/local/bin/ $ ln -s /usr/software/nodejs/bin/node /usr/local/bin/
GitBook安裝:
Gitbook是使用NPM來進行安裝的,可以在命令行中輸入下面的命令進行安裝:
$ npm install gitbook-cli -g
gitbook-cli
是 GitBook 的一個命令行工具。它將自動安裝所需版本的 GitBook 來構建一本書,
安裝完成之后,你可以使用下面的命令來檢驗是否安裝成功。
$ gitbook -V CLI version: 2.3.2 GitBook version: 3.2.3
Gitbook命令行使用
初始化一本書:
gitbook init
在使用 gitbook init
之后本地會生成兩個文件 README.md
和 SUMMARY.md
,這兩個文件都是必須的,一個為介紹,一個為目錄結構。
編輯電子書:
首先,GitBook使用SUMMARY.md文件組織整個內容的目錄,比如可以新建 Faq.md
文件,來記錄常見問題,並在 SUMMARY.md 文件中添加目錄。
# Summary * [簡介](README.md) * [常見問題](Faq.md)
安裝插件:
在book.json文件下配置插件后,執行命令統一安裝。
gitbook install
本地預覽:
當內容書寫完畢后,可以在終端中輸入如下命令,實現實時預覽。
gitbook serve
gitbook serve ./{book_name}
gitbook serve
命令實際會先調用 gitbook build
編譯書籍,完成后打開 web 服務器,默認監聽本地 4000 端口,在瀏覽器打開 http://localhost:4000 即可瀏覽電子書。
發布電子書:
gitbook build gitbook build ./{book_name} --output=./{outputFolde} gitbook build ./ --log=debug --debug
當電子書內容制作好之后,可以使用如下命令來生成 HTML 靜態網頁版電子書。該命令會在當前文件夾中生成 _book
文件夾,這個文件夾中的內容就是靜態網頁版電子書。
使用 --log=debug --debug
可以用來調試,會打印出 stack trace。
查看幫助:
gitbook -h
GitBook項目結構
一個基本的 GitBook 電子書結構通常如下:
. ├── book.json ├── README.md ├── SUMMARY.md ├── chapter-1/ | ├── README.md | └── something.md └── chapter-2/ ├── README.md └── something.md
簡單的介紹下每個文件的作用:
book.json: 記錄電子書的配置 (可選)
README.md: 前言 或者 電子書的介紹 (必須)
SUMMARY.md: 電子書的目錄 (可選)
GLOSSARY.md: 術語表 (可選)
使用語法
在Gitbook中所有文字的編寫都使用Markdown
語法。
README.md:
這個文件相對於是一本Gitbook的簡介,比如 :
# Gitbook 使用入門
> GitBook 是一個基於 Node.js 的命令行工具,可使用 Github/Git 和 Markdown 來制作精美的電子書。
SUMMARY.md:
這個文件相對於是一本書的目錄結構,比如 :
* [介紹](README.md) * [基本安裝](installation/README.md) * [Node.js安裝](installation/nodejs-install.md) * [Gitbook安裝](installation/gitbook-install.md) * [Gitbook命令行速覽](installation/gitbook-cli.md) * [圖書項目結構](book/README.md) * [README.md 與 SUMMARY編寫](book/file.md) * [目錄初始化](book/prjinit.md) * [圖書輸出](output/README.md) * [輸出為靜態網站](output/static.md) * [輸出PDF](output/pdfandebook.md) * [發布](publish/README.md) * [發布到Github Pages](publish/gitpages.md) * [發布到公司文檔服務器](publish/companyserver.md) * [結束](end/README.md)
book.json:
這個文件保存對Gitbook的配置。
變量 | 描述 |
root | 包含所有圖書文件的根文件夾的路徑,除了 book.json |
structure | 指定自述文件,摘要,詞匯表等的路徑 |
title | 您的書名,默認值是從 README 中提取出來的。在 GitBook.com 上,這個字段是預填的 |
description | 您的書籍的描述,默認值是從 README 中提取出來的。在 GitBook.com 上,這個字段是預填的 |
author | 作者名。在GitBook.com上,這個字段是預填的 |
isbn | 國際標准書號 ISBN |
language | 本書的語言類型 —— ISO code 。默認值是 en |
direction | 文本閱讀順序。可以是 rtl (從右向左)或 ltr (從左向右),默認值依賴於 language 的值 |
gitbook | 應該使用的GitBook版本。使用 SemVer 規范,並接受類似於 “> = 3.0.0” 的條件 |
插件與主題:
插件及其配置也在 book.json
中指定。有關詳細信息。
自 3.0.0 版本開始,GitBook 可以使用主題。有關詳細信息,請參閱 the theming section 。