gtagsを使うことにした
久々に、まじめにコード読もうと思って、etagsを使おうとして、こんなに面倒だったっけ? と思い、GNU globalをいれてみることにしました。
インストール
- GNU global 5.7.4のダウンロード
- configure/make/make install
- emacsの設定
emacsの設定でやったこと:
gtags.elをemacsのロードパスが通ったところにいれる
emacs.elに次のことをかく
;; gtsgs (load "gtags") (define-key gtags-mode-map [?\C-\M-.] 'gtags-find-tag-other-window) (define-key gtags-mode-map "\M-r" 'gtags-find-rtag) (add-hook 'c-mode-hook '(lambda () (gtags-mode 1) (gtags-make-complete-list) ))
使い方
まず、読みたいソースのてっぺんでgtags -vする。
(これでgtagsが使うファイルが作られる)
それから、emacsで何かソースファイルを開く。
関数名のところでM-.すると、定義されてる場所をみつけてくれる。
M-rすると、参照元をみつけてくれる。