2011年8月28日日曜日

MacのvimでLogcatのハイライト表示

SyntaxHighlighterでブログ上のソースコードやLogcatをハイライト表示できるようになりましたが、できればエディタ上でハイライト表示できた方が効率的です。
Mac Book Air(Late 2010)を使っていますが、エディタはmi(ミミカキエディット)とvimを使っています。
で、手始めにvimにLogcatのハイライト表示をさせようと思います。
ハイライト表示ルールを記述する必要があるのかな、と思ったら
日本Androidの会神戸支部のしもださんから、本家サイトにLogcatのルールファイルがあるよとの事でした(しもださんはバキバキのvimmerですw)。
Logcat syntax highlighter - Syntax highlighting for Android logcat files : vim online:"http://bit.ly/pTrfUp"
確かに。これはありがたい。まず結論から先に。
(1)/usr/share/vim/vim72/syntaxディレクトリにlogcat.vimを配置して、
(2)/usr/share/vim/vimrcファイルに「au BufRead,BufNewFile *.logcat set filetype=logcat」を書き加えるだけでした。
これで、拡張子.logcatで保存されたファイルがハイライト表示されます。
もうひとつ方法があるのに気がついたんですが、それは最後に。

MacBook Airで使っているエディタは、vimとmi(ミミカキエディット)とあとDashCodeです。FTPクライアントのCyberDuckがデフォルトで起動する軽量エディタですが、悪くないです(…てゆうかmiより気に入ってます)。
mi(ミミカキエディット)は職場のMacに全台インストールされているので、それに合わせて使っている感じなんですが、vimは学生時代から普通に使っているWinのメモ帳みたいなもんで、メモ帳なみの手軽さと高機能さを併せ持った愛用エディタです。
(私の学生時代はvimはなく本チャンのviでした。exやedさえも使っていました。年齢がバレる…)

ちょっと苦労したのがlogcat.vimファイルを配置する適切な場所です。
通常は以下の場所にあるようです。
$VIM/runtime/syntax/
参考URL:"vimのシンタックスファイルを自作しようとしているのですが、色.. - 人力検索はてな:"http://bit.ly/oEqw0U"
もともと、logcat.vimを自作しようと思ってたので上記サイトが目につきました。

しかし、Macではecho $VIM しても空です。
Macではvimrcなどの設定関係はどこにあるのでしょうか?
「Mac vi syntax」でGoogle検索すると以下のサイトがでてきました。
vimでActionScriptとmxmlのシンタックスハイライトをカスタマイズ[Vim][as] | QUALL - blog:"http://bit.ly/nGi5qg"
MacユーザはActionScriptをハイライト表示させたいという需要が多いみたいですね;-)

結局、以下のパスにsyntaxディレクトリがありました。
/usr/share/vim/vim72/syntax
ここにダウンロードしてきたlogcat.vimを移動し、vimrcを編集します。
$sudo mv ~/Downloads/logcat.vim  /usr/share/vim/vim72/syntax
Password:
$sudo  vi  /usr/share/vim/vimrc
/usr/share/vim/ディレクトリはrootしかいじれませんのでsudoで操作しました。

vimrcには以下の記述を最下行に追加しました。
"Android Logcat file …この行はコメント行
au BufRead,BufNewFile *.logcat set filetype=logcat
これで、拡張子.logcatで保存されたファイルがハイライト表示されます。
エラーがない普通のLogcat内容です
とここまでで完了なんですが、本家サイトをみると…



install details
The adb logcat file needs to have a .logcat extension.

Please place the logcat.vim file in your ~/.vim/syntax directory and add the following line to your ~/.vimrc (or _vimrc on Windows)

au BufRead,BufNewFile *.logcat set filetype=logcat 


…とかあって、わざわざ$VIMのディレクトリパスを見つけて、sudoで書き換える必要は無かったですね。
ホームディレクトリに.vim/syntaxディレクトリを作ってlogcat.vimを置き、ホームディレクトリの.vimrcに1行追加するだけでした。
 
フツーに本家サイトの英語を読んでたらあっさり設定できましたね。まあ今回示した手順はすべてのユーザに反映できる設定方法なんで良しとしましょう。

0 件のコメント:

コメントを投稿