コピペコードで快適生活

明日使えるソースを自分のために

ctagsメモ

インストール

# メンテが止まっている
# exuberant-ctags
brew install ctags

# こっちを使う
# universal-ctags
brew install --HEAD universal-ctags/universal-ctags/universal-ctags

設定

# ~/.ctags

--append=yes
--recurse=yes
--php-kinds=cfd
--ruby-kinds=cfm
  • append=yes → tagsが既にあれば上書きではなく追加
  • recurse=yes → 配下ディレクトリを再起的にタグ作成するかどうか(-Rと同じ)
  • [言語]–kind → なんのタグを作成するかの設定(c=classなど)

設定の確認

ctags --list-maps
ctags --list-kinds=ruby

.tagsの検索範囲を設定

vimでctagを使う場合に、カレントディレクトリからホームディレクトリまで .tags を探す

# .vimrc

set tags=.tags;~

# デフォルトはこちら
# :set tags=./tags,tags

tagsファイルの作成

プロジェクトディレクトリに移動して

ctags -R --languages=Ruby -f .tags

で、プロジェクトディレクトリ直下に .tags ファイルが生成される。

  • f → 出力ファイルを指定。デフォルトはtags
  • R → 再帰的にファイルをチェックする

タグジャンプする

検索したいキーワードにカーソルを合わせて

  • CTRL-] → 現在のウィンドウでタグジャンプ
  • g CTRL-] → タグジャンプ先を候補表示する
  • CTRL-w] → ウィンドウを分割してタグジャンプ
  • CTRL-t → タグジャンプ先から戻る

参考