Format the Texinfo file with the shell command
tex followed by
the name of the Texinfo file. This command produces a formatted
DVI file as well as several auxiliary files containing indices,
cross references, etc. The DVI file (for DeVice Independent
file) can be printed on a wide variety of printers.
tex formatting command itself does not sort the indices; it
writes an output file of unsorted index data. This is a misfeature of
texi2dvi command automatically generates indices;
see section Format using
generate a printed index after running the
tex command, you first
need a sorted index to work from. The
texindex command sorts
indices. (The source file `texindex.c' comes as part of the
standard GNU distribution and is usually installed when Emacs is
tex formatting command outputs unsorted index files under
names that obey a standard convention. These names are the name of
your main input file to the
tex formatting command, with
everything after the first period thrown away, and the two letter
names of indices added at the end. For example, the raw index output
files for the input file `foo.texinfo' would be `foo.cp',
`foo.vr', `foo.fn', `foo.tp', `foo.pg' and
`foo.ky'. Those are exactly the arguments to give to
Or else, you can use `??' as "wild-cards" and give the command in this form:
This command will run
texindex on all the unsorted index files,
including any that you have defined yourself using
@defcodeindex. (You may execute `texindex foo.??'
even if there are similarly named files with two letter extensions
that are not index files, such as `foo.el'. The
command reports but otherwise ignores such files.)
For each file specified,
texindex generates a sorted index file
whose name is made by appending `s' to the input file name. The
@printindex command knows to look for a file of that name.
texindex does not alter the raw index output file.
After you have sorted the indices, you need to rerun the
formatting command on the Texinfo file. This regenerates a formatted
DVI file with up-to-date index entries.(11)
To summarize, this is a three step process:
texformatting command on the Texinfo file. This generates the formatted DVI file as well as the raw index files with two letter extensions.
texindexon the raw index files to sort them. This creates the corresponding sorted index files.
texformatting command on the Texinfo file. This regenerates a formatted DVI file with the index entries in the correct order. This second run also corrects the page numbers for the cross references. (The tables of contents are always correct.)
You need not run
texindex each time after you run the
tex formatting. If you do not, on the next run, the
formatting command will use whatever sorted index files happen to
exist from the previous use of
texindex. This is usually
OK while you are debugging.