使用GitBook遇到的那些事


gitbook相信大家(程序猿和程序媛)大家都應該聽說過或者使用過。本人屬於一只剛入行不久的程序猿(一直在學習,努力成長)。網絡上關於gitbook的內容都很多,我從中也學習到了很多,接下來我將自己使用過程中遇到的問題記錄一下(給自己做個筆記)。


 

關於GitBook熱更新問題找到了另外一種解決方式:可以使用3.0.x版本。通過下面指令,制定低版本。

gitbook build --gitbook=3.0.0

如果本地不存在,則下載3.0.0版本,然后選擇3.0.0版本進行構建書籍即可,以下內容可以選擇不看了。


一、使用環境

概覽:

Wndows10 + github + MarkDown工具

詳細描述(工具自理,不在保修范圍😂):

在Windows10上安裝node(版本自選,本人用的是node-v12.18.3-x64)

安裝好node后再命令窗口安裝gitbook:npm install -g gitbook-cli

 MarkDown工具:有很多,我用的是Typora

版本控制工具git:我使用的是官方的GitHub Desktop

二、使用過程中遇到的問題(主業用不到node,所以期間干了不少蠢事)

1 常用命令

初始化:gitbook init

啟動gitbook服務:gitbook serve
查看地址:http://localhost:4000

serve 命令也可以指定端口:gitbook serve --port 2333

構建書籍:gitbook build [書籍路徑] [輸出路徑]
示例:gitbook build ./ ./output

可以生成 PDF 格式的電子書:gitbook pdf ./ ./mybook.pdf

生成 epub 格式的電子書:gitbook epub ./ ./mybook.epub

生成 mobi 格式的電子書:gitbook mobi ./ ./mybook.mobi

如果生成不了,你可能還需要安裝一些工具,比如 ebook-convert。或者在 Typora 中安裝 Pandoc 進行導出。

2 遇到的問題

(1)build后得到的靜態文件查看時不能進行跳轉

原因:

theme.js問題,gitbook作者已提供了解決方法,由於gitbook未再更新(最近一次更新在2018年)所以這個問題未能真正的解決。

解決方式:

build輸出目錄下gitbook文件夾,是該文件夾下theme.js的問題。如我的輸出目錄是output,所以問題在:\output\gitbook\theme.js。

我們需要在theme.js中查找:if(m)for,將其中的m換為false。沒錯,就只這一個m搞得鬼,而且我們需要build一次,修改一次。

有沒有一勞永逸的方法?

在用戶目錄下找到:

C:\Users\用戶名\.gitbook\versions\3.2.3\node_modules\gitbook-plugin-theme-default\_assets\website

在這個目錄下的theme.js中查找:if(m)for,將其中的m換為false。(親測可用)

(2)gitbook自帶插件問題

原因:gitbook-plugin-livereload 是gitbook自帶的一個插件,當我們gitbook serve后,加入修改了書籍中的某些內容,保存后我們刷新網頁內容應該自動更新內容的,但是現在這個插件不僅沒更新,反而會殺掉服務,換句話就是:對不起,你的Ctrl + s 殺掉了gitbook serve。之后就要要重新執行命令了。

解決方式:通過搜索,並沒有發現解決方法,不是我不告訴你們,而是從網上沒找到(┬_┬)

三、柳暗花明又一村(上述“遇到的問題”中的內容可以不用看了)

是的,上述遇到的問題中的內容可以不用看了。上述問題中的內容就是一個問題的記錄(記筆記)。那上述的兩個問題有沒有好的解決方式呢?

我也是這么問自己。然后,經歷了發現問題,思考問題,解決問題的漫長過程。解決第一個問題花了3分鍾,是的3分鍾。然后去愉快的玩耍了(碼字)。然后花了一段時間(不好統計),一邊碼字一邊思考解決自動更新的問題,然后碼字,改bug,經過了,1個多小時時間,終於把它搞定了。之后,碼字,寫Bug,終於程序也被我寫崩潰了,(此處重復上句話N次)。在寫本文過程中,至少沒再次崩潰。不說了上連接:

github:https://github.com/2Or3InTheMorning/GitBook_Auxiliary_tools

 

四、關於輔助工具要說的

GitBook輔助工具 v0.5.1
功能概述:
1.一鍵完成初始化、構建、啟動網絡服務
2.構建Book時自動修復標簽頁無法跳轉
3.通過技術手段彌補實時修改服務停止的bug(未修復)
(可通過config.ini自行啟用初始化、構建、啟動Web)
4。如使用Web服務,程序運行后將會使用電腦自帶瀏覽器打開網頁。
本程序為本人自己使用GitBook的輔助工具,所有權歸本人所有。

不喜勿噴!!!
后續更新可關注個人Github:
https://github.com/2Or3InTheMorning

因代碼較亂,暫不上傳代碼,后期整理后上傳。
2020年8月

 

注意:使用過程中build和serve會復制程序和配置文件(請不要刪除配置文件內的配置項,可以修改,具體請看文件內的注釋)

 

收集網友的問題和解決方式

(1)由於加載插件出現的問題(網友遇到的,我沒有遇到,因為未驗證

gitbook serve命令執行反復報以下報錯

Error: Couldn't locate plugins "toggle-chapters, splitter, anchor-navigation-ex, prism, copy-code-button, alerts, theme-comscore", Run 'gitbook install' to install plugins from registry.

Error: ENOENT: no such file or directory, stat 'D:\workspace\core-solution-docs\_book\gitbook\gitbook-plugin-fontsettings\fontsettings.js'

Error: ENOENT: no such file or directory, stat 'D:\workspace\core-solution-docs\_book\gitbook\gitbook-plugin-livereload\plugin.js'

Error: ENOENT: no such file or directory, stat 'D:\workspace\core-solution-docs\_book\gitbook\gitbook-plugin-alerts\plugin.js'

Error: ENOENT: no such file or directory, stat 'D:\workspace\core-solution-docs\_book\gitbook\gitbook-plugin-livereload\plugin.js'

Error: ENOENT: no such file or directory, stat 'D:\workspace\core-solution-docs\_book\gitbook\gitbook-plugin-search\lunr.min.js'

解決方案:

修改用戶目錄的.gitbook\versions\3.2.3\lib\output\website\copyPluginAssets.js文件,把112行的confirm改為false。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM