windows環境×sambaでCtagsを導入するメモ

windows環境×sambaでCtagsを導入するメモ

widnows環境でsambaを使っている、かつlinuxでctagsコマンドが使えなかったので
windows環境でtagsファイルを作成し、gVimでそのtagsを参照しタグジャンプをする方法です

特に目新しいことは書いてありませんが、いくつかのサイトを巡回してようやく解決できたので自分用にまとめます

ctagsの入手

ctags日本語対応版よりバイナリを入手する

ctagsのインストール

ctags.exeをパスが通っているディレクトリに配置する
もしくは適当な場所においてパスを通す
※Windows 環境変数 Path の設定方法

ctagsの動作確認

コマンドプロンプトで動作を確認する
~~~
C:\Documents and Settings>ctags –version
Exuberant Ctags 5.8J2, Copyright (C) 1996-2009 Darren Hiebert
Compiled: Dec 25 2010, 20:49:06
Addresses: , http://ctags.sourceforge.net
Japanese patch by HIGASHI Hirohito
http://hp.vector.co.jp/authors/VA025040/
Optional compiled features: +win32, +regex, +internal-sort, +kanji
~~~
パスが通っていればこう表示される

タグファイルの作成

アプリケーションのルートに移動してコマンドを叩きます
※sambaを使ってネットワーク上にファイルがある場合はネットワークの割り当てをしておきます
~~~
ctags -R
~~~

その他オプション

-R ディレクトリを再帰的に処理
-a tagsファイルが存在していれば追記
–langages カンマ区切りで出力対象の言語を指定
–langmap 言語名:拡張子の形式で、ファイル名と言語のマップを指定
各言語のデフォルトはctags –list-mapsで確認
–php-types c:クラス、f:メソッド、d:定数、v:変数
他の言語の設定はマニュアルをご確認ください
-f タグファイルの出力先を指定

gVimからタグファイルを読み込む

方法1:タグファイルの場所をvimrcに追記する
こうすることでvimを起動した際に必ず読みこまれます
~~~
set tags=C:\tags\homuhomu.tags,C:\tags\hogehoge.tags
~~~
※フレームワークを使っている場合などに有効

方法2:gVimのカレントディレクトリにtagsを配置する
Windows の Rails 開発で ctags を使う – akishin999の日記
読まれているタグの確認方法
~~~
:set tags
~~~

タグジャンプする

~~~
Ctrl+] タグジャンプ
Ctrl+t ジャンプの元の場所に戻る
:ts 他の候補を表示
~~~

カレント以外のtagsを見に行きたい場合に書くおまじない

~~~
set tags+=tags;./**/tags
~~~

構造がよくわかっていないソースを読むときや、大きすぎるシステムのときには非常に役に立つんではないかと思います