ctags man page on SmartOS

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

CTAGS(1)							      CTAGS(1)

       ctags - create a tags file for use with ex and vi

       /usr/bin/ctags [-aBFtuvwx] [-f tagsfile] file...

       /usr/xpg4/bin/ctags [-aBFuvwx] [-f tagsfile] file...

       The  ctags  utility  makes  a tags file for ex(1) from the specified C,
       C++, Pascal, FORTRAN, yacc(1), and  lex(1) sources. A tags  file	 gives
       the  locations  of  specified objects (in this case functions and type‐
       defs) in a group of files.  Each line of the  tags  file	 contains  the
       object name, the file in which it is defined, and an address specifica‐
       tion for the object definition. Functions are searched with a  pattern,
       typedefs	 with  a line number.  Specifiers are given in separate fields
       on the line, separated by SPACE or TAB characters. Using the tags file,
       ex can quickly find these objects' definitions.

       Normally,   ctags  places  the  tag descriptions in a file called tags;
       this may be overridden with the -f option.

       Files with names ending in  .c or .h are assumed to be either C or  C++
       source files and are searched for C/C++	routine and macro definitions.
       Files with names ending in .cc, .C, or  .cxx, are  assumed  to  be  C++
       source  files.  Files  with  names ending in .y are assumed to be  yacc
       source files. Files with names ending in .l  are	 assumed  to  be   lex
       files.	Others are first examined to see if they contain any Pascal or
       FORTRAN routine definitions; if not, they are processed	again  looking
       for C  definitions.

       The tag main is treated specially in C or C++ programs.	The tag formed
       is created by prepending M to file, with a trailing  .c ,  .cc  .C,  or
       .cxx  removed,  if  any, and leading path name components also removed.
       This makes use of ctags practical in directories	 with  more  than  one

       The  precedence of the options that pertain to printing is -x, -v, then
       the remaining options. The following options are supported:

		      Appends output to an existing tags file.

		      Uses backward searching patterns (?...?).

       -f tagsfile
		      Places the tag descriptions in a	file  called  tagsfile
		      instead of tags.

		      Uses forward searching patterns (/.../) (default).

		      Creates  tags  for typedefs. /usr/xpg4/bin/ctags creates
		      tags for typedefs by default.

		      Updates the specified files in tags, that is, all refer‐
		      ences  to	 them  are  deleted,  and  the	new values are
		      appended to the file. Beware: this option is implemented
		      in  a  way  that is rather slow; it is usually faster to
		      simply rebuild the tags file.

		      Produces on the standard output  an  index  listing  the
		      function	name,  file name, and page number (assuming 64
		      line pages). Since the output will be sorted into	 lexi‐
		      cographic	 order,	 it  may  be desired to run the output
		      through sort -f.

		      Suppresses warning diagnostics.

		      Produces a list of object names,	the  line  number  and
		      file  name on which each is defined, as well as the text
		      of that line and prints this  on	the  standard  output.
		      This  is	a  simple index which can be printed out as an
		      off-line readable function index.

       The following file operands are supported:

		   Files with basenames ending with the .c suffix are  treated
		   as C-language source code.

		   Files  with basenames ending with the .h suffix are treated
		   as C-language source code.

		   Files with basenames ending with the .f suffix are  treated
		   as FORTRAN-language source code.

       The  -v	option	is  mainly  used with vgrind which will be part of the
       optional BSD Compatibility Package.

       Example 1 Producing entries in alphabetical order

       Using ctags with the -v option produces entries in an order  which  may
       not  always be appropriate for vgrind. To produce results in alphabeti‐
       cal order, you may want to run the output through sort -f.

	 example% ctags -v filename.c filename.h | sort -f > index
	 example% vgrind -x index

       Example 2 Building a tags file

       To build a tags file for C sources in a directory hierarchy  rooted  at
       sourcedir, first create an empty tags file, and then run	 find(1)

	 example% cd sourcedir	; rm -f tags ; touch tags
	 example% find . \( -name SCCS -prune -name \\
		'*.c' -o -name '*.h' \) -exec ctags -u {} \;

       Notice that spaces must be entered exactly as shown.

       See  environ(5) for descriptions of the following environment variables
       that affect the execution of ctags: LANG, LC_ALL, LC_COLLATE, LC_CTYPE,

       The following exit values are returned:

	     Successful completion.

	     An error occurred.

	       output tags file

       │Interface Stability │ Standard	      │

       ex(1),  lex(1),	vgrind(1),  vi(1), yacc(1), attributes(5), environ(5),

       Recognition of functions, subroutines, and procedures for  FORTRAN  and
       Pascal  is  done in a very simpleminded way. No attempt is made to deal
       with block structure; if you have two Pascal  procedures	 in  different
       blocks with the same name, you lose.

       The  method  of	deciding  whether  to look for C or Pascal and FORTRAN
       functions is a hack.

       The ctags utility does not know about #ifdefs.

       The ctags utility should know about Pascal types. Relies on  the	 input
       being  well  formed  to detect typedefs. Use of -tx shows only the last
       line of typedefs.

				 Mar 18, 1997			      CTAGS(1)

List of man pages available for SmartOS

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]
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