2 The indexing programs here are modified from the versions printed in
3 Bentley & Kernighan, EP-ODD V1 #1. The programs are also described in
4 AT&T Bell Laboratories Computing Science Technical Report No. 128,
5 ``Tools for Printing Indexes''.
7 Changes from the published version derive from further experience
8 after the paper was frozen, plus some cleanup and corrections by Joe
9 Kruskal (to whom many thanks), plus some very local features for
10 printing the AMPL book.
16 makes the appropriate files executable. since this file
17 is not executable, use by typing "sh <install"
20 these two files provide test input. make.index produces
21 standard output and files
22 foo[1-9] foo.regular foo.see foo.hier foo.all
23 from ix.test and see.terms. to make sure things
24 work when you first unbundle this file, type
26 make.index ix.test >foo.ix
27 troff -ms foo.ix >foo.out
28 and then examine the troff output foo.out
30 removes the garbage files left around for debugging
33 CHANGES FROM THE PAPER
36 handles "see" file see.terms. A line like
37 algorithms<tab>searching, sorting
38 generates in the final index
39 algorithms see searching, sorting
40 a 3rd field of %also makes it
41 algorithms see also searching, sorting
45 minor change to defend against bug in some versions of "sort"
47 moved here (and changed as necessary) to remove subtle bug.
50 -u option on sort removes duplicate entries on same page
53 page number concatenation removed from here ...
55 and moved to here. also commas between numbers now
56 inserted here (to make see terms easier)
58 literals protected differently in gsub commands.
59 rules for non-alpha index terms slightly richer:
60 purely nonalphabetic lines first
61 lines with leading digits next
64 changed to match changes above, and to rely on font-changing {}
66 uses -d option for "telephone directory" order.
68 a rather special purpose version to replace runs of items
69 with a common one or two word prefix and replace them by
70 a head word and indented lines.
71 this also does some rearrangement to bring see terms to the top,
72 and terms with formatting info to the bottom; this is not
73 always the right thing to do.
75 letter changes (.YY) determined by first letter.
76 minor rearrangement of how output line is created.
77 commas no longer added here.
78 [Some systems have a disk-formatting program called format.]
80 new program that catches subtle errors in the data