mumumu (13284) の日記
私はvi使いだ。昨日のエントリで、「ソースのシンボルを追う
のにいちいちgrepしたりヘッダファイルを推測したりする」
と書いたところ、umqさめからctagsの存在を教わった。
これを使えばvimから「 ctl-[ 」及び「 ctl-T 」するだけで
シンボルを追うことができる。
----以下インストールメモ----
Windows環境(今の私の環境はXP)用のvimその他のバイナリは
以下にあるのでそこからDLする。(vimのctagsプラグインはvim
本体に同包されている)
vim本体は適当なディレクトリに、その他二つはsystemフォルダ
(私の環境では「C:\WINDOWS\system32」)に放り込んでおいた。
ctagsを使うにはtagファイルを作らねばならない。
私はc:\work\gaim\src下のファイルを読んでいて、依存する
gtk+系のライブラリをc:\work\gtk+, c:\work\glib下に置い
ている。そこで、gaim\src下にタグファイルを作り、vimには
それを見させることにする。
cd c:\work\gaim\src
ctags -R --tag-relative -f c:\work\gaim\src\tags *
cd c:\work\gtk+
ctags -R -a --tag-relative -f c:\work\gaim\src\tags *
cd c:\work\glib
!ctags
この後c:\work\gaim\srcに移動してvimでCソースを開けば、
「 ctl-[ 」及び「 ctl-T 」でシンボルを追い放題という
わけだ(*´~`) なかなかよろしい。
----
ついでにTaglistプラグインも入れておいた。これはウィン
ドウの左側にシンボルを表示してくれるというスグレモノで
ある。(スクリーンショット)
インストール方法は、.vimファイルをここからDLしてvimのプラ
グインフォルダに置き、.vimrcファイルに以下の一行を付け加え
れば良い。
filetype on
----
今夜はLinux環境で同じことを試すことにしまする。
情報をくれたumqさん、及びこれらのソフトウェアを作ってく
れた先人の方々に感謝(*´~`)
[ Update April 2nd 17:55 JST by m ]
ctagsは現在開いているソースがあるディレクトリにtagsとい
う名前のファイルがあることを期待する。これでは私がやって
いるように複数のディレクトリレベルに渡ってタグファイルを
(本当は)配置したい人の役に立たないのだ。なぜなら別ディ
レクトリ中のソースに飛ぶには「今見ているソースがあるディ
レクトリ」のtagsファイルにその情報がなくてはならないから
である。
そのための対処はFAQであり、ここで見ることができる。
おいらは (スコア:1)
ctagsにはどーも慣れられないんですよね…
-- Takehiro TOMINAGA // may the source be with you!
Re:おいらは (スコア:1)
までは考えていません。
JavaならEclipseで両方やるところですが、Cでは多分両方
ctagsでやることになるのかな、、と。
ただ、まだ複数ディレクトリにtagsファイルを置いたときの
挙動をどう制御するかを悩んでいます。これが解決すれば
一貫してctagsを使うようになるのでしょうが(´ー`;)
# 無精、短気、傲慢、これ最強