Ctags
From Wikipedia, the free encyclopedia
Ctags(英: Ctags)はソース及びヘッダ内にある名前のインデックス(又はタグ)ファイルを生成するプログラム。様々なプログラミング言語に対応している。言語に依存するが、サブルーチン(関数)、変数、クラスのメンバ、マクロ等がインデックス化される。これらのタグによりテキストエディタなどのツールで高速かつ容易に定義を参照できる。相互参照ファイルを出力でき、また名前についての情報を人が読みやすい形で列挙した言語ファイルを生成することもできる。
Ctagsはケン・アーノルドがBSD Unix用に開発した。後にJim KlecknerによりFortranがサポートされ、ビル・ジョイによりPascalがサポートされた。
タグインデックスファイルは下記を含む数多くのソースコードエディタでサポートされている。
- AcroEdit
- BBEdit(バージョン8以降、要Exuberant Ctags)
- GNU EmacsとXEmacs
- EmEditor Professional
- Gedit (リンク先のgedit-symbol-browser-pluginでサポート)
- JED
- jEdit (CodeBrowser、Tags、ClassBrowser、CtagsSideKick、Jumpのプラグインでサポート。)
- JOE
- KDevelop
- KATE (右記リンク先のkate-ctags-pluginでサポートKDE-apps)
- NEdit
- Notepad++ (OpenCTagsプラグインでサポート)
- Programmer's Notepad
- QDevelop
- TextMate (CodeBrowser-PlugInでサポート)
- UltraEdit
- VEDIT
- Vi (及びElvis、Nvi、Vim、vile等の派生版)
- ViVi
- Zeus IDE
- サクラエディタ
ctagsの派生版
ctagsにはいくつかの派生版が存在する。
Etags
EtagsはEmacs上で動作するctagsである。ctagsが生成するViフォーマットのタグファイル用にのみ意味のあるオプションはetagsでは解釈されず無視される。
Exuberant Ctags
Darren Hiebertが開発したExuberant Ctagsは元々Vimと共に配布されていたが、Vim 6のリリースに合わせて独立したプロジェクトになった[1]。Emacs互換機能をサポートしている。
Exuberant Ctagsは正規表現を用いることにより数多くのプログラミング言語に対応でき、30以上の言語に対応している。