Next: Emerge, Previous: Change Log, Up: Maintaining
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.