最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

GitBook 制作電子書詳細教程

 更新時間:2016年07月11日 15:11:56   投稿:lqh  
本文主要介紹GitBook如何制作電子書,在使用過程中經(jīng)常出現(xiàn)的問題以及解決辦法,希望能幫助到有需要的同學

gitbook安裝:

 https://nodejs.org/#download 

下載node.js源代碼(點擊綠色的INSTALL),

解壓

./configure
make
make install 

成功執(zhí)行后,npm就被安裝好了。

2. gitbook 安裝命令

npm install -g gitbook-cli


gitbook -V 

查看gitbook是否安裝成功。

ref

===

1. wanqingwong.com/gitbook-zh/index.html

gitbook使用

===========

1. 根據(jù)目錄生成圖書結構

1.1 README.md 與 SUMMARY編寫

README.md

這個文件相當于一本Gitbook的簡介。

$ mkdir test_gitbook
$ touch README.md

SUMMARY.md

這個文件是一本書的目錄結構,使用Markdown語法,

如我們這本書的SUMMARY.md:

$ touch SUMMARY.md
$ vim SUMMARY.md

輸入

* [簡介](README.md)
* [第一章](chapter1/README.md)
 - [第一節(jié)](chapter1/section1.md)
 - [第二節(jié)](chapter1/section2.md)
* [第二章](chapter2/README.md)
 - [第一節(jié)](chapter2/section1.md)
 - [第二節(jié)](chapter2/section2.md)
* [結束](end/README.md)

1.2 生成圖書結構

當這個目錄文件創(chuàng)建好之后,我們可以使用Gitbook

的命令行工具將這個目錄結構生成相應的目錄及文件:

$ gitbook init
$ tree . #查看建立的目錄和文件

├── chapter1
│   ├── README.md
│   ├── section1.md
│   └── section2.md
├── chapter2
│   ├── README.md
│   ├── section1.md
│   └── section2.md
├── end
│   └── README.md
├── README.md
└── SUMMARY.md

我們可以看到,gitbook給我們生成了與SUMMARY.md所
對應的目錄及文件。

每個目錄中,都有一個README.md文件,相當于一章的說明。

2. 生成圖書

2.1 輸出為靜態(tài)網(wǎng)站

你有兩種方式輸出一個靜態(tài)網(wǎng)站:

2.1.1 本地預覽時自動生成

當你在自己的電腦上編輯好圖書之后,你可以使用Gitbook
的命令行進行本地預覽:

$ gitbook serve .

然后瀏覽器中輸入:

 http://localhost:4000 

這樣就可以預覽生
成的以網(wǎng)頁形式組織的書籍。

這里你會發(fā)現(xiàn),你在你的圖書項目的目錄中多了一個名為
_book的文件目錄,而這個目錄中的文件,即是生成的靜態(tài)
網(wǎng)站內容。

使用build參數(shù)生成到指定目錄

與直接預覽生成的靜態(tài)網(wǎng)站文件不一樣的是,使用這個命令,
你可以將內容輸入到你所想要的目錄中去:

$ mkdir /tmp/gitbook
$ gitbook build --output=/tmp/gitbook

2.2 輸出PDF

輸入為PDF文件,需要先使用NPM安裝上gitbook pdf:

$ sudo npm install gitbook-pdf -g

我在執(zhí)行上面這條命令的時候出現(xiàn)了下面的錯誤:

***************************************************

Downloading http://cdn.bitbucket.org/ariya/phantomjs/downloads/phantomjs-1.9.7-linux-i686.tar.bz2
Saving to /usr/local/lib/node_modules/gitbook-pdf/node_modules/phantomjs/phantomjs/phantomjs-1.9.7-linux-i686.tar.bz2
Error: connect ETIMEDOUT
  at exports._errnoException (util.js:746:11)
  at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1010:19)
npm ERR! Linux 3.2.0-4-686-pae
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "gitbook-pdf" "-g"
npm ERR! node v0.12.7
npm ERR! npm v2.11.3
npm ERR! code ELIFECYCLE


npm ERR! phantomjs@1.9.7-5 install: `node install.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the phantomjs@1.9.7-5 install script 'node install.js'.
npm ERR! This is most likely a problem with the phantomjs package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!   node install.js
npm ERR! You can get their info via:
npm ERR!   npm owner ls phantomjs
npm ERR! There is likely additional logging output above.


npm ERR! Please include the following file with any support request:
npm ERR!   /home/wangxq/repository/phantomjs/npm-debug.log

***************************************************

 由錯誤報告內容的第一行可以知道,發(fā)生錯誤的原因是下載

 phantomjs發(fā)生了錯誤,因此我們需要手動下載和安裝。

 解決方法:[1]

$ git clone git://github.com/ariya/phantomjs.git
$ sudo apt-get install build-essential g++ flex bison gperf ruby perl \
 libsqlite3-dev libfontconfig1-dev libicu-dev libfreetype6 libssl-dev \
 libpng-dev libjpeg-dev python libx11-dev libxext-dev    #安裝編譯需要的工具和依賴
$ cd phantomjs
$ git checkout 1.9.7 #注意:這里的1.9.7是phantom的版本號,可以由錯誤報告的第一行找出 
$ ./build.sh --jobs 4
$ sudo cp bin/phantomjs /bin/
$ sudo npm install gitbook-pdf -g #重新進行安裝

 然后,使用下面的命令,要PDF文件,首先安裝依賴庫:

$ sudo apt-get install calibre 
$ gitbook -v 2.1.0 pdf .

 發(fā)生錯誤:

*****************************************************

info: start conversion to pdf ....ERROR


Error: Command failed: /bin/sh -c ebook-convert /tmp/tmp-29384ctltwbk/SUMMARY.html /tmp/tmp-29384ctltwbk/index.pdf --title="" --comments="這本書是gitbook的一個例子" --language="en" --book-producer="GitBook" --publisher="GitBook" --chapter="descendant-or-self::*[contains(concat(' ', normalize-space(@class), ' '), ' book-chapter ')]" --chapter-mark="pagebreak" --page-breaks-before="/" --level1-toc="descendant-or-self::*[contains(concat(' ', normalize-space(@class), ' '), ' book-chapter-1 ')]" --level2-toc="descendant-or-self::*[contains(concat(' ', normalize-space(@class), ' '), ' book-chapter-2 ')]" --level3-toc="descendant-or-self::*[contains(concat(' ', normalize-space(@class), ' '), ' book-chapter-3 ')]" --no-chapters-in-toc --max-levels="1" --breadth-first --margin-left="62" --margin-right="62" --margin-top="56" --margin-bottom="56" --pdf-default-font-size="12" --pdf-mono-font-size="12" --paper-size="a4" --pdf-header-template="<p class='header'><span></span></p>" --pdf-footer-template="<p class='footer'><span>_SECTION_</span> <span style='float:right;'>_PAGENUM_</span></p>"
Usage: ebook-convert input_file output_file [options]


Convert an ebook from one format to another.


input_file is the input and output_file is the output. Both must be specified as the first two arguments to the command.


The output ebook format is guessed from the file extension of output_file. output_file can also be of the special format .EXT where EXT is the output file extension. In this case, the name of the output file is derived the name of the input file. Note that the filenames must not start with a hyphen. Finally, if output_file has no extension, then it is treated as a directory and an "open ebook" (OEB) consisting of HTML files is written to that directory. These files are the files that would normally have been passed to the output plugin.


After specifying the input and output file you can customize the conversion by specifying various options. The available options depend on the input and output file types. To get help on them specify the input and output file and then use the -h option.


For full documentation of the conversion system see
http://manual.calibre-ebook.com/conversion.html


Whenever you pass arguments to ebook-convert that have spaces in them, enclose the arguments in quotation marks.


ebook-convert: error: no such option: --pdf-default-font-size

*****************************************************

解決方法[2]

$ sudo -v && wget -nv -O- https://raw.githubusercontent.com/kovidgoyal/calibre/master/setup/linux-installer.py | sudo python -c "import sys; main=lambda:sys.stderr.write('Download failed\n'); exec(sys.stdin.read()); main()"


$ gitbook -v 2.1.0 pdf . # 重新執(zhí)行命令生成pdf,目標文件為book.pdf

ref

===

1. http://phantomjs.org/build.html
2. http://calibre-ebook.com/download_linux

問題

===

1. 如果輸入gitbook init命令,出現(xiàn)Installing version 2.1.0,

需要耐性等待安裝。

       以上就是我整理的gitbook的安裝與使用資料,謝謝大家支持!

相關文章

  • shell耗時計算的實現(xiàn)

    shell耗時計算的實現(xiàn)

    本文主要介紹了shell耗時計算的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-01-01
  • Linux下JDK中文字體亂碼的解決方法

    Linux下JDK中文字體亂碼的解決方法

    下面小編就為大家?guī)硪黄狶inux下JDK中文字體亂碼的解決方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-02-02
  • Linux 中的 Install命令

    Linux 中的 Install命令

    install命令的作用是安裝或升級軟件或備份數(shù)據(jù),它的使用權限是所有用戶。 本文重點給大家介紹Linux 中的 Install命令,感興趣的朋友一起看看吧
    2017-09-09
  • linux下部署kodexplorer的方法

    linux下部署kodexplorer的方法

    下面小編就為大家?guī)硪黄猯inux下部署kodexplorer的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-05-05
  • Shell如何遍歷包含空格的文本詳解

    Shell如何遍歷包含空格的文本詳解

    這篇文章主要給大家介紹了關于Shell如何遍歷包含空格的文本的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-04-04
  • Shell中比較大小簡潔總結

    Shell中比較大小簡潔總結

    這篇文章主要介紹了Shell中比較大小簡潔總結,本文總結了在shell中比較變量大小的一些方法,需要的朋友可以參考下
    2014-12-12
  • 使用Bash腳本自動化清理Nacos日志文件的實現(xiàn)方法

    使用Bash腳本自動化清理Nacos日志文件的實現(xiàn)方法

    在現(xiàn)代的分布式系統(tǒng)中,Nacos作為服務發(fā)現(xiàn)、配置管理和動態(tài)服務管理的核心組件,其日志文件的管理顯得尤為重要,隨著系統(tǒng)的運行,日志文件會不斷累積,占用大量磁盤空間,本文將介紹如何通過一個簡單的 Bash 腳本自動化清理 Nacos 的日志文件,需要的朋友可以參考下
    2025-04-04
  • linux shell流程控制語句實例講解(if、for、while、case語句實例)

    linux shell流程控制語句實例講解(if、for、while、case語句實例)

    linux shell有一套自己的流程控制語句,其中包括條件語句(if),循環(huán)語句(for,while),選擇語句(case)。下面我將通過例子介紹下,各個語句使用方法
    2014-04-04
  • ./ 和 sh 的使用區(qū)別詳解

    ./ 和 sh 的使用區(qū)別詳解

    這篇文章主要介紹了./ 和 sh 的使用區(qū)別詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-09-09
  • Shell腳本實現(xiàn)C語言代碼行數(shù)統(tǒng)計

    Shell腳本實現(xiàn)C語言代碼行數(shù)統(tǒng)計

    這篇文章主要介紹了Shell腳本實現(xiàn)C語言代碼行數(shù)統(tǒng)計,本文直接給出實現(xiàn)代碼,需要的朋友可以參考下
    2015-05-05

最新評論

西华县| 额敏县| 呼玛县| 无极县| 收藏| 科尔| 盘锦市| 大庆市| 伽师县| 云林县| 嘉兴市| 塔河县| 林口县| 天峻县| 射阳县| 上杭县| 沙河市| 乃东县| 天峨县| 江陵县| 天祝| 漳平市| 龙南县| 宜君县| 时尚| 周宁县| 遂昌县| 华安县| 商洛市| 涟源市| 临澧县| 天等县| 临泉县| 双柏县| 灵寿县| 盐津县| 娱乐| 龙州县| 安龙县| 两当县| 德安县|