【emacs】ctagを使ったタグジャンプ

emacsでタグジャンプするときに,いつも忘れて検索してしまうので, 自分用にメモを残す.

前準備

ctags-exuberantの導入

brewを利用してctags-exuberantを導入する.

brew install ctags-exuberant

ctagsをemacsで使うには,"-e"オプションをctagsに伝えてemacsタグファイルを作る必要がある. さらに普通は再帰的に行う.そのためのオプションが"-R"だ.

下記のようにterminalで実行する

cd/path/to/my/project
ctags -e -R

フィルターすることもできる

cd/path/to/my/project
ctags -e -R *.cpp *.hpp *.h

Exuberant ctagsを自動更新

ファイル保存時にタグファイルの更新をしてくれるのが,このctags-update.el

インストール

M-x package install RET ctags-update RET

ファイルを保存したとき,ctags-auto-update-modeが再帰的に親ディレクトリへTAGSファイルを見つけに行く. 5分以内にTAGSファイルが更新されていなければ,更新する.

使い方

コマンド 説明
M-. クラスや関数を探す
M-* 元の場所に戻る
C-u M-. 次の検索候補結果を表示する
C-u - M-. 前の検索候補結果を表示する
C-x 4 . タグの定義場所を探し別ウィンドウに表示
C-x 5 . タグの定義場所を探し別ウィンドウに表示