summaryrefslogtreecommitdiff
path: root/dviware/beebe/doc/gnuindex.sty
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /dviware/beebe/doc/gnuindex.sty
Initial commit
Diffstat (limited to 'dviware/beebe/doc/gnuindex.sty')
-rw-r--r--dviware/beebe/doc/gnuindex.sty36
1 files changed, 36 insertions, 0 deletions
diff --git a/dviware/beebe/doc/gnuindex.sty b/dviware/beebe/doc/gnuindex.sty
new file mode 100644
index 0000000000..fc6392fc7e
--- /dev/null
+++ b/dviware/beebe/doc/gnuindex.sty
@@ -0,0 +1,36 @@
+% <TEX.LATEX>GNUINDEX.STY.2, 18-Oct-86 15:44:17, Edit by BEEBE
+% Indexing macros for LaTeX and TeXIDX
+% Usage:
+% \INDEX{sortkey}{primaryentry}
+% \SUBINDEX{sortkey}{primaryentry}{secondaryentry}
+%
+% For \SUBINDEX, the {secondary} field is automatically appended
+% to the sort key, but separated from it by an ASCII <TAB>
+% character, so that
+% \SUBINDEX{foo}{foo}{bar}
+% sorts before
+% \SUBINDEX{foo}{foo}{baz}
+% and
+% \INDEX{foo bar}{foo bar}{bar}
+%
+% The keys will be "foo<TAB>{bar}", "foo<TAB>{baz}", and "foo
+% bar", respectively.
+%
+ \def\initial#1{\bigbreak{\raggedright\large\bf #1}\kern 2pt\penalty3000}
+ \def\entry#1#2{\item {#1}, #2}
+ \def\primary#1{\item {#1}}
+ \def\secondary#1#2{\subitem {#1},#2}
+
+ \def\INDEX{\@bsphack\begingroup\@sanitize\@WRINDEX\@indexfile}
+ \def\@WRINDEX#1#2#3{\let\thepage\relax
+ \xdef\@gtempa{\write#1{\string
+ \entry{#2}{\thepage}{#3}}}\endgroup\@gtempa
+ \if@nobreak \ifvmode\nobreak\fi\fi\@esphack}
+%
+ \def\SUBINDEX{\@bsphack\begingroup\@sanitize\@WRSUBINDEX\@indexfile}
+%
+ \def\@WRSUBINDEX#1#2#3#4{\let\thepage\relax
+ \xdef\@gtempa{\write#1{\string
+% NB: #3<tab>#4, NOT #3<space>#4 in the next line
+ \entry{#3 #4}{\thepage}{#3}{#4}}}\endgroup\@gtempa
+ \if@nobreak \ifvmode\nobreak\fi\fi\@esphack}