blog.bouzuya.net

2012-08-21 ClojureでJekyllのpostを解釈する

今日も昨日に続き、Jekyllからmisakiへの移行をはかる。

今日はJekyllのpostを解釈する。

Jekyllのpostの構造はふたつの部分からなる。ひとつはファイル先頭のYAMLで書かれたoptionであり、もうひとつはそれ以降に続くMarkdownで書かれたcontentである。Markdownについては純粋なMarkdownではなくLiquidにより拡張されたMarkdownである。

今回は純粋なMarkdownであると仮定して、Jekyllのpostを解釈してみた。コード全体は昨日と同様にclj-ex-mkdとしてGitHubに公開している。

戻り値は{:tags "jekyll", :title "Jekyllを試す", :layout "post", :content "<p>test</p>"}のようなClojureで扱いやすいmap形式だ。contentをHTMLとするかMarkdownのままとするか迷ったが、面倒なのでHTMLに変換してしまった。あとは複数行の正規表現にてこずった。普段はあまり使わないから、仕方ないのは確かだけど、情けない。

さて、すこしずつではあるが移行の準備は進んでいる。明日はenliveでlayout部分をさわってみようかな。

14 min.