2012年12月30日

切換 Jekyll 的 Markdown 轉換引擎

Jekyll 是靜態網站產生工具,支援 Markdown 寫作是它的一大特色;在 Markdown 轉 HTML 的處理,Jekyll 支援多種 Markdown 轉換引擎。

近期使用 Jekyll 製作一些商業、公益網站,很快(通常只要 2~3 小時)就能把網站雛形做出來(使用 jekyll-bootstrap + wrapboostrap)。不過在預設情況下,Jekyll 使用 Maruku 將 Markdown 轉出 HTML 卻使用單引號(single quote) ,這和我們在樣板中慣用的雙引號(double quote)顯然不同,所以一份 HTML 文件同時存在兩種引號。

當然這並不影響網頁瀏覽,不過對 HTML 的潔癖讓我相當在意這個問題。

Jekyll with Maruku (default)

因為很懶得研究 Maruku 的參數怎麼設定(Google 第一頁找不到解法),所以今天突發奇想乾脆直接把 Markdown 引擎換掉;沒想到一改就順利解決,RDiscount 預設就是雙引號的輸出。

Jekyll with RDiscount

設定方式超簡單,只要在 _config.yml 加上一行:

markdown: rdiscount

就可以切換不同的 Markdown 引擎。

幾個比較常用的 Ruby Markdown implementation 有:

  1. BlueCloth
  2. Maruku
  3. RDiscount

因為 RDiscount 是 C 語言開發的版本,所以速度比其他兩個 Ruby 實作的版本還要快上很多。換成 RDiscount 之後除了解決雙引號問題,同時也讓網頁轉換速度提昇一些。

沒有留言:

張貼留言

lyhcode by lyhcode
歡迎轉載,請務必註明出處!