Reading Linux Kernel #ツール
カーネル読むためのツール導入。
環境は、Mac(Leopard) + Carbon Emacs 22.2.1です。
1. GNU GLOBAL
MacPortsからインストール。
$ sudo port install global
タグファイルを生成。以下のコマンドをソースのトップディレクトリで実行。
$ gtags -v
Done.
以下の4ファイルが生成された。
- GPATH
- GRTAGS
- GSYMS
- GTAGS
Emacsから使用できるように設定。
/opt/local/share/gtags/gtags.elをパスの通った場所へコピー。
$ cp /opt/local/share/gtags/gtags.el ~/emacs/
.emacsへ追加。
(autoload 'gtags-mode "gtags" "" t) (setq gtags-mode-hook '(lambda () (local-set-key "\M-t" 'gtags-find-tag) ;関数定義にジャンプ (local-set-key "\M-r" 'gtags-find-rtag) ;関数呼び出し場所にジャンプ (local-set-key "\M-s" 'gtags-find-symbol) ;シンボル参照先にジャンプ (local-set-key "\C-t" 'gtags-pop-stack) ;前のバッファに戻る )) (add-hook 'c-mode-common-hook '(lambda() (gtags-mode 1) (gtags-make-complete-list) ))
2. App::Ack
こちらもMacPortsからインストール。
$ sudo port install p5-app-ack
Emacsから使用できるように設定。
(add-hook 'dired-load-hook '(lambda () (load-library "ls-lisp") (setq ls-lisp-dirs-first t) (setq dired-listing-switches "-AFl") (setq find-ls-option '("-exec ls -AFGl {} \;" . "-AFGl")) (setq grep-find-command "ack --nocolor --nogroup ") (require 'wdired) ))
M-x grep-findで検索。
GNU GLOBAL source code tagging system
App::Ack - A container for functions for the ack program - metacpan.org