mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2024-12-15 09:47:20 +00:00
(Tags): Clarify the text some more.
This commit is contained in:
parent
e8025f0e20
commit
7be4f7c06d
@ -1480,34 +1480,34 @@ Of course, you should substitute the proper years and copyright holder.
|
||||
@section Tags Tables
|
||||
@cindex tags and tag tables
|
||||
|
||||
A @dfn{tag} is a named subunit of a program or of a document. In
|
||||
program source code, tags are syntactic elements of the program:
|
||||
functions, subroutines, data types, macros, etc. In a document, tags
|
||||
are chapters, sections, appendices, etc.
|
||||
A @dfn{tag} is a reference to a subunit in a program or in a
|
||||
document. In program source code, tags reference syntactic elements
|
||||
of the program: functions, subroutines, data types, macros, etc. In a
|
||||
document, tags reference chapters, sections, appendices, etc. Each
|
||||
tag specifies the file name on which the corresponding subunit is
|
||||
defined, and the position of the subunit's definition in that file.
|
||||
|
||||
A @dfn{tags table} records the names of the tags extracted from the
|
||||
source code of a certain program or from a certain document. Each tag
|
||||
is listed together with the file name on which it is defined, and the
|
||||
position of the tag in that file. Tags extracted from generated files
|
||||
reference the original file from which they were generated, rather
|
||||
than the file from which these tags were extracted. Examples of
|
||||
generated files include C files generated from Cweb source files, from
|
||||
a Yacc parser, or from Lex scanner definitions; @file{.i} preprocessed
|
||||
C files; and Fortran files produced by preprocessing @file{.fpp}
|
||||
source files.
|
||||
A @dfn{tags table} records the tags extracted by scanning the source
|
||||
code of a certain program or a certain document. Tags extracted from
|
||||
generated files reference subunits in the original files, rather than
|
||||
the generated files that were scanned during tag extraction. Examples
|
||||
of generated files include C files generated from Cweb source files,
|
||||
from a Yacc parser, or from Lex scanner definitions; @file{.i}
|
||||
preprocessed C files; and Fortran files produced by preprocessing
|
||||
@file{.fpp} source files.
|
||||
|
||||
Tags tables are produced by scanning a document or the source code
|
||||
of a program with a special program called @samp{etags}, and stored in
|
||||
files called @dfn{tags table files}. The conventional name for a tags
|
||||
table file is @file{TAGS}.
|
||||
To produce tags tables, you use the @samp{etags} command, submitting
|
||||
it a document or the source code of a program. @samp{etags} writes
|
||||
the tags to files called @dfn{tags table files}, or @dfn{tags file} in
|
||||
short. The conventional name for a tags file is @file{TAGS}.
|
||||
|
||||
Emacs uses the information recorded in tags tables in commands that
|
||||
search or replace through multiple files: these commands use the names
|
||||
of the source files recorded in the tags table to know which files to
|
||||
search. Other commands, such as @kbd{M-.}, which finds the definition
|
||||
of a function, use the recorded information about the function names
|
||||
and positions to find the source file and the position within that
|
||||
file where the function is defined.
|
||||
search or replace through multiple source files: these commands use
|
||||
the names of the source files recorded in the tags table to know which
|
||||
files to search. Other commands, such as @kbd{M-.}, which finds the
|
||||
definition of a function, use the recorded information about the
|
||||
function names and positions to find the source file and the position
|
||||
within that file where the function is defined.
|
||||
|
||||
@cindex C++ class browser, tags
|
||||
@cindex tags, C++
|
||||
|
Loading…
Reference in New Issue
Block a user