33.2 Tags Tables
A tags table is a description of how a multi-file program is
broken up into files. It lists the names of the component files and the
names and positions of the functions (or other named subunits) in each
file. Grouping the related files makes it possible to search or replace
through all the files with one command. Recording the function names
and positions makes possible the M-. command which finds the
definition of a function by looking up which of the files it is in.
Tags tables are stored in files called tags table files. The
conventional name for a tags table file is TAGS.
Each entry in the tags table records the name of one tag, the name of the
file that the tag is defined in (implicitly), and the position in that
file of the tag's definition. When a file parsed by etags
is
generated from a different source file, like a C file generated from a
Cweb source file, the tags of the parsed file reference the source
file.
Just what names from the described files are recorded in the tags table
depends on the programming language of the described file. They
normally include all file names, functions and subroutines, and may
also include global variables, data types, and anything else
convenient. Each name recorded is called a tag.
See also the Ebrowse facility, which is tailored for C++.
See Ebrowse.