総合手引 | セクション 1 | English | オプション |
次のオプションを使用可能です:
| |
後方検索パターン (?...?) を用います。 | |
| |
前方検索パターン (/.../) を用います(デフォルト)。 | |
| |
typedefs, structs, unions, enums に関してタグを作成しません。 | |
| |
既存の tags ファイルに追加します。 | |
| |
引数を持たない #define に関してもタグを作成します。引数を持つ #define は自動的にタグが作成されます。 | |
| |
tagsfile で指定されたファイル名でタグファイルを生成します。 デフォルトでは tags というファイル名でタグファイルを生成します。 | |
| |
tags ファイル内の指定されたファイルに関する情報を更新します。 すなわち、関係するファイルへのすべての参照が削除され、新しいタグ情報が ファイルに追加されます。 (注意: このオプションはあまりスピードのでないような実装しか おこなわれていません。単に tags ファイルを再構築した方が早く終了するでしょう。) | |
| |
vgrind(1)
形式のファイル一覧が標準出力に出力されます。
この一覧はオブジェクト名、ファイル名、1 ページあたり 64 行とした場合の
ページ番号から構成されます。
出力は辞書式の順番でソートされているので、この後に
sort(1)
を通した方がよいでしょう。次のように使います。
ctags -v files | sort -f > index vgrind -x index | |
| |
診断用メッセージを表示しないようにします。 | |
| |
ctags はオブジェクト名、行番号、ファイル名、その行の内容からなる一覧を作成し、 それを標準出力に出力します。 これはオフラインでも読みやすいように印刷できる簡単な関数一覧として 利用できます。 | |
.c や .h で終わる名前のファイルは、 C 言語のソースファイルとみなされ、 C の形式の関数・マクロ定義が検索されます。 .y で終わる名前のファイルは、 yacc(1) のソースファイルとみなされます。 .l で終わる名前のファイルは、最初の空白でない文字が ‘amp;;’, ‘amp;(’, ‘amp;[’ のいずれかであれば Lisp のファイルであるとみなされ、そうでなければ lex(1) のファイルとみなされます。 その他のファイルは、まず Pascal か Fortran の定義が含まれるか どうかがチェックされ、含まれない場合には C 形式の定義が検索されます。
C 言語の場合、 "main" は特別に扱われ、元のソースファイルのパス名部分と末尾の .c の部分を取り除いたファイル名に対し、その先頭に ‘M’ を付加したものをオブジェクト名とします。 これにより、同じディレクトリに複数のプログラムがある場合でも ctags を実用的に使うことができます。
yacc(1) と lex(1) のファイルには特殊なタグがあります。 "yyparse" は yacc(1) ファイルの第二セクションの始まりを示し、 "yylex" は lex(1) ファイルの第二セクションの始まりを示します。
tags | デフォルトで出力されるタグファイル |
C か Pascal か Fortran かを判断する方法は とりあえず動いている、という程度のものです。
ctags ユーティリティはきちんと整形された入力に頼っています。 また、ソースファイルに文法的な間違いがあると 簡単に混乱してしまいます。 文法的に間違っていなくても混乱する場合があります。 例えば、 #ifdef を理解しないので(バグではなく仕様です)、 #ifdef 内に括弧のつりあっていないコードがあると混乱してしまいます。 同様に、定義が複数行にわたっている場合、オブジェクトの先頭行ではなく 最終行が検索パターンにマッチします。 複数行にわたる typedef に関しても同様です。
CTAGS (1) | June 6, 1993 |
総合手引 | セクション 1 | English | オプション |
このマニュアルページサービスについてのご意見は Ben Bullock にお知らせください。 Privacy policy.
“ | There are 10 types of people in the world: those who understand binary, and those who don't. | ” |