Movableタイプで、コードをvimのシンタックスでハイライトしてくれるプラグイン。
antipop2.0 のけんたろさんが公開された vimcolor プラグインをdrryさんが改造されたものです。
http://blog.drry.jp/2005/12/16/1855
ダウンロードして、MovableTypeのpluginsディレクトリに放り込む。
PerlのライブラリText::VimColorに依存しているのでインストール。
http://search.cpan.org/dist/Text-VimColor/
さらに、依存関係にある、Path::Classモジュールをインストール。
http://search.cpan.org/dist/Path-Class/
これでMovableTypeの管理画面で、「システムメニュー→プラグイン」を開いてみると、エラー無く認識された。
テンプレートタグを以下のように編集。
<$MTEntryBody vim_color="none"$>
ここで、none部分には、デフォルトで使用する、vimのfiletypeを指定。
このプラグインは、ハイライトしたいコードを、<span>で囲んで色を付けるというものなので、その色を指定するためのスタイルシートが必要。
このサイトを参考にしながら、適当なスタイルシートを作る。
http://vimcolor.spiritloose.net/
今回使用したスタイルシートはこれ。
pre {
background-color: #e7ebff; color: #000000;
padding:0px 20px;
}
.synSpecial { color: #c000c0; }
.synType { color: #008000; }
.synComment { color: #0000c0; }
.synPreProc { color: #c000c0; }
.synIdentifier { color: #008080; }
.synConstant { color: #c00000; }
.synStatement { color: #804000; }
エントリーを記述する際に、<pre>タグと、<code>タグでハイライトしたい部分を囲む。このとき、<code>タグの、class属性に、vimのファイルタイプを指定。
<pre title="sample"><code class="ruby">
def test
puts "hello world!!"
end
</code></pre>
こう書くと・・・
def test
puts "hello world!!"
end
こうなる。綺麗にハイライトされてるね!
このとき、<pre>タグと、<code>は同じ行に連続して書く必要があり、これに気づかずかなりはまりました・・・