Fork of ctags with Ada support
Go to file
dhiebert 9108b1b1ca Added support for ASP classes, contributed by Zendhi Nagao; changes meaning of c kind flag.
git-svn-id: svn://svn.code.sf.net/p/ctags/code/trunk@711 c5d04d22-be80-434c-894e-aa346cc9e8e8
2009-07-04 16:52:11 +00:00
Eiffel Fixed comment and contracts. 2003-07-26 16:26:36 +00:00
Test Backported commit 3795 from geany tagmanager, fixes variable detection if there's a comment with an = on the same line 2009-05-17 16:17:25 +00:00
gnu_regex Updated to use regex code from glibc. 2009-07-04 05:53:16 +00:00
website Added gedit plugins. 2008-10-12 22:26:12 +00:00
win32 Removed obsolete files. 2007-08-01 04:41:22 +00:00
.gdbinit Brought web site and win32 build directory into CVS and build process. 2002-01-27 01:42:30 +00:00
.indent.pro Tuning of indentation. Still only approximate. 2006-08-23 02:19:09 +00:00
COPYING Initial restoration. 2001-11-02 04:53:43 +00:00
EXTENDING.html Added note about modifying makefile. 2002-09-04 01:17:32 +00:00
FAQ Updated URL for GLOBAL. 2003-07-03 06:08:21 +00:00
INSTALL Initial restoration. 2001-11-02 04:53:43 +00:00
INSTALL.oth Fixed regex support for MinGW. Gnu regex module now included in all distributions. 2007-09-10 02:52:22 +00:00
MAINTAINERS Four new parsers have been added. 2008-12-14 13:19:48 +00:00
Makefile.in Updated to support autoconf-2.6. 2009-07-04 05:29:28 +00:00
NEWS Added support for ASP classes, contributed by Zendhi Nagao; changes meaning of c kind flag. 2009-07-04 16:52:11 +00:00
README trunk/vhdl.c: add Nicolas Vincent's VHDL parser. 2008-04-19 03:54:17 +00:00
ant.c Four new parsers have been added. 2008-12-14 13:19:48 +00:00
argproc.c Reformatted code for independence of tab stop setting. 2006-05-30 04:37:13 +00:00
args.c trunk/args.c: 2007-06-02 06:09:00 +00:00
args.h Reformatted code for independence of tab stop setting. 2006-05-30 04:37:13 +00:00
asm.c trunk/args.c: 2007-06-02 06:09:00 +00:00
asp.c Added support for ASP classes, contributed by Zendhi Nagao; changes meaning of c kind flag. 2009-07-04 16:52:11 +00:00
awk.c Reformatted code for independence of tab stop setting. 2006-05-30 04:37:13 +00:00
basic.c Simplified BASIC parser to stop it from installing as multiple parsers. 2007-06-30 23:59:12 +00:00
beta.c trunk/args.c: 2007-06-02 06:09:00 +00:00
c.c trunk/c.c: fix parsing of Java annotations on method parameters (patch from "blaisorblade"). 2008-12-13 21:17:36 +00:00
cobol.c Reformatted code for independence of tab stop setting. 2006-05-30 04:37:13 +00:00
configure.ac Updated to support autoconf-2.6. 2009-07-04 05:29:28 +00:00
ctags.1 trunk/ctags.1: Britton Leo Kerin points out that the man page claims an incorrect default for the --fields option. Correct it. 2008-12-13 21:31:31 +00:00
ctags.h Changed default version identifier. 2009-03-14 03:52:21 +00:00
ctags.spec Updated release targets of maintainer makefile and modified other files to support new method of building release. 2007-07-31 02:38:16 +00:00
debug.c trunk/debug.c: 2007-06-15 19:17:02 +00:00
debug.h trunk/debug.c: 2007-06-15 19:17:02 +00:00
descrip.mms Initial restoration. 2001-11-02 04:53:43 +00:00
dosbatch.c Four new parsers have been added. 2008-12-14 13:19:48 +00:00
e_amiga.h Moved non-configure-script environment configurations into separate files. 2002-03-08 22:35:19 +00:00
e_djgpp.h Fixed portability problem for DJGPP. 2003-10-31 04:15:35 +00:00
e_mac.h Reformatted code for independence of tab stop setting. 2006-05-30 04:37:13 +00:00
e_msoft.h Fixed compilation problem on MinGW [Bug #1517424]. 2007-06-30 15:30:16 +00:00
e_os2.h Moved non-configure-script environment configurations into separate files. 2002-03-08 22:35:19 +00:00
e_qdos.h Moved non-configure-script environment configurations into separate files. 2002-03-08 22:35:19 +00:00
e_riscos.h Moved non-configure-script environment configurations into separate files. 2002-03-08 22:35:19 +00:00
e_vms.h Moved non-configure-script environment configurations into separate files. 2002-03-08 22:35:19 +00:00
eiffel.c Updated parser for new Eiffel syntaxes. 2009-06-28 23:09:30 +00:00
entry.c Reformatted code for independence of tab stop setting. 2006-05-30 04:37:13 +00:00
entry.h Reformatted code for independence of tab stop setting. 2006-05-30 04:37:13 +00:00
erlang.c Reformatted code for independence of tab stop setting. 2006-05-30 04:37:13 +00:00
flex.c Changed all print f to a DbugStatment 2008-12-15 12:09:24 +00:00
fortran.c trunk/fortran.c: fix typo. 2008-04-20 23:30:12 +00:00
general.h Enabled Gnu warning suppression macros for GCC on Mac OS X. 2007-05-03 03:20:59 +00:00
get.c trunk/get.c: fix typos in comments. 2007-06-17 03:30:09 +00:00
get.h trunk/c.c: 2007-05-28 01:50:41 +00:00
html.c Reformatted code for independence of tab stop setting. 2006-05-30 04:37:13 +00:00
index.html Fixed regex support for MinGW. Gnu regex module now included in all distributions. 2007-09-10 02:52:22 +00:00
jscript.c When parsing IF statements, was not handling the "else if" statement properly 2008-05-15 17:47:31 +00:00
keyword.c trunk/eiffel.c: 2008-04-20 23:21:35 +00:00
keyword.h trunk/eiffel.c: 2008-04-20 23:21:35 +00:00
lisp.c Reformatted code for independence of tab stop setting. 2006-05-30 04:37:13 +00:00
lregex.c trunk/ctags.1: (Bug #1745301) clarify the "--options" option. 2007-06-30 04:16:23 +00:00
lua.c Reformatted code for independence of tab stop setting. 2006-05-30 04:37:13 +00:00
mac.c Reformatted code for independence of tab stop setting. 2006-05-30 04:37:13 +00:00
magic.diff Initial restoration. 2001-11-02 04:53:43 +00:00
main.c trunk/args.c: 2007-06-02 06:09:00 +00:00
main.h Reformatted code for independence of tab stop setting. 2006-05-30 04:37:13 +00:00
maintainer.mak Updated to support autoconf-2.6. 2009-07-04 05:29:28 +00:00
make.c Added patch to accept exported variables; received from Ralf Wildenhues on July 11, 2008. 2008-10-12 22:43:00 +00:00
matlab.c Four new parsers have been added. 2008-12-14 13:19:48 +00:00
mk_bc3.mak Fixed dependency. 2003-02-24 02:27:53 +00:00
mk_bc5.mak Fixed regex support for MinGW. Gnu regex module now included in all distributions. 2007-09-10 02:52:22 +00:00
mk_djg.mak Improved portability on Cygwin and DJGPP. 2003-03-31 04:53:22 +00:00
mk_manx.mak Added support for Erlang language, submitted by Brent Fulgham. 2003-02-13 02:59:30 +00:00
mk_mingw.mak Fixed regex support for MinGW. Gnu regex module now included in all distributions. 2007-09-10 02:52:22 +00:00
mk_mpw.mak Added support for Erlang language, submitted by Brent Fulgham. 2003-02-13 02:59:30 +00:00
mk_mvc.mak Updated to use regex code from glibc. 2009-07-04 05:26:42 +00:00
mk_os2.mak Update supplied by Alexander Mai. 2002-01-27 21:20:55 +00:00
mk_qdos.mak Added support for Erlang language, submitted by Brent Fulgham. 2003-02-13 02:59:30 +00:00
mk_risc.mak Added support for Erlang language, submitted by Brent Fulgham. 2003-02-13 02:59:30 +00:00
mk_sas.mak Added support for Erlang language, submitted by Brent Fulgham. 2003-02-13 02:59:30 +00:00
mkinstalldirs Initial restoration. 2001-11-02 04:53:43 +00:00
options.c trunk/ctags.1: (Bug #1745301) clarify the "--options" option. 2007-06-30 04:16:23 +00:00
options.h Reformatted code for independence of tab stop setting. 2006-05-30 04:37:13 +00:00
parse.c Fixed recognition of Python scripts having "#\!/usr/bin/python" as first line [Bug #1764148]. 2007-07-31 05:35:30 +00:00
parse.h Reformatted code for independence of tab stop setting. 2006-05-30 04:37:13 +00:00
parsers.h Four new parsers have been added. 2008-12-14 13:19:48 +00:00
pascal.c trunk/args.c: 2007-06-02 06:09:00 +00:00
perl.c Do not try to create tags for empty identifiers. This gets rid of a 2007-08-02 04:45:16 +00:00
php.c Added support for class and member variables [PHP, Bug #1037086] 2007-09-15 22:53:31 +00:00
python.c Backported commit 3795 from geany tagmanager, fixes variable detection if there's a comment with an = on the same line 2009-05-17 16:17:25 +00:00
qdos.c Reformatted code for independence of tab stop setting. 2006-05-30 04:37:13 +00:00
read.c Resolved compiler warning from MS VisualStudio 8. 2009-07-04 05:29:02 +00:00
read.h trunk/jscript.c: 2008-04-20 23:27:48 +00:00
readtags.c Copied search name to avoid possibility of loss of name pointed to in client application [Bug #1117716]. 2007-07-31 03:30:41 +00:00
readtags.h Reformatted code for independence of tab stop setting. 2006-05-30 04:37:13 +00:00
rexx.c Reformatted code for independence of tab stop setting. 2006-05-30 04:37:13 +00:00
routines.c trunk/args.c: 2007-06-02 06:09:00 +00:00
routines.h trunk/args.c: 2007-06-02 06:09:00 +00:00
ruby.c trunk/ruby.c: simple-minded (but reasonably effective) skipping of string literals, so we don't accidentally recognize "keywords" inside string literals. 2007-06-24 23:32:14 +00:00
scheme.c Reformatted code for independence of tab stop setting. 2006-05-30 04:37:13 +00:00
sh.c Reformatted code for independence of tab stop setting. 2006-05-30 04:37:13 +00:00
slang.c Reformatted code for independence of tab stop setting. 2006-05-30 04:37:13 +00:00
sml.c trunk/args.c: 2007-06-02 06:09:00 +00:00
sort.c Removed obsolete memory checking support. 2007-02-17 22:43:15 +00:00
sort.h Reformatted code for independence of tab stop setting. 2006-05-30 04:37:13 +00:00
source.mak Missed a few lines for the object files for ant, dosbatch, matlab, tex 2008-12-14 18:02:11 +00:00
sql.c sql.c 2009-03-14 22:06:12 +00:00
strlist.c Reformatted code for independence of tab stop setting. 2006-05-30 04:37:13 +00:00
strlist.h Reformatted code for independence of tab stop setting. 2006-05-30 04:37:13 +00:00
tcl.c Reformatted code for independence of tab stop setting. 2006-05-30 04:37:13 +00:00
testing.mak Fixed up test.linux target. 2007-07-31 05:29:37 +00:00
tex.c Added paragraph and subparagraph tags 2008-12-15 01:47:20 +00:00
verilog.c trunk/verilog.c: (Bug #1743330) to undo a fileGetc, we should call fileUngetc. Mixing the "read.c"-level get/unget and "verilog.c"-level get/unget leads to madness and crashes. I first came across this bug in the submitted VHDL parser, which is largely a copy & paste of the Verilog parser, and then ten minutes later, running ctags on a large VHDL codebase, I came across a binary file called "something.v" that caused the original assertion to fail. It wasn't hard to knock up a somewhat more realistic test case. 2007-06-26 05:41:27 +00:00
vhdl.c Eliminate warning for unused parameter. 2009-06-28 16:30:57 +00:00
vim.c Added casting to remove a warning when calling strlen(). 2006-10-24 12:06:19 +00:00
vstring.c trunk/debug.c: 2007-06-15 19:17:02 +00:00
vstring.h Fix potential segmentation violation [Bug #1672834]. 2007-06-07 05:50:32 +00:00
yacc.c Reformatted code for independence of tab stop setting. 2006-05-30 04:37:13 +00:00

README

Exuberant Ctags
===============
Author: Darren Hiebert <dhiebert at users.sourceforge.net>
        http://ctags.sourceforge.net
        Instant Messaging:
          Yahoo! ID     : dbhiebert
          AIM ScreenName: darrenhiebert

Exuberant Ctags is a multilanguage reimplementation of the much-underused
ctags(1) program and is intended to be the mother of all ctags programs. It
generates indexes of source code definitions which are used by a number of
editors and tools. The motivation which drove the development of Exuberant
Ctags was the need for a ctags program which supported generation of tags
for all possible C language constructs (which no other ctags offers), and
because most were easily fooled by a number of preprocessor contructs.


Exuberant Ctags offers the following features:

1.  It supports the following languages: Assembler, AWK, ASP, BETA,
    Bourne/Korn/Z Shell, C, C++, C#, COBOL, Eiffel, Erlang, Fortran, Java, Lisp,
    Lua, Makefile, Pascal, Perl, PHP, PL/SQL, Python, REXX, Ruby, Scheme,
    S-Lang, SML (Standard ML), Tcl, Vera, Verilog, VHDL, Vim, and YACC.

2.  It is capable of generating tags for virtually all C language constructs.

3.  It is very robust in parsing code. In particular, the C/C++ parser is
    far less easily fooled by code containing #if preprocessor conditional
    constructs, using a conditional path selection algorithm to resolve
    complicated situations, and a fall-back algorithm when this one fails.

4.  Supports output of Emacs-style TAGS files (i.e. "etags").

5.  User-defined languages, using Posix regular expressions.

6.  Supports UNIX, MSDOS, Windows 95/98/NT/2000/XP, OS/2, QNX, Amiga, QDOS,
    RISC OS, VMS, Macintosh, and Cray. Some pre-compiled binaries are
    available on the web site.


Visit the Exuberant Ctags web site:

    http://ctags.sourceforge.net


Which brings us to the most obvious question:

  Q: Why is it called "Exuberant" ctags?
  A: Because one of the meanings of the word is:

     exuberant : produced in extreme abundance : PLENTIFUL syn see PROFUSE

Compare the tag file produced by Exuberant Ctags with that produced by any
other ctags and you will see how appropriate the name is.


This source code is distributed according to the terms of the GNU General
Public License. It is provided on an as-is basis and no responsibility is
accepted for its failure to perform as expected. It is worth at least as
much as you paid for it!

Exuberant Ctags was originally derived from and inspired by the ctags
program by Steve Kirkendall (kirkenda@cs.pdx.edu) that comes with the Elvis
vi clone (though almost none of the original code remains). This, too, is
freely available.

Please report any problems you find. The two problems I expect to be most
likely are either a tag which you expected but is missing, or a tag created
in error (shouldn't really be a tag). Please include a sample of code (the
definition) for the object which misbehaves.

--
vim:tw=76:sw=4:et: