vim でctagsを利用する & tagList 導入方法
Eclipse のアウトライン機能のように関数一覧が見たかったので、
プラグイン Taglist.vim を導入しました。
これは Eclipse のように関数や変数の一覧を見れるものです。
参考URL
http://uprush.net/2009/05/vim%E3%81%A7%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0%E9%96%8B%E7%99%BA-tag%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%A8taglist%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%EF%BC%88%E3%81%9D%E3%81%AE-2/
http://onlineconsultant.jp/pukiwiki/?Taglist.vim%E3%82%92%E5%B0%8E%E5%85%A5%E3%81%99%E3%82%8B
■導入方法(格闘あり)====================================
とりあえず、ここから最新版をダウンロードhttp://www.vim.org/scripts/script.php?script_id=273
解凍して各ディレクトリに置く(plugin, docs)
http://blog.veryposi.info /programing/php/php-ctags-vim/
を見てやってみる。
まず、ctag は php のソースはデフォルトではタグファイル作らないのでタグをつくる
(デフォルトでは C、Pascal、FORTRAN等)
[root@host1 ~]# ctags -a -f ~/.tags -R --langmap=PHP:.php.inc --php-types=c+f+d+v+i
はエラーが下記出たので
./ctags: Warning: Unsupported parameter 'i' for --php-types option
以下のコマンドでタグ作ってみた。
ctags -a -f ~/.tags -R --langmap=PHP:.php.inc --php-types=c+f+d+v ./
しかし taglist には反映されない・・・。
でも、調べてたら、気がついた。
CentOS 5で yum インストールしたctagsのバージョン(5.6)ではphpのタグを読み込まないらしい・・・
http://lab.tricorn.co.jp/kame46/43
OS のバージョンと ctags のバージョンを調べてみる。
# cat /etc/redhat-releaseCentOS
release 4.4 (Final)
# ctags --version
Exuberant Ctags 5.6, Copyright (C) 1996-2004 Darren Hiebert Compiled: Jan 6 2007, 02:14:02 Addresses:
うん。そうですね。。。だめでした。
仕事場も5.5.xだったし、多分phpに対応しているのは 5.7 からです。
さらに調査をすすめて、方法が以下のサイトにあったので、
http://lab.tricorn.co.jp/kame46/43
#yum remove ctags
でアンインストールしてから、最新版取得。
# wget http://prdownloads.sourceforge.net/ctags/5.8/ctags-5.8-1.src.rpm# rpmbuild --rebuild ctags-5.8-1.src.rpm# rpm -ivh /usr/src/redhat/RPMS/i386/ctags-5.8-1.i386.rpm
で、ソースのあるっぽいディレクトリに移行して、
タグファイルををつくってみる。
# ctags -R -n --languages=PHP --PHP-types=c+f+d
できたー!!
無事に動きます。色々ジャンプするようです。
ついでに Tagexplorer,vim もいれました。
http://nanasi.jp/articles/vim/tagexplorer_vim.html
ちなみに、TagListの設定は
.vimrc に以下を書きます。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
"taglist
let Tlist_Ctags_Cmd = "/usr/bin/ctags" "ctagsのパス
let Tlist_Show_One_File = 1 "現在編集中のソースのタグしか表示しない
let Tlist_Exit_OnlyWindow = 1 "taglistのウィンドーが最後のウィンドーならばVimを閉じる
let Tlist_Use_Right_Window = 1 "右側でtaglistのウィンドーを表示
map
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
以上です。
その他参考URL
※php のタグファイル追加方法 その他
Vim で PHP 関数の辞書を作成する方法についてのメモ
http://www.asahi-net.or.jp/~wv7y-kmr/memo/vim_php.html
PHPを書くときに、vimでctagsを使用する方法
http://blog.veryposi.info/programing/php/php-ctags-vim/