ctags man page on IRIX

Man page or keyword search:  
man Server   31559 pages
apropos Keyword Search (all sections)
Output format
IRIX logo
[printable version]



etags(1)		    GNU Tools			 etags(1)

NAME
       etags, ctags - generate tag file for Emacs, vi

SYNOPSIS
       etags [-aCDGImRVh] [-i file] [-l language]
       [-o tagfile] [-r regexp]
       [--append] [--no-defines] [--no-globals] [--include=file]
       [--ignore-indentation] [--language=language] [--members]
       [--output=tagfile] [--regex=regexp] [--no-regex]
       [--ignore-case-regex=regexp] [--help] [--version] file ...

       ctags [-aCdgImRVh] [-BtTuvwx] [-l language]
       [-o tagfile] [-r regexp]
       [--append] [--backward-search] [--cxref] [--defines]
       [--forward-search] [--globals] [--ignore-indentation]
       [--language=language] [--members] [--output=tagfile]
       [--regex=regexp] [--ignore-case-regex=regexp] [--typedefs]
       [--typedefs-and-c++] [--update] [--no-warn] [--help]
       [--version] file ...

DESCRIPTION
       The `etags' program is used to create a tag table file, in
       a  format  understood  by emacs(1); the `ctags' program is
       used to create a similar table in a format  understood  by
       vi(1).  Both forms of the program understand the syntax of
       C, Objective C, C++, Java, Fortran,  Ada,  Cobol,  Erlang,
       LaTeX,  Emacs  Lisp/Common  Lisp, makefiles, Pascal, Perl,
       Postscript, Python, Prolog, Scheme and most assembler-like
       syntaxes.  Both forms read the files specified on the com
       mand line, and write a tag  table  (defaults:  `TAGS'  for
       etags, `tags' for ctags) in the current working directory.
       Files specified with relative file names will be	 recorded
       in the tag table with file names relative to the directory
       where the tag table resides.  Files specified  with  abso
       lute file names will be recorded with absolute file names.
       The programs recognize the language used in an input  file
       based  on  its  file  name  and	contents.  The --language
       switch can be used to force parsing of the file names fol
       lowing  the  switch according to the given language, over
       riding guesses based on filename extensions.

OPTIONS
       Some options make sense only for the vi	style  tag  files
       produced	 by  ctags;  etags  does not recognize them.  The
       programs accept unambiguous abbreviations for long  option
       names.

       -a, --append
	      Append  to  existing  tag file.  (For vi-format tag
	      files, see also --update.)

       -B, --backward-search
	      Tag files written in the format expected by vi con
	      tain regular expression search instructions; the -B


GNU Tools		    14gen2001				1

etags(1)		    GNU Tools			 etags(1)

	      option writes them  using	 the  delimiter	 `?',  to
	      search  backwards through files.	The default is to
	      use the delimiter `/', to search	forwards  through
	      files.  Only ctags accepts this option.

       --declarations
	      In  C  and derived languages, create tags for func
	      tion declarations, and create tags for extern vari
	      ables unless --no-globals is used.

       -d, --defines
	      Create tag entries for C preprocessor constant def
	      initions and enum constants, too.	 This is the  de
	      fault behavior for etags.

       -D, --no-defines
	      Do  not  create tag entries for C preprocessor con
	      stant definitions and  enum  constants.	This  may
	      make  the	 tags  file  much  smaller if many header
	      files are tagged.	 This is the default behavior for
	      ctags.

       -g, --globals
	      Create  tag entries for global variables in C, C++,
	      Objective C, Java, and Perl.  This is  the  default
	      behavior for etags.

       -G, --no-globals
	      Do  not  tag  global variables.  Typically this re
	      duces the file size by one fourth.  This is the de
	      fault behavior for ctags.

       -i file, --include=file
	      Include  a  note	in  the tag file indicating that,
	      when searching for a tag, one should  also  consult
	      the tags file file after checking the current file.
	      This options is only accepted by etags.

       -I, --ignore-indentation
	      Don't rely on indentation as much	 as  we	 normally
	      do.   Currently,	this  means  not to assume that a
	      closing brace in the  first  column  is  the  final
	      brace  of	 a  function or structure definition in C
	      and C++.

       -l language, --language=language
	      Parse the following files according  to  the  given
	      language.	 More than one such options may be inter
	      mixed with filenames.  Use --help to get a list  of
	      the  available languages and their default filename
	      extensions.  The `auto' language can be used to re
	      store  automatic detection of language based on the
	      file name.  The `none' language may be used to dis
	      able   language  parsing	altogether;  only  regexp

GNU Tools		    14gen2001				2

etags(1)		    GNU Tools			 etags(1)

	      matching is done in this case (see the --regex  op
	      tion).

       -m, --members
	      Create  tag  entries for variables that are members
	      of structure-like constructs in C++,  Objective  C,
	      Java.

       -M, --no-members
	      Do  not  tag member variables.  This is the default
	      behavior.

       --packages-only
	      Only tag packages in Ada files.

       -o tagfile, --output=tagfile
	      Explicit name of file for tag table; overrides  de
	      fault  `TAGS'  or `tags'.	  (But ignored with -v or
	      -x.)

       -r regexp, --regex=regexp, --ignore-case-regex=regexp
	      Make tags based on regexp matching for each line of
	      the files following this option, in addition to the
	      tags made with the standard parsing based	 on  lan
	      guage.   When  using  --regex, case is significant,
	      while it is not with  --ignore-case-regex.  May  be
	      freely intermixed with filenames and the -R option.
	      The regexps are cumulative, i.e. each  option  will
	      add  to  the previous ones.  The regexps are of the
	      form:
		   /tagregexp[/nameregexp]/

	      where tagregexp is used to  match	 the  lines  that
	      must  be tagged.	It should not match useless char
	      acters.  If the match is such that more  characters
	      than  needed  are unavoidably matched by tagregexp,
	      it may be useful to add  a  nameregexp,  to  narrow
	      down  the tag scope.  ctags ignores regexps without
	      a nameregexp.  The syntax of regexps is the same as
	      in  emacs,  augmented  with  intervals  of the form
	      \{m,n\}, as in ed or grep.
	      Here are some examples.  All the regexps are quoted
	      to protect them from shell interpretation.

	      Tag the DEFVAR macros in the emacs source files:
	      --regex='/[ \t]*DEFVAR_[A-Z_ \t(]+"\([^"]+\)"'

	      Tag VHDL files (this example is a single long line,
	      broken here for formatting reasons):
	      --language=none --regex='/[ \t]*\(ARCHITECTURE\|\
	      CONFIGURATION\) +[^ ]* +OF/' --regex='/[ \t]*\
	      \(ATTRIBUTE\|ENTITY\|FUNCTION\|PACKAGE\( BODY\)?\
	      \|PROCEDURE\|PROCESS\|TYPE\)[ \t]+\([^ \t(]+\)/\3/'

GNU Tools		    14gen2001				3

etags(1)		    GNU Tools			 etags(1)

	      Tag TCL files (this last example shows the usage of
	      a tagregexp):
	      --lang=none --regex='/proc[ \t]+\([^ \t]+\)/\1/'

	      A regexp can be preceded by {lang}, thus restricit
	      ing it to match lines of	files  of  the	specified
	      language.	 Use etags --help to obtain a list of the
	      recognised languages.  This feature is particularly
	      useful  inside  regex files.  A regex file contains
	      one regex per line.  Empty lines, and  those  lines
	      beginning with space or tab are ignored.	Lines be
	      ginning with @ are references to regex files  whose
	      name  follows  the @ sign.  Other lines are consid
	      ered  regular  expressions  like	those	following
	      --regex.
	      For example, the command
	      etags --regex=@regex.file *.c
	      reads the regexes contained in the file regex.file.

       -R, --no-regex
	      Don't do any more regexp matching on the	following
	      files.  May be freely intermixed with filenames and
	      the --regex option.

       -t, --typedefs
	      Record typedefs in C code as tags.  Since	 this  is
	      the  default behaviour of etags, only ctags accepts
	      this option.

       -T, --typedefs-and-c++
	      Generate tag entries for	typedefs,  struct,  enum,
	      and  union  tags,	 and C++ member functions.  Since
	      this is the default behaviour of etags, only  ctags
	      accepts this option.

       -u, --update
	      Update  tag  entries for files specified on command
	      line, leaving tag entries for other files in place.
	      Currently,  this is implemented by deleting the ex
	      isting entries for the given files and then rewrit
	      ing  the	new  entries at the end of the tags file.
	      It is often faster to simply rebuild the entire tag
	      file than to use this.  Only ctags accepts this op
	      tion.

       -v, --vgrind
	      Instead of generating a tag file, write  index  (in
	      vgrind  format) to standard output.  Only ctags ac
	      cepts this option.

       -w, --no-warn
	      Suppress warning messages about duplicate	 entries.
	      The  etags program does not check for duplicate en
	      tries, so this option is not allowed with it.

GNU Tools		    14gen2001				4

etags(1)		    GNU Tools			 etags(1)

       -x, --cxref
	      Instead of generating a tag  file,  write	 a  cross
	      reference	 (in  cxref  format)  to standard output.
	      Only ctags accepts this option.

       -h, -H, --help
	      Print usage information.

       -V, --version
	      Print the current version of the program	(same  as
	      the version of the emacs etags is shipped with).

SEE ALSO
       `emacs' entry in info; GNU Emacs Manual, Richard Stallman.
       cxref(1), emacs(1), vgrind(1), vi(1).

COPYING
       Copyright (c) 1999 Free Software Foundation, Inc.

       Permission is granted  to  make	and  distribute	 verbatim
       copies  of  this	 manual provided the copyright notice and
       this permission notice are preserved on all copies.

       Permission is granted to copy and distribute modified ver
       sions  of  this	manual	under the conditions for verbatim
       copying, provided that the entire resulting  derived  work
       is  distributed	under  the  terms  of a permission notice
       identical to this one.

       Permission is granted to copy and distribute  translations
       of this manual into another language, under the above con
       ditions for modified versions, except that this permission
       notice  may  be	included  in translations approved by the
       Free Software Foundation instead of in  the  original  En
       glish.

GNU Tools		    14gen2001				5

[top]

List of man pages available for IRIX

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net