ctagsコマンド簡易メモ
ctagsについて調べたときのメモ。 気が向いたらあとで補足する予定。。。
環境設定(windows環境にて)
- cygwinにctagsをインストールする
- cygwin setup.exeの起動
- Develのctagsをインストール
使い方
- 変数や関数名で Ctrl + ] → 該当箇所にジャンプ
- Ctrl + t でジャンプ元にもどる
タグファイルの生成
例) カレント配下の.phpまたは.incのPHPファイルの タグ付け一覧をファイル出力(tags.txt)する $ ctags -R -f tags.txt --langmap=PHP:.php:.inc → 標準出力の場合、ファイル名を-(ハイフン)にする
ヘルプ
$ ctags --help Exuberant Ctags 5.7, Copyright (C) 1996-2007 Darren Hiebert Compiled: Sep 10 2007, 14:25:32 Addresses:, http://ctags.sourceforge.net Optional compiled features: +wildcards, +regex, +internal-sort Usage: ctags [options] [file(s)] -a Append the tags to an existing tag file. -B Use backward searching patterns (?...?). -e Output tag file for use with Emacs. -f Write tags to specified file. Value of "-" writes tags to stdout ["tags"; or "TAGS" when -e supplied]. -F Use forward searching patterns (/.../) (default). -h Specify list of file extensions to be treated as include files. [".h.H.hh.hpp.hxx.h++"]. -I
A list of tokens to be specially handled is read from either the command line or the specified file. -L
A list of source file names are read from the specified file. If specified as "-", then standard input is read. -n Equivalent to --excmd=number. -N Equivalent to --excmd=pattern. -o Alternative for -f. -R Equivalent to --recurse. -u Equivalent to --sort=no. -V Equivalent to --verbose. -x Print a tabular cross reference file to standard output. --append=[yes|no] Should tags should be appended to existing tag file [no]? --etags-include=file Include reference to 'file' in Emacs-style tag file (requires -e). --exclude=pattern Exclude files and directories matching 'pattern'. --excmd=number|pattern|mix Uses the specified type of EX command to locate tags [mix]. --extra=[+|-]flags Include extra tag entries for selected information (flags: "fq"). --fields=[+|-]flags Include selected extension fields (flags: "afmikKlnsStz") [fks]. --file-scope=[yes|no] Should tags scoped only for a single file (e.g. "static" tags be included in the output [yes]? --filter=[yes|no] Behave as a filter, reading file names from standard input and writing tags to standard output [no]. --filter-terminator=string Specify string to print to stdout following the tags for each file parsed when --filter is enabled. --format=level Force output of specified tag file format [2]. --help Print this option summary. --if0=[yes|no] Should C code within #if 0 conditional branches be parsed [no]? -- -kinds=[+|-]kinds Enable/disable tag kinds for language . --langdef=name Define a new language to be parsed with regular expressions. --langmap=map(s) Override default mapping of language to source file extension. --language-force=language Force all files to be interpreted using specified language. --languages=[+|-]list Restrict files scanned for tags to those mapped to langauges specified in the comma-separated 'list'. The list can contain any built-in or user-defined language [all]. --license Print details of software license. --line-directives=[yes|no] Should #line directives be processed [no]? --links=[yes|no] Indicate whether symbolic links should be followed [yes]. --list-kinds=[language|all] Output a list of all tag kinds for specified language or all. --list-languages Output list of supported languages. --list-maps=[language|all] Output list of language mappings. --options=file Specify file from which command line options should be read. --recurse=[yes|no] Recurse into directories supplied on command line [no]. --regex- =/line_pattern/name_pattern/[flags] Define regular expression for locating tags in specific language. --sort=[yes|no|foldcase] Should tags be sorted (optionally ignoring case) [yes]?. --tag-relative=[yes|no] Should paths be relative to location of tag file [no; yes when -e]? --totals=[yes|no] Print statistics about source and tag files [no]. --verbose=[yes|no] Enable verbose messages describing actions on each source file. --version Print version identifier to standard output.
0 件のコメント:
コメントを投稿