入坑 docsify,一款神奇的文檔生成利器!

2021-02-13 沉默王二

Guide 哥是我認識的一個非常優秀的年輕人,胖嘟嘟的身軀裡充斥著無窮無盡的才華,他的 JavaGuide 在 GitHub 上已經標星 91K+ 了,空閒的時候我都會上去瞅兩眼,畢竟學習使我快樂,嘿嘿。

有一天,我發現,他整的那個在線版看起來非常漂亮,我就問他用什麼做的,他就會回我說,「docsify,很方便。」剛好我最近在更新《教妹學 Java》專欄,就也想整個在線版的,方便讀者閱讀。

01、docsify 是什麼

一款神奇的文檔生成利器

自從有了 Markdown, 我就再沒用過富文本編輯器,因為 Markdown 的書寫有一種心流的感覺。很多博客平臺都支持 Markdown 了,即便是不支持,也沒關係,可以通過 mdnice 或者 Md2All 轉成富文本的格式。

docsify 可以自動地將 Markdown 中的標題生成目錄,並且可以配合碼雲(國內的訪問速度比 GitHub Pages 更快)快速搭建一個小型的文檔網站,整個頁面的配色和布局也十分舒適,讓閱讀體驗在不知不覺中提升了好幾個檔次。

和 Gitbook 不同,docsify 不會生成靜態的 HTML 文件,它會智能地加載和解析 Markdown 文件,這就避免了 HTML 文件對整個文檔庫的「汙染」。

貼一下 docsify 的官網:

https://docsify.js.org/

點進去後你會感覺非常的賞心悅目,滿滿的小清新。不得不承認,我的眼睛被它深深地吸引了。

02、入坑 docsify

第一步,打開命令行,執行以下命令安裝 docsify-cli,方便本地初始化和實時預覽。

npm i docsify-cli -g

如果這一步非常非常慢的話,可以強制退出,因為 npm 是從國外伺服器下載的,受網絡影響較大。

淘寶團隊幫我們解決了這個煩惱,搞了一個 npm 的國內鏡像。可以通過執行下面的命令把 npm 替換成 cnpm。

npm install -g cnpm --registry=https://registry.npm.taobao.org

如果出現 Error: EACCES: permission denied, access '/usr/local/lib/node_modules' 錯誤的話,是因為執行命令時沒有獲得管理員權限,解決方案就在 npm 前面加上 sudo:

sudo npm install -g cnpm --registry=https://registry.npm.taobao.org

輸入密碼後就可以執行成功了。然後執行 cnpm i docsify-cli -g 命令進行安裝。如果還提示權限錯誤(Error: EACCES: permission denied)的話,記得加上 sudo。

PS:sudo 是一個 linux 系統管理指令,允許系統管理員讓普通用戶執行一些 root 級別的命令。

安裝成功後,會提示以下信息。

第二步,執行以下命令創建文檔目錄並初始化。

docsify init ./docs

進入 docs 目錄後,可以看到 README.md(做為主頁內容渲染)和 index.html(入口文件)兩個文件。

第三步,回到 docs 的上級目錄,執行以下命令啟動本地服務。

docsify serve docs

第四步,在瀏覽器地址欄輸入 http://localhost:3000 進行預覽。

03、自定義導航欄

打開 index.html 文件,在 body 標籤中添加 nav 標籤,如下所示:

<body>
  <nav>
      <a href="www.itwanger.com">沉默王二個人博客</a>
  </nav>
  <div id="app"></div>
</body>

保存後,就可以在瀏覽器上查看到效果。

04、定製化配置項

打開 index.html 文件,在 script 標籤中對 window.$docsify 進行配置,如下所示:

window.$docsify = {
        name: '教妹學Java',
        repo: 'https://github.com/itwanger/TechSisterLearnJava',
}

1)name:文檔標題,會顯示在側邊欄頂部。

2)repo:GitHub 上的倉庫地址,會在頁面右上角渲染一個 GitHub 角標。

保存後,就可以在瀏覽器上查看到效果。

05、安裝插件

1)全文搜索

全文搜索插件會根據當前頁面上的超連結獲取文檔內容,在 localStorage 內建立文檔索引。默認過期時間為一天,也可以指定需要緩存的文件列表或者過期時間。

打開 index.html 文件,添加全文搜索配置項,並引入 search.min.js,如下所示:

<body>
  <script>
    window.$docsify = {
      search: {
        paths: 'auto',
        placeholder: '搜索',
        noData: '找不到結果',
        depth: 3,
      },
    }
  </script>
  <script src="//cdn.jsdelivr.net/npm/docsify/lib/plugins/search.min.js"></script>
</body>

保存後,就可以在瀏覽器上查看到效果。

2)圖片縮放

在 index.html 文件中引入 zoom-image.min.js 即可,如下所示:

<script src="//cdn.jsdelivr.net/npm/docsify/lib/plugins/zoom-image.min.js"></script>

保存後,就可以在瀏覽器上查看到效果,滑鼠放到一張圖片上時會出現縮小或者放大的圖標,點擊後就可以改變圖片的形態。

3)複製到剪貼板

在所有的代碼塊上添加一個簡單的 Click to copy 按鈕來允許用戶從你的文檔中輕易地複製代碼。在 index.html 文件中引入 docsify-copy-code 即可,如下所示:

<script src="//cdn.jsdelivr.net/npm/docsify-copy-code"></script>

保存後,就可以在瀏覽器上查看到效果。

4)字數統計

提供了統計中文漢字和英文單詞的功能,並且排除了一些 markdown 語法的特殊字符例如 *、- 等。

打開 index.html 文件,添加 count 配置項,並引入 countable.js,如下所示:

<body>
  <script>
    window.$docsify = {
      count:{
        countable:true,
        fontsize:'0.9em',
        color:'rgb(90,90,90)',
        language:'chinese'
      }
    }
  </script>
<script src="//unpkg.com/docsify-count/dist/countable.js"></script>
</body>

保存後,就可以在瀏覽器上查看到效果。

06、代碼高亮

docsify 內置的代碼高亮工具是 Prism。Prism 默認支持的語言如下:

Markup - markup, html, xml, svg, mathml, ssml, atom, rssJavaScript - javascript, js

Java 需要在 index.html 文件中添加額外的語法文件,如下所示:

<script src="https://cdn.jsdelivr.net/npm/prismjs@1.22.0/components/prism-java.min.js"></script>

保存後,就可以在瀏覽器上查看到效果。

07、部署到碼雲

我們可以把文檔網站部署到 GitHub Pages 上,但對於國內用戶來說,碼雲的訪問速度顯然會更快一些。

如果你是第一次使用 GitHub 的話,我這裡已經為你準備好了教程:

文科妹子都會用 GitHub,你這個工科生還等什麼

在 GitHub 上新建一個倉庫,把你的文檔全部放到 docs 目錄下,我的已經創建好了,就叫 TechSisterLearnJava。

接下來,登錄碼雲,選擇從 GitHub 導入倉庫。

選擇對應倉庫後點擊導入。

導入成功後,點擊「查看倉庫」,就可以看到從 GitHub 導入到碼雲的倉庫。點擊「服務」,選擇「Gitee Pages」。

勾選強制啟用 HTTPS,然後點擊「啟動」按鈕。不一會兒,碼雲 Pages 服務就開啟了。

點擊網站地址:

https://itwanger.gitee.io/sister-learn-java

就可以看到 docsify 已經成功部署到碼雲上了。

08、最後

強烈推薦一下《教妹學 Java》專欄,目前已更新 15 節內容(近 5 萬字),後面每周至少會更新 2 節,預計更新 130 節,從 Java 的基礎知識到對象和類,再到集合框架、網絡編程、並發編程和 Java 虛擬機,基本上全方位覆蓋。

專欄中涉及到的圖片都花了我很多精力和心思,力爭給你一種耳目一新的感覺,隨便截幾張圖給你看看。

真的用心了真的真的用心了思維導圖同樣用了心

這麼好的專欄上哪去找呢?免費給你(反正我也不知道自己是怎麼想的)!

GitHub 閱讀地址(star 它):

https://github.com/itwanger/sister-learn-java

碼雲閱讀地址(star 它):

https://gitee.com/itwanger/sister-learn-java

docsify 在線閱讀地址:

https://itwanger.gitee.io/sister-learn-java

我知道,我知道,不用你開口,離線版的 PDF 我也準備好了,看這暗黑風格的 PDF,閱讀起來絕壁賞心悅目啊。

百度網盤下載地址:

https://pan.baidu.com/s/1T1gNwQB8nKsrIzHveJ9WKg  提取碼:8tw7

PS:整完這個 docsify 後,我累壞了,一瞅時間,凌晨 1 點 32 分了,說實話,眼睛已經迷離了。

相關焦點

  • 入坑docsify,一款神奇的文檔生成利器!
    layout: postcategory: javatitle: 入坑 docsify,一款神奇的文檔生成利器!01、docsify 是什麼一款神奇的文檔生成利器自從有了 Markdown, 我就再沒用過富文本編輯器,因為 Markdown 的書寫有一種心流的感覺。
  • 那些看上去高大上的項目文檔和個人博客原來用了這些技術
    前言昨天忙裡偷閒分享了一個關於微信支付的開發包 Payment Spring Boot,有同學問文檔是用什麼搞得,今天就來分享一下關於程式設計師寫項目文檔的工具。無論是工作內部記錄,還是開源分享都非常有用。2.
  • PRD文檔:logo生成小程序
    編輯導讀:PRD作為產品經理經常撰寫的文檔,是產品的基本功。本文通過產品概述、業務流程、全局說明、功能性需求、非功能性需求五個模塊輸出一份「logo生成」需求文檔,希望對你有幫助。PRD作為產品經常撰寫的文檔,是產品的基本功。由於剛開始沒有模板沒有概念,只能通過網絡上相關的PRD去了解。經常看到很多人說「沒有完美的PRD,只有最適合團隊的PRD」。這話雖然沒錯,但是還是需要自己寫一份系統性的PRD才能讓自己有更深入的了解。轉行兩個月後決定參考@秋風的PRD文檔,寫一份自己公司產品的PRD。
  • 無縫貼圖一鍵生成利器?真香啊~
    神奇的小吧來啦!先來看看貼圖是怎麼回事~▼當然你可以直接PS但是我想讓你直接一鍵生成所以神器安排上!PixPlant這是一款非常優秀的材質工具可根據源圖創建高品質的無縫紋理圖片只需選擇一個照片運行它即可獲得完美的無縫紋理操練起來!
  • 論文翻譯利器:掌橋科研文檔翻譯,專業分類翻譯,保留原文格式
    今天給大家推薦一款很6的外文翻譯利器,因為它很專業,所以翻譯很強大——掌橋科研文檔翻譯。不知大家是否用過款外文翻譯利器,不用下載軟體,在線上傳文檔翻譯,由於掌橋科研文檔翻譯擁有專業劃分(對應各領域專業),這樣翻譯出來更加的精準,且速度超快!
  • smart-doc 2.0.1 發布,Java 零註解 API 文檔生成工具
    smart-doc是一款同時支持java restful api和apache dubbo rpc接口文檔生成的工具
  • smart-doc 2.0.0 重磅發布,Java 零註解 API 文檔生成工具
    smart-doc是一款同時支持java restful api和apache dubbo rpc接口文檔生成的工具
  • Generate Api Plus v1.0.6 發布,自動生成接口文檔的 IDEA 插件
    New features簡介《Generate Api Plus》是一款可以自動生成接口文檔的IDEA插件。包括基於Spring註解的RESTful接口和用於定義dubbo api的普通接口。其中,RESTful接口將自動上傳並託管在內網部署的YApi伺服器上,而普通接口則以markdown文件的形式保存在指定目錄。
  • Word文檔文字顯示不全怎麼辦,按回車鍵是自動生成編號如何關閉?
    在word文檔中可以看到,有時候一些文字顯示不全,主要是因為行距的問題,下面來設置一下。1.當前可以看到文檔中有一段文字顯示不全。2.用滑鼠將文字全部框選住,滑鼠右鍵,點擊段落選項。在word中一般輸入序號再按回車鍵之後會自動生成新的編號,這個是比較麻煩的事情,下面小編教大家如何關閉這個功能。1.比如說我們輸入一行文字,前方有編號,按回車鍵之後會生成下一個編號。2.關閉的話就是打開word選項,找到右側校對的按鈕。
  • Keras官方中文版文檔正式發布了
    這一次發布的是 Keras 官方中文文檔,它得到了嚴謹的校對而提升了整體質量。但該項目還在進行中,雖然目前已經上線了很多 API 文檔和使用教程,但仍然有一部分內容沒有完成。其實早在官方中文文檔出現以前,就有開發者構建了 Keras 的中文文檔,而且很多讀者都在使用 MoyanZitto 等人構建的中文文檔。
  • 石墨文檔、Alook瀏覽器、瘋讀小說,哪款簡潔好用APP是你的菜?
    這是一款「三無」瀏覽器——無推送,無新聞,無廣告,給用戶帶來最清爽的使用感。對於習慣讓app「各司其職」的人,Alook完美地契合需求,用了它之後再也不惦記其他瀏覽器,非常簡潔大方。實用系代表2:石墨文檔石墨是一款黑白色調的超簡潔辦公文檔,它的風格從圖標就能看出來:它有最基礎的文檔、表格、文件夾等幾個功能,還能自由設置文檔權限,方便協同工作。
  • 一夢江湖:萌新現在入坑來得及嗎?老玩家:隨時入坑都不會晚
    《一夢江湖》作為一款國民武俠手遊,細節精緻,玩法豐富多樣,且捏臉自由,實現了千人千面,得到了不少武俠愛好者的喜歡。同時,作為網易旗下最用心之一的一款手遊,在團隊的努力下,運營了將近三年之久,過段時日,也將迎來三周年慶典。
  • CSGO:入坑必備的三款皮膚,氮化處理才是一絕
    幾乎每個人都應該聽過CSGO的大名了,即使它是個比較老的遊戲依然會有很多新人陸續入坑。
  • 石墨文檔下載_石墨文檔app下載_石墨文檔下載安卓版-太平洋下載中心
    石墨文檔安卓版是一款輕便、簡潔的在線協作文檔和表格,輸入內容實時保存,支持多人協作編輯、劃詞評論、跨平臺操作等。
  • 9款魔性#傻瓜生成器#,上班可以划水一天
    有些 #傻瓜生成器#,表面上叫傻瓜,實際上一玩就停不下來。不分享出來,未免不近人情。畢竟,大夥上班累了,也需要一些奇怪的東西劃划水不是?  1  沙雕DIY跳舞生成器這款傻瓜生成器,真不能叫傻瓜,只能叫沙雕。
  • 推薦一款神奇的拼圖神器,只需一分鐘,你也可以生成炫酷吊炸天的蒙太奇效果!
    > 首發公眾號 | 利兄日誌(lixiongppt)還記得去年我寫過一篇文章:《相見恨晚的多圖排版神器》,給大家推薦過一款拼圖神器
  • 分享一款國內版的Gitbook在線文檔創作工具
    網上關於「國內版的GitBook」這個關鍵詞搜索的很多,想必大家一直期待國內,能出一款與GitBook類似的在線文檔創作工具。小編曾經也被這個問題困擾過,直到遇見我以下要推薦的這款在線文檔和知識庫製作工具-Baklib!
  • 菜鳥版音樂劇入坑指南
    作為一枚入坑僅數月就踩雷無數的菜鳥,我目前最大的心願是:現身說法令大家免步後塵。因此,這是一篇由菜鳥總結的、音樂劇入坑及避雷不完全指南。常識篇指南之前先得指北,講一講什麼才是「音樂劇」。 入坑篇那麼,究竟如何順利地入坑音樂劇呢?第一步,找坑。以「中心」論,當今世界當之無愧的音樂劇天堂當屬紐約的百老匯(Broadway)和倫敦的西區(West End),這兩地也被音樂劇迷簡稱為寬街和西區。