Mercurial > hg > xemacs-beta
diff man/xemacs/programs.texi @ 458:c33ae14dd6d0 r21-2-44
Import from CVS: tag r21-2-44
author | cvs |
---|---|
date | Mon, 13 Aug 2007 11:42:25 +0200 |
parents | abe6d1db359e |
children | 223736d75acb |
line wrap: on
line diff
--- a/man/xemacs/programs.texi Mon Aug 13 11:41:26 2007 +0200 +++ b/man/xemacs/programs.texi Mon Aug 13 11:42:25 2007 +0200 @@ -1028,6 +1028,13 @@ global variables, data types, and anything else convenient. Each name recorded is called a @dfn{tag}. +@cindex C++ class browser, tags +@cindex tags, C++ +@cindex class browser, C++ +@cindex Ebrowse +The Ebrowse is a separate facility tailored for C++, with tags and a +class browser. @xref{,,, ebrowse, Ebrowse User's Manual}. + @menu * Tag Syntax:: Tag syntax for various types of code and text files. * Create Tags Table:: Creating a tags table with @code{etags}. @@ -1038,7 +1045,7 @@ * List Tags:: Listing and finding tags defined in a file. @end menu -@node Tag Syntax, Create Tags Table, Tags, Tags +@node Tag Syntax @subsection Source File Tag Syntax Here is how tag syntax is defined for the most popular languages: @@ -1077,7 +1084,7 @@ tag.@refill Other commands can make tags as well, if you specify them in the -environment variable @code{TEXTAGS} before invoking @code{etags}. The +environment variable @env{TEXTAGS} before invoking @code{etags}. The value of this environment variable should be a colon-separated list of command names. For example, @@ -1108,8 +1115,34 @@ @item In Ada code, functions, procedures, packages, tasks, and types are -tags. Use the @samp{--packages-only} option to create tags for packages -only. +tags. Use the @samp{--packages-only} option to create tags for +packages only. + +With Ada, it is possible to have the same name used for different +entity kinds (e.g.@: the same name for a procedure and a function). Also, +for things like packages, procedures and functions, there is the spec +(i.e.@: the interface) and the body (i.e.@: the implementation). To +facilitate the choice to the user, a tag value is appended with a +qualifier: + +@table @asis +@item function + @kbd{/f} +@item procedure + @kbd{/p} +@item package spec + @kbd{/s} +@item package body + @kbd{/b} +@item type + @kbd{/t} +@item task + @kbd{/k} +@end table + +So, as an example, @kbd{M-x find-tag bidule/b} will go directly to the +body of the package @var{bidule} while @kbd{M-x find-tag bidule} will +just search for any tag @var{bidule}. @item In assembler code, labels appearing at the beginning of a line, @@ -1132,6 +1165,9 @@ In Fortran code, functions, subroutines and blockdata are tags. @item +In makefiles, targets are tags. + +@item In Objective C code, tags include Objective C definitions for classes, class categories, methods, and protocols. @@ -1145,7 +1181,7 @@ to tag global variables. @item -In Postscript code, the tags are the functions. +In PostScript code, the tags are the functions. @item In Prolog code, a tag name appears at the left margin. @@ -1155,10 +1191,10 @@ generate a tag. @end itemize - You can also generate tags based on regexp matching -(@pxref{Etags Regexps}) to handle other formats and languages. + You can also generate tags based on regexp matching (@pxref{Etags +Regexps}) to handle other formats and languages. -@node Create Tags Table, Etags Regexps, Tag Syntax, Tags +@node Create Tags Table @subsection Creating Tags Tables @cindex @code{etags} program @@ -1251,7 +1287,7 @@ a list of all the available @code{etags} options, together with a short explanation. -@node Etags Regexps, Select Tags Table, Create Tags Table, Tags +@node Etags Regexps @subsection Etags Regexps The @samp{--regex} option provides a general way of recognizing tags