首頁 > 軟體

GitBook 使用入門教學

2020-06-16 17:13:32

各大站長平時除了寫部落格外,可以使用 GitBook 將一系列的部落格專欄整理成電子書出版。這樣既方便各大網友閱讀,還可以帶來新的離線閱讀功能。

在以前我們只能靠出版社,或者編寫 word 文件,來實現。然而有了 gitbook 之後,一切都變得那麼簡單了。今天就為大家分享一下,如何在 Windows 系統上安裝 gitbook,進行電子書的編寫和發布。

1. GitBook Editor

最簡單的方式就是使用GitBook編輯器,沒有什麼難度,後面的教學主要針對命令列的方式

PS:GitBook的book頁面預設沒有download按鈕的

需要到設定中開啟,開啟後再次publish生效

同步GitHub

更新失敗,無法轉換成pdf/mobi/epub格式

Token

git config --global gitbook.user username
git config --global gitbook.token yourtoken

2. 安裝 nodejs

首先我們需要做的是安裝 Nodejs。大家可以到 Nodejs 的官網進行下載。下載完成後,執行雙擊進行執行安裝。安裝完成後,開啟 cmd 命令列,輸入 node -v 檢視安裝的 nodejs 的相關版本資訊。

也可以在安裝目錄中找到 node.exe 檔案,開啟輸入 node -v 檢視安裝的 nodejs 的相關版本資訊。

3. nodejs 映象設定

nodejs 安裝完成後,我們就可以開始安裝 gitbook 了。但是在安裝之前,我們還需要設定一下 nodejs 外掛安裝的下載映象地址。因為預設的映象地址是在國外,需要翻牆才可以存取,因此我們需要設定國內的映象地址。國內的我推薦大家使用阿里巴巴的映象地址 http://registry.npm.taobao.org 。執行下面的命令,進行設定。

npm config set registry http://registry.npm.taobao.org

除了上面的方法外,我們也可以在使用者主目錄下編輯 .npmrc 檔案,新增一行 registry=http://registry.npm.taobao.org 儲存就可以了。使用者的主目錄一般在 C:UsersAdministrator ,具體隨你的作業系統系統磁碟而定。

4. 全域性安裝 gitbook

現在我們可以開始安裝全域性的 gitbook 了。執行 npm install gitbook-cli -g 命令,進行安裝。安裝的過程中,由於需要下載安裝包,因此大家需要等待一定的時間,具體時長取決於你的網速和硬體設定。

安裝完成後,我們可以執行 gitbook -v 檢視安裝的版本資訊。

5. gitbook 常用的命令

安裝完成了後,我們就可以開始編寫內容,進行電子書發布了。我這裡給大家推薦3種最常用的命令

gitbook init //初始化目錄檔案
gitbook help //列出gitbook所有的命令
gitbook --help //輸出gitbook-cli的幫助資訊
gitbook build //生成靜態網頁
gitbook serve //生成靜態網頁並執行伺服器
gitbook build --gitbook=2.0.1 //生成時指定gitbook的版本, 本地沒有會先下載
gitbook ls //列出本地所有的gitbook版本
gitbook ls-remote //列出遠端可用的gitbook版本
gitbook fetch 標籤/版本號 //安裝對應的gitbook版本
gitbook update //更新到gitbook的最新版本
gitbook uninstall 2.0.1 //解除安裝對應的gitbook版本
gitbook build --log=debug //指定log的級別
gitbook builid --debug //輸出錯誤資訊

gitbook

C:UsersAllenIversonDesktopgitcourse>gitbook
 Usage: gitbook [options] [command]


 Commands:

   ls                        List versions installed locally
   current                   Display currently activated version
   ls-remote                 List remote versions available for install
   fetch [version]           Download and install a <version>
   alias [folder] [version]  Set an alias named <version> pointing to <folder>
   uninstall [version]       Uninstall a version
   update [tag]              Update to the latest version of GitBook
   help                      List commands for GitBook
   *                         run a command with a specific gitbook version

 Options:

   -h, --help               output usage information
   -v, --gitbook [version]  specify GitBook version to use
   -d, --debug              enable verbose error
   -V, --version            Display running versions of gitbook and gitbook-cli

gitbook serve

C:UsersAllenIversonDesktopgitbook-test>gitbook serve
Live reload server started on port: 35729
Press CTRL+C to quit ...

info: 7 plugins are installed
info: loading plugin "livereload"... OK
info: loading plugin "highlight"... OK
info: loading plugin "search"... OK
info: loading plugin "lunr"... OK
info: loading plugin "sharing"... OK
info: loading plugin "fontsettings"... OK
info: loading plugin "theme-default"... OK
info: found 3 pages
info: found 0 asset files
info: >> generation finished with success in 1.9s !

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

gitbook ls

C:UsersAllenIversonDesktopgitcourse>gitbook ls
GitBook Versions Installed:

    * 3.2.2

Run "gitbook update" to update to the latest version.

gitbook ls-remote

C:UsersAllenIversonDesktopgitcourse>gitbook ls-remote
Available GitBook Versions:

     4.0.0-alpha.5, 4.0.0-alpha.4, 4.0.0-alpha.3, 4.0.0-alpha.2, 4.0.0-alpha.1, 3.2.2, 3.2.1, 3.2.0, 3.2.0-pre.1, 3.2.0-
pre.0, 3.1.1, 3.1.0, 3.0.3, 3.0.2, 3.0.1, 3.0.0, 3.0.0-pre.15, 3.0.0-pre.14, 3.0.0-pre.13, 3.0.0-pre.12, 3.0.0-pre.11, 3
.0.0-pre.10, 3.0.0-pre.9, 3.0.0-pre.8, 3.0.0-pre.7, 3.0.0-pre.6, 3.0.0-pre.5, 3.0.0-pre.4, 3.0.0-pre.3, 3.0.0-pre.2, 3.0
.0-pre.1, 2.6.7, 2.6.6, 2.6.5, 2.6.4, 2.6.3, 2.6.2, 2.6.1, 2.6.0, 2.5.2, 2.5.1, 2.5.0, 2.5.0-beta.7, 2.5.0-beta.6, 2.5.0
-beta.5, 2.5.0-beta.4, 2.5.0-beta.3, 2.5.0-beta.2, 2.5.0-beta.1, 2.4.3, 2.4.2, 2.4.1, 2.4.0, 2.3.3, 2.3.2, 2.3.1, 2.3.0,
 2.2.0, 2.1.0, 2.0.4, 2.0.3, 2.0.2, 2.0.1, 2.0.0, 2.0.0-beta.5, 2.0.0-beta.4, 2.0.0-beta.3, 2.0.0-beta.2, 2.0.0-beta.1,
2.0.0-alpha.9, 2.0.0-alpha.8, 2.0.0-alpha.7, 2.0.0-alpha.6, 2.0.0-alpha.5, 2.0.0-alpha.4, 2.0.0-alpha.3, 2.0.0-alpha.2,
2.0.0-alpha.1

Tags:

     latest : 3.2.2
     pre : 4.0.0-alpha.5

gitbook -V

C:UsersAllenIversonDesktopgitcourse>gitbook -V
CLI version: 2.3.0
GitBook version: 3.2.2

gitbook pdf

C:UsersAllenIversonDesktopgitcourse>gitbook pdf
info: 7 plugins are installed
info: 6 explicitly listed
info: loading plugin "highlight"... OK
info: loading plugin "search"... OK
info: loading plugin "lunr"... OK
info: loading plugin "sharing"... OK
info: loading plugin "fontsettings"... OK
info: loading plugin "theme-default"... OK
info: found 3 pages
info: found 0 asset files

EbookError: Error during ebook generation: 'ebook-convert' is not recognized as an internal or external command,
operable program or batch file.

錯誤提示:ebook-convert不是內部或外部命令,原因是GitBook在生成PDF的過程中使用到calibre的轉換功能,沒有安裝calibre或安裝了calibre沒有設定環境變數都會導致轉換PDF失敗

C:UsersAllenIversonDesktopgitcourse>gitbook pdf
info: 7 plugins are installed
info: 6 explicitly listed
info: loading plugin "highlight"... OK
info: loading plugin "search"... OK
info: loading plugin "lunr"... OK
info: loading plugin "sharing"... OK
info: loading plugin "fontsettings"... OK
info: loading plugin "theme-default"... OK
info: found 3 pages
info: found 2 asset files
info: >> generation finished with success in 8.6s !
info: >> 1 file(s) generated

安裝calibre後,轉換成功。PS:安裝calibre後需要重新啟動命令列視窗

設定PDF輸出格式

book.json

{
  "gitbook": "2.x.x",
  "title": "Go語言聖經",
  "description": "<The Go Programming Language>中文版",
  "language": "zh",
  "structure": {
    "readme": "preface.md"
  },
  "pluginsConfig": {
    "fontSettings": {
      "theme": "white",
      "family": "msyh",
      "size": 2
    },
    "plugins": [
      "yahei",
      "katex",
      "-search"
    ]
  },
  "pdf": {
    "pageNumbers": true, 
    "fontFamily": "Arial",
    "fontSize": 12,
    "paperSize": "a4",
    "margin": {
      "right": 62,
      "left": 62,
      "top": 56,
      "bottom": 56
    }
  }
}
VariableDescription
pdf.pageNumbers 是否新增頁碼,預設是true
pdf.fontSize 字型大小,預設是12
pdf.fontFamily 字型,預設字型是Arial)
pdf.paperSize Paper size, options are 'a0', 'a1', 'a2', 'a3', 'a4', 'a5', 'a6', 'b0', 'b1', 'b2', 'b3', 'b4', 'b5', 'b6', 'legal', 'letter' (default is a4)
pdf.margin.top Top margin (default is 56)
pdf.margin.bottom Bottom margin (default is 56)
pdf.margin.right Right margin (default is 62)
pdf.margin.left Left margin (default is 62)

gitbook mobi

C:UsersAllenIversonDesktopgitcourse>gitbook mobi
info: 7 plugins are installed
info: 6 explicitly listed
info: loading plugin "highlight"... OK
info: loading plugin "search"... OK
info: loading plugin "lunr"... OK
info: loading plugin "sharing"... OK
info: loading plugin "fontsettings"... OK
info: loading plugin "theme-default"... OK
info: found 32 pages
info: found 34 asset files
info: >> generation finished with success in 26.0s !
info: >> 1 file(s) generated

gitbook epub

C:UsersAllenIversonDesktopgitcourse>gitbook epub
info: 7 plugins are installed
info: 6 explicitly listed
info: loading plugin "highlight"... OK
info: loading plugin "search"... OK
info: loading plugin "lunr"... OK
info: loading plugin "sharing"... OK
info: loading plugin "fontsettings"... OK
info: loading plugin "theme-default"... OK
info: found 32 pages
info: found 34 asset files
info: >> generation finished with success in 18.5s !
info: >> 1 file(s) generated

IT145.com E-mail:sddin#qq.com