CodeRayを利用してシンタックスハイライト行う
はじめに
文字列をAPI側でシンタックスハイライトしたい、そんな妙な要求もたまにあります。
そういった時に便利なのが、CodeRayというgemです。
実装
CodeRayをインストールします。
gem install coderay
ハイライト処理は見栄えに対する処理ですから、プレゼンテーション層で行う場合が多いかと存じます。以下ではデコレーターであるdraperからCodeRayを呼び出すことで、Request#bodyをシンタックスハイライトしております。
こちらのgemの優れている点は、処理が全てRubyで書かれていることではないでしょうか。内部的にjsのパッケージを呼び出している訳ではありません。おかげで上記のような呼び出しを行うことができます。
とても便利だと思います。