Fork of ctags with Ada support
Go to file
dhiebert 6f67904a81 Incorporated corrections submitted by Christos Kontas.
git-svn-id: svn://svn.code.sf.net/p/ctags/code/trunk@750 c5d04d22-be80-434c-894e-aa346cc9e8e8
2010-01-26 03:35:37 +00:00
Eiffel Fixed comment and contracts. 2003-07-26 16:26:36 +00:00
Test Added support for new "detachable" keyword. 2009-10-29 02:18:04 +00:00
gnu_regex Updated to use regex code from glibc. 2009-07-04 05:53:16 +00:00
website Added link to Dreamweaver IDE 2009-08-12 03:23:26 +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 Fixed up files relating to new parsers added by David Fishburn. 2009-07-09 20:54:01 +00:00
Makefile.in Updated to support autoconf-2.6. 2009-07-04 05:29:28 +00:00
NEWS Added support for new "detachable" keyword. 2009-10-29 02:18:04 +00:00
README trunk/vhdl.c: add Nicolas Vincent's VHDL parser. 2008-04-19 03:54:17 +00:00
ant.c fix ant regexes 2009-09-08 23:19:41 +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 Incorporated corrections submitted by Christos Kontas. 2010-01-26 03:35:37 +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 Fixed up files relating to new parsers added by David Fishburn. 2009-07-09 20:54:01 +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 Added support for new "attached" keyword. 2009-11-06 02:44:42 +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 Flex needed an else if condition instead of a following if condition 2009-07-30 11:34:23 +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 up files relating to new parsers added by David Fishburn. 2009-07-09 20:54:01 +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 Removed unnecessary intermediate variable. 2009-07-06 03:31:00 +00:00
keyword.h trunk/eiffel.c: 2008-04-20 23:21:35 +00:00
lisp.c Added support for Objective Caml (OCaml) language, provided by Vincent Berthoux [Patch #2738723]. 2009-07-07 03:40:50 +00:00
lregex.c Resolved compiler warnings with gcc-4.2.1 compiler. 2009-11-06 02:33:37 +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 Fixed host architecture on Snow Leopard. 2009-11-06 02:47:09 +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 Fixed up files relating to new parsers added by David Fishburn. 2009-07-09 20:54:01 +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 Updated to handle new regex support. 2009-07-09 20:53:19 +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 Fixed up files relating to new parsers added by David Fishburn. 2009-07-09 20:54:01 +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
ocaml.c Added support for Objective Caml (OCaml) language, provided by Vincent Berthoux [Patch #2738723]. 2009-07-07 03:40:50 +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 Added support for Objective Caml (OCaml) language, provided by Vincent Berthoux [Patch #2738723]. 2009-07-07 03:40:50 +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 php: classes can be final 2009-08-20 23:33:54 +00:00
python.c Merged Geany commit 4125: Don't parse comments after import statements and other tags. 2009-08-26 13:18:03 +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 Resolved compiler warnings with gcc-4.2.1 compiler. 2009-11-06 02:33:37 +00:00
sort.h Reformatted code for independence of tab stop setting. 2006-05-30 04:37:13 +00:00
source.mak Moved nesting level functions from separate file into python.c. 2009-07-07 03:55:23 +00:00
sql.c SQL Parser. 2009-10-27 02:42:55 +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 Synchronized the python parser with the geany tagmanager, including the following geany commits: 2009-07-05 15:38:06 +00:00
tex.c Tex has broadened the characters allowed in a tag. 2009-08-23 18:09:55 +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 Added new macro for reading last character of vString. 2009-07-07 03:46:59 +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: