Next: , Previous: , Up: Maintaining   [Contents][Index]


28.3 タグテーブル

タグ(tag)とは、プログラムまたはドキュメント内のサブユニットにたいするリファレンスです。ソースコードではタグは、関数サブルーチン、データ型、マクロなどのプログラムの構文要素を参照します。ドキュメントではチャプター、セクション、アペンディクスなどを参照します。タグは対応するサブユニットが定義されているファイルの場所と、サブユニットがファイルのどこで定義されているかを指定します。

タグテーブル(tags table)は、特定のプログラムまたはドキュメントのソースコードをスキャンすることにより抽出されたタグを記録します。生成されたファイルから抽出されたタグは、タグ抽出の際にスキャンされる生成されたファイルではなく、その元になるファイルを参照します。生成されたファイルの例として、Cwebソース、Yaccパーサー、Lexスキャナー定義から生成されたCファイルや、プリプロセスされたCファイルの.i.fppソースファイルをプリプロセスすることにより生成されるFortranファイルがあります。

タグテーブルを生成するには、ドキュメントまたはソースコードファイルにたいして、シェルコマンドetagsを実行します。‘etags’プログラムは、タグテーブルファイル(tags table file)、または略記してタグファイル(tags file)にタグを書き込みます。タグファイルは慣習的にTAGSという名前です。Create Tags Tableを参照してください。

Emacsは、タグテーブルに記録された情報を使用して検索や置換を行う、多くのコマンドを提供します。たとえばM-. (find-tag)は、指定した関数にたいして、それのソースファイルの関数定義の場所にジャンプします。Find Tagを参照してください。

Ebrowse機能はetagsに似ていますが、C++に特化したものです。Ebrowse in Ebrowse User’s Manualを参照してください。 Semanticパッケージは、etags機能とは別の、タグを生成して使用する他の方法を提供します。Semanticを参照してください。