マカーなぺちぱーがVimでctagsとcscopeを使うための設定

「えー マジgrep!?」「キモーイ」「ソースコード追うのにgrepが許されるのは小学生までだよね!」「キャハハハハハハ」
ってことで、ctagsとcscopeを有効に使う。
マカーとかぺちぱーとか実はあんまし関係ないけど。

$ brew install ctags
$ brew install cscope

vimmerならtaglist.vimとsrcexpl.vimは必要。

NeoBundle 'taglist.vim'
NeoBundle 'Source-Explorer-srcexpl.vim'
" で、:NeoBundleInstall

Homebrewだと/usr/local/binにインスコされるのでいろいろと設定してあげる。

" ~/.vimrc
let Tlist_Ctags_Cmd='/usr/local/bin/ctags'
let g:SrcExpl_updateTagsCmd = "/usr/local/bin/ctags --sort=foldcase -R ."

taglistで変数まで表示されるとウザいので

let tlist_php_settings = 'php;c:class;d:constant;f:function'

cscopeの設定。

if has("cscope")
  set csprg=/usr/local/bin/cscope
  set csto=0
  set cst
  set nocsverb
  " add any database in current directory
  if filereadable("cscope.out")
    cs add cscope.out
  " else add database pointed to by environment 
  elseif $CSCOPE_DB != ""
    cs add $CSCOPE_DB
  endif
  set csverb
  set cscopequickfix=s-,c-,d-,i-,t-,e-
endif

centosの/etc/vimrcかなんかからコピってきた。

:Tlist
:SrcExplToggle

で下みたいになる。
f:id:jhoshina:20120117155311p:plain
んで、クラス名でCtrl+]押せば、
f:id:jhoshina:20120117155448p:plain
とquickfixにリストが出て選べる。