序言
首先看下我們要實(shí)現(xiàn)的效果是怎么樣的。通過(guò)下面的圖片季眷,可以看到墓猎,左邊就是書籍目錄的導(dǎo)航欄,導(dǎo)航欄的上面還有全局搜索功能(每一個(gè)子目錄的內(nèi)容都可以搜到)邓线,內(nèi)容的顯示界面還可以選擇幾個(gè)閱讀風(fēng)格(A)淌友。個(gè)人覺(jué)得比電子書還方便,有興趣的可以玩一下骇陈。資料整理歸類的超方便震庭。
接下來(lái)要講的就是如何實(shí)現(xiàn)了,我這里用的gitbook你雌。也可以說(shuō)是gitbook的教程吧器联。
GitBook 是一個(gè)基于 Node.js 的命令行工具,可使用 Github/Git 和 Markdown 來(lái)制作精美的電子書婿崭,GitBook 并非關(guān)于 Git的教程拨拓。
1.安裝
1.1安裝npm
從網(wǎng)站 https://nodejs.org/#download 下載node.apk 安裝即可
// 檢查npm是否安裝成功
npm -v
// 檢查node是否存在
node -v
1.2安裝gitbook
// 安裝Gitbook命令(mac要用這個(gè)才能成功安裝)
sudo npm install -g gitbook-cli
// 檢查是否安裝成功
gitbook -v
-
注意事項(xiàng)
- 不能使用 npm install gitbook -g 命令安裝,因?yàn)槭褂妹頶itbook的時(shí)候會(huì)出現(xiàn)問(wèn)題氓栈。
- 安裝的命令前需要加入sudo,因?yàn)榭赡軙?huì)找不到npm的 /usr/local/bin/路徑渣磷。
- 使用gitbook -v命令檢查時(shí)可能會(huì)不出現(xiàn)版本號(hào),但其實(shí)是安裝好了授瘦。
2.使用
Gitbook的基本規(guī)則
Gitbook需要2個(gè)基本文件:
- README.md
- SUMMARY.md
README.md是關(guān)于你的書的介紹幸海,而SUMMARY.md中則包含了書目,即章節(jié)結(jié)構(gòu)奥务,它的格式如下:
* [第1章](c1.md)
* [第1節(jié)](c1s1.md)
* [第2節(jié)](c1s2.md)
* [第2章](c2.md)
* [第1節(jié)](c2s1.md)
* [第2節(jié)](c2s2.md)
2.1根據(jù)目錄生成圖書結(jié)構(gòu)
2.1.1 README.md 與 SUMMARY編寫
- README.md
這個(gè)文件相當(dāng)于一本Gitbook的簡(jiǎn)介物独。
//創(chuàng)建目錄/test_gitbook
mkdir test_gitbook
//新建文件README.md
touch README.md
- SUMMARY.md
這個(gè)文件是一本書的目錄結(jié)構(gòu),使用Markdown語(yǔ)法氯葬,如我們這本書的SUMMARY.md:
// 創(chuàng)建文件
touch SUMMARY.md
// 此命令為終端改寫文件(不方便)挡篓,建議直接用Markdown軟件直接編寫
vim SUMMARY.md
SUMMARY.md文件的編寫
輸入
* [簡(jiǎn)介](README.md)
* [第一章](chapter1/chapter1.md)
* [第一節(jié)](chapter1/section1.md)
* [第二節(jié)](chapter1/section2.md)
* [第二章](chapter2/chapter2.md)
* [第一節(jié)](chapter2/section1.md)
* [第二節(jié)](chapter2/section2.md)
* [結(jié)束](end/README.md)
2.2 生成圖書結(jié)構(gòu)
當(dāng)這個(gè)目錄文件創(chuàng)建好之后,我們可以使用Gitbook的命令行工具將這個(gè)目錄結(jié)構(gòu)生成相應(yīng)的目錄及文件:
gitbook init
// 查看建立的目錄和文件,此命令需要安裝 tree、 安裝tree的終端命令:brew install tree
tree
目錄如下:
.
├── chapter1
│ ├── chapter1.md
│ ├── section1.md
│ └── section2.md
├── chapter2
│ ├── chapter2.md
│ ├── section1.md
│ └── section2.md
├── end
│ └── README.md
├── README.md
└── SUMMARY.md
可以看到官研,gitbook生成了與SUMMARY.md所對(duì)應(yīng)的目錄及文件秽澳。
每個(gè)目錄中,都有一個(gè)README.md文件戏羽,相當(dāng)于一章的說(shuō)明担神。
生成圖書
2.2 輸出為靜態(tài)網(wǎng)站
2.2.1 本地預(yù)覽時(shí)自動(dòng)生成
編輯好圖書之后,使用Gitbook的命令行進(jìn)行本地預(yù)覽:
//該操作需在文件路徑下
gitbook serve
然后瀏覽器中輸入 http://localhost:4000 就可以預(yù)覽生成的以網(wǎng)頁(yè)形式組織的書籍始花。
同時(shí)圖書項(xiàng)目的目錄中多了_book的文件目錄妄讯,而這個(gè)目錄中的文件,即是生成的靜態(tài)網(wǎng)站內(nèi)容酷宵。(用這個(gè)命令生成的靜態(tài)網(wǎng)站亥贸,在沒(méi)有服務(wù)器的情況下,不能返回首頁(yè)浇垦,
如果想要_book的內(nèi)容在本地被訪問(wèn)炕置,可以使用以前的gitbook版本生成,我這里用的是2.6.7)
//用指定版本的gitbook生成
gitbook build --gitbook=2.6.7
使用build參數(shù)將文件生成到指定目錄:
//新建目錄
mkdir /tmp/gitbook
//輸出到制定目錄
gitbook build --output=/tmp/gitbook