namazu-dev(ring)


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

cxref and global (Re: PREFIX nmz_ (continue))



Satoru Takabayashi <satoru-t@xxxxxxxxxxxxxxxxxx> wrote:

>cxref <http://www.gedanken.demon.co.uk/cxref/> を試してみま
>した。面白いです。GLOBAL <http://www.tamacom.com/global/> と
>どちらがいいのかな?

ざっと触ってみたかぎりでは次のような印象を受けました。

  cxref:  プログラムの仕様・設計を知るのに適している
          - 関数・変数がどこで *使われているか* がわかる
          - 構造体・型・列挙体・#define の情報が詳しい
          - warning を出力してくれる

  global: ソースコードを読むのに適している
          - ソースコードに Hyperlink が張り巡らされる
          - 出力される HTML が派手 (色付けされている)
          - 本来の用途はタグシステム (ctags, etags の仲間)

用途に応じて使い分けるのがいいみたいです。

ところで、cxref の warning は有益です。たとえば

  src/output.c : Function is_allresult() is global 
  but is only used in this file.

と注意してくれます。すばらしい。

ただ、異なるファイルに跨るクロスリファレンスはあまり信用でき
な…と、ここまで書いて man を確認したら

| Two cxref passes of each file is needed, the first to build
| up the cross referencing files and the second to use them.

とありました。問題ありません。:-)

# ちなみに、"foobar Function () does not have a comment." と
# いう warning は約 1800個もありました。;-)


>Makefile.am に次のコマンドを追加しておきました。
(snip)

これはちと問題があったので修正しました (two passにした)。つ
いでに global 用の規則を追加しておきました。

global: HTAGS

HTAGS: GTAGS
	htags

GTAGS: stamp-h
	gtags


p.s.
ほかにも便利なツールがあれば教えてくださいませ。
(便利なツールを使って開発を効率化しよう :-)

-- Satoru Takabayashi
I feel the need ... the need for speed! -- Top Gun (1986 film)