Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

シンタックスハイライトをしてくれるgem「coderay」

coderayはシンタックスハイライトをやってくれるgemです。
はてなブログでもRubyコードを貼り付けると色分けしてくれますが…ああいった感じの事をやってくれます。

対応言語は幅広く…

C, C++
Clojure (new)
CSS
Delphi
diff
ERB
Go
Groovy
HAML (new)
HTML
Java
JavaScript
JSON
Lua
PHP
Python
Ruby
Sass
SQL
Taskpaper
XML
YAML

…すごい。HAMLサポートとか…
また、

smart: doesn't choke on crazy code

とかいてあるように、ある程度の魔界記法ならば、ヨロシク判断してくれるようです

導入

$ gem install coderay

で楽々。

つかいかた

puts CodeRay.scan("puts 'Hello'", :ruby).div

とやると、

<div class="CodeRay">
  <div class="code"><pre>puts <span style="background-color:hsla(0,100%,50%,0.05)"><span style="color:#710">'</span><span style="color:#D20">Hello</span><span style="color:#710">'</span></span></pre></div>
</div>

といったHTMLを出力してきます。
試しにHTMLファイルに記載して見てみると…
f:id:shuzo_kino:20150213234404p:plain
てな感じで、ハイライトされた文字列になっている事がわかります。

参考もと