functree.exe

xyzzy で関数ツリーを出力することはできないのかなと調べていたら*1 wiki のほうで WishList になってることを知りました。

WishList/22 - Xyzzy Wiki "C言語関数ツリーをxyzzyで"
http://xyzzy.s53.xrea.com/wiki/?WishList%2F22


コメントで紹介されていたツールを使ってみました。

プログラマー's研究所/C言語関数ツリー
http://www.hcn.zaq.ne.jp/no-ji/functree/functree.html


なんかもうちょっと簡単な方法があるはずと思うのですが、きっと lisp 書くととても楽になると思うのですが、
とりあえずメモします。
複数ファイルを解析したいので、ファイル名を一覧にしたファイルを指定する方法です。

  1. C-x C-f ( find-file )
    functree.exe があるフォルダに テキストファイル ( ex. files.txt ) を作る。
  2. 解析したい複数のファイルを xyzzy で開く。
  3. C-x C-b ( list-buffers *2 )
    *Buffer List*から複数のパスを矩形選択し、コピーする。
  4. files.txt にお好みでオプション( -N など)を記入。その下にコピーしたパスをペーストして保存する。
  5. C-x c ( run-console )
    files.txt を表示させた状態で、cmd.exe を起動。functree.exe があるディレクトリになっているはず。
  6. コマンドを実行
    functree @files.txt > d:\txt\tree.txt
    リダイレクトしてテキストができあがり。*3

*1:引継ぎ資料を楽に作りたくて・・・。

*2: C-x C-b のほうが楽なのに、私はよく M-x buffer-menu を使っています。M-x b↑(上矢印)で出てきます。手が慣れたみたいです。

*3:フルパスを指定したので横に長いテキストファイルができあがり!!