Date: Wed, 21 Aug 1996 10:07:26 -0500 (CDT) From: Darren Hiebert To: Vim User List Subject: Exuberant Ctags-1.4 released Hi folks, Here is an announcement for the latest version of ctags, the official ctags distributed with Vim (and just in time for Vim-4.3). Announcement ============ This is to announce an update of my new, better ctags utility. I am quite pleased with it, and others who have used it have been enthusiastic about the greater reliability and functionality it provides. You can find it now at: http://fly.hiwaay.net/~darren/ctags.html (Official Web site) and very soon at: ftp://ftp.halcyon.com/local/gvr/ctags-1.4.tar.gz sunsite.unc.edu:/pub/Linux/devel/lang/c/ctags-1.4.tar.gz Changes since version 1.3: ========================== o Added ability to recursively parse into class/struct/enum blocks to look for nested class/struct/enum tags and enumeration values. o Added feature to allow a specified list of tokens to be ignored while parsing the file. This is particularly useful when prototyping macros appear before the parameter list. o Corrected problem where declaring a pointer const or volatile resulted in no tag being generated. o Correction to bug causing a function tag to be generated for comma terminated function declarations. o Various portability changes. What is ctags? ============== Ctags generates an index (or "tag") file of C language objects found in a set of file that allows these items to be quickly and easily located by a text editor or other utility. A "tag" signifies a C language object for which an index entry is available (or, alternatively, the index entry created for that object). Alternatively, ctags can generate a cross reference file which lists, in human readable form, information about the various objects found in a set of C language files. Tag index files are supported by the vi(1) editor and its derivatives (such as vim, elvis, stevie, xvi, and others) through the use of the ":ta" command, which locates the object associated with a name appearing in a source file and jumps to the file and line which defines the name. What makes this ctags desirable? ================================ 1. It can find *all* types of C language tags, including all of the following: macro definitions enumerated values (values inside enum{...}) function and method definitions enum/struct/union tags external function prototypes (optional) typedefs variable declarations 2. It is far less easily fooled by code containing #if preprocessor conditional constructs, using a conditional path selection algorithm to resolve complicated choices, and a fall-back algorithm when this one fails. 3. Can also be used to print out a list of selected objects found in source files. 4. Supports UNIX, MSDOS, WindowsNT, Windows95, OS/2 and the Amiga. In some cases, you may need to play with the include files, depending upon you compiler. Some pre-compiled binaries may become available on the web site. I wrote this because of my disappointment with the other ctags utilities that are available. However, it does have a couple of minor limitations (you be the judge): 1) Support for C++ is limited. 2) Supports only C; not Lisp, shell scripts, or anything else you might think of. LSM Entry: ========== Begin3 Title: Exuberant Ctags Version: 1.4 Entered-date: 20AUG96 Description: A better ctags which generates tags for all possible tag types: macro definitions, enumerated values (values inside enum{...}), function and method definitions, enum/struct/union tags, external function prototypes (optional), typedefs, and variable declarations. It is far less easily fooled by code containing #if preprocessor conditional constructs, using a conditional path selection algorithm to resolve complicated choices, and a fall-back algorithm when this one fails. Can also be used to print out a list of selected objects found in source files. Keywords: ctags, tags, exuberant Author: darren@sirsi.com (Darren Hiebert) darren@hiwaay.net (Darren Hiebert) Primary-site: sunsite.unc.edu /pub/Linux/devel/lang/c 29kB ctags-1.4.tar.gz Alternate-site: ftp.halcyon.com /local/gvr 29kB ctags-1.4.tar.gz Original-site: http://fly.hiwaay.net/~darren 29kB archives/ctags-1.4.tar.gz Platforms: UNIX, MSDOS, WindowsNT, Windows95, OS/2, Amiga Copying-policy: Public domain End ---------------------------------------------------------------------------- Darren Hiebert SIRSI Corporation http://fly.hiwaay.net/~darren Huntsville, AL (205) 922-9820 "I'd give my right arm to be ambidextrous" ----------------------------------------------------------------------------