メイン | MovabelTypeで、「改行を変換する」関連プラグイン »

vimcolor プラグイン

[MovableType] [plugin]

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>は同じ行に連続して書く必要があり、これに気づかずかなりはまりました・・・

トラックバック

このエントリーのトラックバックURL:
http://i-am.web777.net/mt/mt-tb.cgi/4

コメントを投稿