1
by Colin Watson
Import upstream version 5.5.4 |
1 |
Exuberant Ctags
|
2 |
===============
|
|
3 |
Author: Darren Hiebert <dhiebert at users.sourceforge.net> |
|
4 |
http://ctags.sourceforge.net |
|
5 |
Instant Messaging: |
|
6 |
Yahoo! ID : dbhiebert |
|
7 |
AIM ScreenName: darrenhiebert |
|
8 |
||
9 |
Exuberant Ctags is a multilanguage reimplementation of the much-underused |
|
10 |
ctags(1) program and is intended to be the mother of all ctags programs. It |
|
11 |
generates indexes of source code definitions which are used by a number of |
|
12 |
editors and tools. The motivation which drove the development of Exuberant |
|
13 |
Ctags was the need for a ctags program which supported generation of tags |
|
14 |
for all possible C language constructs (which no other ctags offers), and |
|
15 |
because most were easily fooled by a number of preprocessor contructs. |
|
16 |
||
17 |
||
18 |
Exuberant Ctags offers the following features: |
|
19 |
||
20 |
1. It supports the following languages: Assembler, AWK, ASP, BETA,
|
|
21 |
Bourne/Korn/Z Shell, C, C++, C#, COBOL, Eiffel, Erlang, Fortran, Java, Lisp, |
|
22 |
Lua, Makefile, Pascal, Perl, PHP, PL/SQL, Python, REXX, Ruby, Scheme, |
|
1.1.3
by Colin Watson
Import upstream version 5.8 |
23 |
S-Lang, SML (Standard ML), Tcl, Vera, Verilog, VHDL, Vim, and YACC. |
1
by Colin Watson
Import upstream version 5.5.4 |
24 |
|
25 |
2. It is capable of generating tags for virtually all C language constructs.
|
|
26 |
||
27 |
3. It is very robust in parsing code. In particular, the C/C++ parser is
|
|
28 |
far less easily fooled by code containing #if preprocessor conditional |
|
29 |
constructs, using a conditional path selection algorithm to resolve |
|
30 |
complicated situations, and a fall-back algorithm when this one fails. |
|
31 |
||
32 |
4. Supports output of Emacs-style TAGS files (i.e. "etags").
|
|
33 |
||
34 |
5. User-defined languages, using Posix regular expressions.
|
|
35 |
||
36 |
6. Supports UNIX, MSDOS, Windows 95/98/NT/2000/XP, OS/2, QNX, Amiga, QDOS,
|
|
37 |
RISC OS, VMS, Macintosh, and Cray. Some pre-compiled binaries are |
|
38 |
available on the web site. |
|
39 |
||
40 |
||
41 |
Visit the Exuberant Ctags web site: |
|
42 |
||
43 |
http://ctags.sourceforge.net |
|
44 |
||
45 |
||
46 |
Which brings us to the most obvious question: |
|
47 |
||
48 |
Q: Why is it called "Exuberant" ctags? |
|
49 |
A: Because one of the meanings of the word is: |
|
50 |
||
51 |
exuberant : produced in extreme abundance : PLENTIFUL syn see PROFUSE |
|
52 |
||
53 |
Compare the tag file produced by Exuberant Ctags with that produced by any |
|
54 |
other ctags and you will see how appropriate the name is. |
|
55 |
||
56 |
||
57 |
This source code is distributed according to the terms of the GNU General |
|
58 |
Public License. It is provided on an as-is basis and no responsibility is |
|
59 |
accepted for its failure to perform as expected. It is worth at least as |
|
60 |
much as you paid for it! |
|
61 |
||
62 |
Exuberant Ctags was originally derived from and inspired by the ctags |
|
63 |
program by Steve Kirkendall (kirkenda@cs.pdx.edu) that comes with the Elvis |
|
64 |
vi clone (though almost none of the original code remains). This, too, is |
|
65 |
freely available. |
|
66 |
||
67 |
Please report any problems you find. The two problems I expect to be most |
|
68 |
likely are either a tag which you expected but is missing, or a tag created |
|
69 |
in error (shouldn't really be a tag). Please include a sample of code (the |
|
70 |
definition) for the object which misbehaves. |
|
71 |
||
72 |
-- |
|
73 |
vim:tw=76:sw=4:et: |