Hatena::Groupcatalyst

dann@catalyst このページをアンテナに追加 RSSフィード

2008-03-31

vimをIDEっぽく使う (autocomplpop + ctags)

| 18:53 |  vimをIDEっぽく使う (autocomplpop + ctags) - dann@catalyst を含むブックマーク はてなブックマーク -  vimをIDEっぽく使う (autocomplpop + ctags) - dann@catalyst  vimをIDEっぽく使う (autocomplpop + ctags) - dann@catalyst のブックマークコメント

LLを使ううえで大変なことは、Eclipseがないことに尽きる。補完がしにくいし、ソースコードjumpがしにくい。けれど、これはautocomplpopとctagsを組み合わせると、Eclipseまで完璧ではないもののそれに近いことが実現できる。

  • ctags+vimで該当箇所へのjump
    • ポイントは、使うモジュールの全部のタグを作っておいて、cronでまわして生成しておくこと
    • ただし、Eclipseは型がわかっているから、一発で該当箇所にjumpできるけど、LLの場合だとそこまで完璧にはいかない。
    • Eclipseを使っていたときもJavaDoc(HTML)は使わないで、ライブラリのソースコードをattachしてEclipse上でソースコードをjumpしながら読んでいた。それに近い感じ。
  • autocomplpopでtagとbufferから補完
    • これで、がんがん補完できる。autoで補完候補がでるのが肝。

タグは以下のようなスクリプトをcronでまわしてタグを作っている。

#!/bin/sh

echo 'Generating tags for perl ...'
ctags -f ~/.vim/tags/perl/cpan.tags --recurse --totals \
    --exclude=blib \
    --exclude=.svn \
    --exclude='*~' \
    --languages=Perl --langmap=Perl:+.t \
    /usr/local/share/perl/5.8.8/

echo '\nGenerating tags for ruby ...'
ctags -f ~/.vim/tags/ruby/gems.tags --recurse --totals \
    --exclude=blib \
    --exclude=.svn \
    --exclude='*~' \
    --languages=Ruby \
    /var/lib/gems/1.8/gems/
トラックバック - http://catalyst.g.hatena.ne.jp/dann/20080331