2013-03-19 71 views
2

我正在使用來自Jekyll插件部分文檔(https://github.com/mojombo/jekyll/wiki/Plugins#generators)的示例生成器的稍微修改版本,我很好奇如果有任何方法來解析液體/降價文件,而不是來自示例的純HTML文件?從Liquid和Markdown生成Jekyll頁面而不是HTML

通知這一行:

self.read_yaml(File.join(base, '_layouts'), 'category_index.html') 

即類別index.html文件是將在生成的文件中使用的目標文件。我的目標是能夠通過我的_config文件將對象傳遞給我的生成器,然後我可以使用它從.markdown文件構建一堆頁面。有誰知道這是可能的還是有任何建議來達到這個目的?我研究了用於內部解析markdown的Kramdown庫,如果必須的話,我並不反對自己調用它,只是不確定是否我需要的內容比我需要的更深一些,應該是非常簡單的。爲此我的發電機創建Page對象的API是在這裏:http://ruby-doc.org/gems/docs/j/jekyll-0.12.0/Jekyll/Page.html

由於一噸, - 基思

回答

0

您可以生成你想要幾乎任何格式,來自幾乎任何數據源,在發電機,因爲你正在直接寫Ruby,完全訪問Jekyll對象模型。例如,這裏有一臺發電機,我在fetches GitHub commits during jekyll build的那個晚上放了一臺發電機。

我會問的問題是:

  1. 我需要一個插件來做到這一點?
  2. 如果是這樣,我是否需要一個正式的發電機插件,如Jekyll docs所述?
  3. 或者我應該繼承子類,猴子補丁還是改變內置生成器的行爲?

另外,Markdown和HTML文件在這種情況下的差異(您控制100%生成的內容)大多是標稱的。 read_yaml IIRC實際上會從兩者中讀取前面的問題,所以這不應該成爲問題。