unoh.github.com

Emacsでソースコード解析

Sun Dec 16 17:37:38 -0800 2007

週末に眼鏡と財布が壊れて踏んだり蹴ったりなbokkoです。


最近、週末に他の人が書いたソースコードを解析したりして遊んでいるのですが、
今回はその際によく使っているツールについて紹介したいと思います。


moccur-edit.el

これはソースコードを全体を検索する際によく使っています。
findとgrepをパイプでつなぐだけでも十分な気がしますが、
moccur-grep-findとmoccur-grep-gotoを組み合わせて使うと、
すぐさま該当箇所にジャンプできたりするので、楽々検索できます。
また、moccur-edit.elにはほかにも複数のファイルに散らばっているキーワードを
1つのバッファ上で編集できるなど非常に強力な機能が備わっているので、
Emacsを使うなら必ず入れておくのがオススメです。(tramp経由でmoccur-grep-findを実行するとすごく遅くなるそうですが)


gdb on Emacs

gdbはCやC++だとprintfデバッグだけではどうにもならないことが多々あるので、よく使っています。
基本的なコマンドは一通り使えるようになっといて損はないでしょう。
また、moccur-edit.elはEmacsの拡張なので当然ですが、gdbはEmacs上でも実行することができます。
Emacsのキーバインドがそのまま使えるのはもちろん、いちいちlistコマンドを使わずに、
別のバッファでプログラムの現在位置を確認しながらステップ実行したり、
ブレークポイントを可視化することができるので、Emacsに慣れている人ならgdbはコンソールで実行するよりも
そのままEmacs上で実行してしまう方がオススメです。