Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Exuberant ctags fork with rspec support
C
Branch: master
Failed to load latest commit information.
gnu_regex Initial commit
.gitignore Ignore vim swap files
.indent.pro Initial commit
COPYING Initial commit
EXTENDING.html Initial commit
FAQ Initial commit
INSTALL Initial commit
INSTALL.oth Initial commit
MAINTAINERS Initial commit
Makefile Initial commit
Makefile.in Initial commit
NEWS Initial commit
README Initial commit
ant.c Initial commit
ant.o Initial commit
argproc.c Initial commit
args.c Initial commit
args.h Initial commit
args.o Initial commit
asm.c Initial commit
asm.o Initial commit
asp.c Initial commit
asp.o Initial commit
awk.c Initial commit
awk.o Initial commit
basic.c Initial commit
basic.o Initial commit
beta.c Initial commit
beta.o Initial commit
c.c Initial commit
c.o Initial commit
cobol.c Initial commit
cobol.o Initial commit
config.h Initial commit
config.h.in Initial commit
config.log Initial commit
config.status Initial commit
configure Initial commit
configure.ac Initial commit
ctags Initial commit
ctags.1 Initial commit
ctags.h Initial commit
ctags.html Initial commit
ctags.spec Initial commit
debug.c Initial commit
debug.h Initial commit
descrip.mms Initial commit
dosbatch.c Initial commit
dosbatch.o Initial commit
e_amiga.h Initial commit
e_djgpp.h Initial commit
e_mac.h Initial commit
e_msoft.h Initial commit
e_os2.h Initial commit
e_qdos.h Initial commit
e_riscos.h Initial commit
e_vms.h Initial commit
eiffel.c Initial commit
eiffel.o Initial commit
entry.c Initial commit
entry.h Initial commit
entry.o Initial commit
erlang.c Initial commit
erlang.o Initial commit
flex.c Initial commit
flex.o Initial commit
fortran.c Initial commit
fortran.o Initial commit
general.h Initial commit
get.c Initial commit
get.h Initial commit
get.o Initial commit
html.c Initial commit
html.o Initial commit
jscript.c Initial commit
jscript.o Initial commit
keyword.c Initial commit
keyword.h Initial commit
keyword.o Initial commit
lisp.c Initial commit
lisp.o Initial commit
lregex.c Initial commit
lregex.o Initial commit
lua.c Initial commit
lua.o Initial commit
mac.c Initial commit
magic.diff Initial commit
main.c Initial commit
main.h Initial commit
main.o Initial commit
maintainer.mak Initial commit
make.c Initial commit
make.o Initial commit
matlab.c Initial commit
matlab.o Initial commit
mk_bc3.mak Initial commit
mk_bc5.mak Initial commit
mk_djg.mak Initial commit
mk_manx.mak Initial commit
mk_mingw.mak Initial commit
mk_mpw.mak Initial commit
mk_mvc.mak Initial commit
mk_os2.mak Initial commit
mk_qdos.mak Initial commit
mk_sas.mak Initial commit
mkinstalldirs Initial commit
ocaml.c Initial commit
ocaml.o Initial commit
options.c Initial commit
options.h Initial commit
options.o Initial commit
parse.c Initial commit
parse.h Initial commit
parse.o Initial commit
parsers.h Initial commit
pascal.c Initial commit
pascal.o Initial commit
perl.c Initial commit
perl.o Initial commit
php.c Initial commit
php.o Initial commit
python.c Initial commit
python.o Initial commit
qdos.c Initial commit
read.c Initial commit
read.h Initial commit
read.o Initial commit
readtags.c Initial commit
readtags.h Initial commit
readtags.o Initial commit
rexx.c Initial commit
rexx.o Initial commit
routines.c Initial commit
routines.h Initial commit
routines.o Initial commit
ruby.c Initial commit
ruby.o Initial commit
scheme.c Initial commit
scheme.o Initial commit
sh.c Initial commit
sh.o Initial commit
slang.c Initial commit
slang.o Initial commit
sml.c Initial commit
sml.o Initial commit
sort.c Initial commit
sort.h Initial commit
sort.o Initial commit
source.mak Initial commit
sql.c Initial commit
sql.o Initial commit
strlist.c Initial commit
strlist.h Initial commit
strlist.o Initial commit
tcl.c Initial commit
tcl.o Initial commit
tex.c Initial commit
tex.o Initial commit
verilog.c Initial commit
verilog.o Initial commit
vhdl.c Initial commit
vhdl.o Initial commit
vim.c Initial commit
vim.o Initial commit
vstring.c Initial commit
vstring.h Initial commit
vstring.o Initial commit
yacc.c Initial commit
yacc.o Initial commit

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:
Something went wrong with that request. Please try again.