Ubuntu環境下,快速開始使用gitbook
注意
安裝方式,請參考這篇「gitbook 2.0」,這篇的安裝方式是基於「gitbook 1.5.0」
測試環境
撰寫本文時,測試的環境是
- 「Xubuntu 14.04 64位元」
- 「nvm v0.23.2」
- 「nodejs v0.10.35」
- 「npm v1.4.28」
- 「gitbook 1.5.0」
前置作業
請先安裝「nodejs」,可以參考「Ubuntu環境下,如何安裝nvm以及nodejs」這篇的說明。
安裝 gitbook
使用「npm」來安裝「gitbook」。
1 | $ npm install gitbook -g |
查看「gitbook」的版本
1 | $ gitbook version |
或
1 | $ gitbook --version |
或
1 | $ gitbook -V |
顯示1
1.5.0
建立工作環境
先建立一本書的資料夾「~/Documents/mybook」,並且切換到該路徑
1 | $ mkdir ~/Documents/mybook -p |
建立「忽略設定檔」
建立「.gitignore」,請參考「ignoring-files–folders」這裡的說明。
這個步驟非必要。
1 | # https://github.com/github/gitignore/blob/master/GitBook.gitignore |
下載的「.gitignore」的內容如下
1 | # Node rules: |
建立「README.md」,「SUMMARY.md」這兩個檔案
1 | $ touch README.md SUMMARY.md |
啟動server
1 | $ gitbook serve |
會出現現面的訊息
1 | Press CTRL+C to quit ... |
觀看頁面
利用「Firefox」觀看本書首頁。
1 | $ firefox http://localhost:4000 |
更改首頁內容
1 | $ echo "# 書名 " > README.md |
因為有「Live reload」,所以首頁就會立即顯示剛剛的內容了。
初始化各章節
1 | $ vi SUMMARY.md |
把下面的內容寫到「SUMMARY.md」。
1 | # Summary |
然後執行下面的指令,就會把各章節的「原始檔」產生好。
1 | $ gitbook init |
觀看產生的「原始檔」
1 | $ tree content |
會看到下面的結構
1 | content |
編輯各章節的內容
1 | echo "# 第一章 " > 'content/chapter1/index.md' |
一樣基於Live reload,直接就可以在瀏覽器看到變化。
產生其他格式
在執行下面的指令前需要「ebook-convert」這個「工具」,是屬於「calibre」這個套件。
安裝「calibre」。
1 | $ sudo apt-get install calibre |
測試「ebook-convert」是否存在。
1 | $ ebook-convert --version |
「pdf」格式
1 | $ gitbook pdf |
「epub」格式
1 | $ gitbook epub |
「mobi」格式
1 | $ gitbook mobi |
分別會產生「book.pdf」 「book.epub」 「book.mobi」這三個檔
1 | $ ls book* |
會看到下面的訊息
1 | book.epub book.mobi book.pdf |
「gitbook」利用「ebook-convert」的相關原始碼,應該是「lib/generate/ebook/index.js」這個檔。
可以在「 exec(command, function (error, stdout, stderr) {」前,
加入「console.log(‘command: %s’, command);」來印出來「gitbook」如何下「ebook-convert」指令。
gitbook相關網址
參考文章
- https://wcc723.github.io/design/2014/09/04/gitbook-install/
- https://weijutu.blogspot.tw/2014/06/gitbook-gitbook.html
- https://blog.caesarchi.com/2014/05/gitbook.html
- https://www.codedata.com.tw/social-coding/gitbook-self-publishing/
- https://blog.lyhdev.com/2014/12/gitbook-plantuml-markdown-uml.html
- https://lee-w-blog.logdown.com/posts/252100-gitbook-on-command-line