ソース(* .c、* .h)コードのブラウジングには、Linuxのvimでetagsを使用します。コマンドを指定してTAGSファイルを作成しました:
etags --members *.c *.h
TAGS ファイルが作成されますが、参照を開始すると、C 構造変数が定義され、その関数定義の 1 つで使用される 1.c という名前のソース ファイルの 1 つが表示されます (構造名は、他の 1.h ファイルの typedef です)。vim でファイル 1.c を開き、CTRL - ]
その構造体型にカーソルを置いて実行します。etags は、この構造体の宣言を含むヘッダー ファイル 1.h を参照しません。
これは、.vimrc に次の行がある場合にのみ発生します。2 行の下にコメントすると、etags ベースのソース ブラウジングが正常に機能します。
set TAGS=./TAGS;$HOME
set tags=./tags;$HOME
TAGS ファイルの場所を vim に伝えようとしています。現在のフォルダーからホームディレクトリまで。ここで何が間違っていますか?
上記のコマンドの正しい構文は何ですか?
また、vim を使用した ctags/etags ブラウジングは、特定のすべての関数がどこから呼び出されたかを示していますか? はいの場合、それを見るためのコマンドは何ですか?