jekyllでソースコードを掲載するとき、 highlightタグを使用する人が多いと思うんだけど、 {% highlight ruby %}...{% endhighlight %}
とか書くのがめんどすぎるので、Markdownのコードブロックをhighlightタグに変換してくれるプラグインを書きました。
ソースコード
module Jekyll
module Convertible
alias :origin_render_liquid :render_liquid
def render_liquid(content, payload, info)
content.gsub!(/(?:^|\n)```(\w*)\n(.*?\n)```\n/m) do |text|
$1.empty? ? text : "\n{% highlight #{$1} %}\n#{$2}{% endhighlight %}"
end
origin_render_liquid(content, payload, info)
end
end
end
説明
これで
```ruby
puts "Hello, World!"
```
とか書くと内部でhighlightタグに変換してくれますsmile
追記(2013-06-26)
プログラムに一部誤りがあったので修正しました。