aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEli Zaretskii2009-04-25 21:13:35 +0000
committerEli Zaretskii2009-04-25 21:13:35 +0000
commit6347c602f2b1d1d48d342dbf540beb215bd64b0c (patch)
treeccde61fdad490d4187f8ad193da065daf4f502aa
parent624a662f9acc017f0fc74fc4b98eb7cb8e73c165 (diff)
downloademacs-6347c602f2b1d1d48d342dbf540beb215bd64b0c.tar.gz
emacs-6347c602f2b1d1d48d342dbf540beb215bd64b0c.zip
(Tags): Clarify the text some more.
-rw-r--r--doc/emacs/maintaining.texi54
1 files changed, 28 insertions, 26 deletions
diff --git a/doc/emacs/maintaining.texi b/doc/emacs/maintaining.texi
index 4a5afac6523..3b29d9e8867 100644
--- a/doc/emacs/maintaining.texi
+++ b/doc/emacs/maintaining.texi
@@ -1480,32 +1480,34 @@ Of course, you should substitute the proper years and copyright holder.
1480@section Tags Tables 1480@section Tags Tables
1481@cindex tags and tag tables 1481@cindex tags and tag tables
1482 1482
1483 A @dfn{tags table} is a description of how program's sources are 1483 A @dfn{tag} is a named subunit of a program or of a document. In
1484broken up into individual source files. It lists the names of the 1484program source code, tags are syntactic elements of the program:
1485component files and the names and positions of the functions (or other 1485functions, subroutines, data types, macros, etc. In a document, tags
1486named subunits) in each file. Commands that search or replace through 1486are chapters, sections, appendices, etc.
1487multiple files use the list of source files to know which files to 1487
1488search. Commands such as @kbd{M-.}, which finds the definition of a 1488 A @dfn{tags table} records the names of the tags extracted from the
1489function, uses the recorded information about the function names and 1489source code of a certain program or from a certain document. Each tag
1490positions to find the source file and the position within that file 1490is listed together with the file name on which it is defined, and the
1491where the function is defined. 1491position of the tag in that file. Tags extracted from generated files
1492 1492reference the original file from which they were generated, rather
1493 Tags tables are stored in files called @dfn{tags table files}. The 1493than the file from which these tags were extracted. Examples of
1494conventional name for a tags table file is @file{TAGS}. 1494generated files include C files generated from Cweb source files, from
1495 1495a Yacc parser, or from Lex scanner definitions; @file{.i} preprocessed
1496 Each entry in the tags table records the name of a tag, the name of 1496C files; and Fortran files produced by preprocessing @file{.fpp}
1497the file that the tag is defined in (implicitly), and the position in 1497source files.
1498that file of the tag's definition. If the file is a generated file, 1498
1499its tags reference the originating source file. Examples of generated 1499 Tags tables are produced by scanning a document or the source code
1500files include C files generated from Cweb source files or from a Yacc 1500of a program with a special program called @samp{etags}, and stored in
1501parser or Lex scanner definitions, @file{.i} preprocessed C files, and 1501files called @dfn{tags table files}. The conventional name for a tags
1502Fortran files produced by preprocessing @file{.fpp} source files. 1502table file is @file{TAGS}.
1503 1503
1504 Just what names from the described files are recorded in the tags table 1504 Emacs uses the information recorded in tags tables in commands that
1505depends on the programming language of the described file. They 1505search or replace through multiple files: these commands use the names
1506normally include all file names, functions and subroutines, and may 1506of the source files recorded in the tags table to know which files to
1507also include global variables, data types, and anything else 1507search. Other commands, such as @kbd{M-.}, which finds the definition
1508convenient. Each name recorded is called a @dfn{tag}. 1508of a function, use the recorded information about the function names
1509and positions to find the source file and the position within that
1510file where the function is defined.
1509 1511
1510@cindex C++ class browser, tags 1512@cindex C++ class browser, tags
1511@cindex tags, C++ 1513@cindex tags, C++