## Standard ##
Die Standard-Methode zur Erzeugung eines [Stichwortverzeichnisses (oder Index)][1] ist die Verwendung des `makeidx`-Pakets. Präambel:
\usepackage{makeidx}
\makeindex
Im Dokument verwendet man `\index{Eintrag}` oder auch `\index{Eintrag!Untereintrag}`. Dort, wo das Stichwortverzeichnis später stehen soll, verwendet man
\printindex
Übersetzt wird das ganze durch
1. pdfLaTeX, XeLaTeX oder LuaLaTeX
2. makeindex
3. pdfLaTeX, XeLaTeX oder LuaLaTeX
Der zweite Schritt lautet für ein Dokument `test.tex`
makeindex test
Beschrieben wird das ganze in der [`makeindex` Dokumentation][2].
Ein Beispiel:
% arara: pdflatex
% arara: makeindex
% arara: pdflatex
\documentclass{scrartcl}
\usepackage[T1]{fontenc}
\usepackage{selinput}
\SelectInputMappings{
adieresis={ä},
germandbls={ß}
}
\usepackage[ngerman]{babel}
\usepackage{makeidx}
\makeindex
\begin{document}
\section{Abschnitt}
Die ``Dreiecke''\index{Dreieck} lassen sich in Gruppen aufteilen (``Haus der
Dreiecke''\index{Dreieck!Haus der Dreiecke}\index{Haus der Dreiecke}):
\section{Der ``Satz des Pythagoras''}
\index{Satz des Pythagoras}\index{Pythagoras!Satz des}
(nach ``Pythagoras''\index{Pythagoras} von Samos, ca.~570~v.u.Z.)
\printindex
\end{document}
![alt text][3]
## Automatisierung ##
Etwas bequemer wird es, wenn man `imakeidx` verwendet, weil dann `makeindex` automatisch aufgerufen wird. Außerdem stellt das Paket eine bequeme Schnittstelle zur Formatierung bereit:
% arara: pdflatex
\documentclass{scrartcl}
\usepackage[T1]{fontenc}
\usepackage{selinput}
\SelectInputMappings{
adieresis={ä},
germandbls={ß}
}
\usepackage[ngerman]{babel}
\usepackage{imakeidx}
\makeindex
\begin{document}
\section{Abschnitt}
Die ``Dreiecke''\index{Dreieck} lassen sich in Gruppen aufteilen (``Haus der
Dreiecke''\index{Dreieck!Haus der Dreiecke}\index{Haus der Dreiecke}):
\section{Der ``Satz des Pythagoras''}
\index{Satz des Pythagoras}\index{Pythagoras!Satz des}
(nach ``Pythagoras''\index{Pythagoras} von Samos, ca.~570~v.u.Z.)
\printindex
\end{document}
![alt text][4]
----------
## Formatierung ##
Um die Formatierung der Spalten im Index zu ändern, muss man sich eine Index-Stil-Datei mit der Endung `ist` erstellen. Diese kann man `makeindex` als Option mitteilen. Für eine Datei `mystyle.ist`:
makeindex -s mystyle
oder mit `arara`:
% arara: makeindex: { style: mystyle }
oder mit `imakeidx`:
\makeindex[options=-s mystyle]
Eine Stildatei hat eine eigene Syntax, wie das folgende Beispiel gleich verdeutlichen wird:
% arara: pdflatex
\documentclass{scrartcl}
\usepackage[T1]{fontenc}
\usepackage{selinput}
\SelectInputMappings{
adieresis={ä},
germandbls={ß}
}
\usepackage[ngerman]{babel}
\usepackage{imakeidx}
\makeindex[columns=3, options=-s mystyle]
\usepackage{filecontents}
\begin{filecontents}{mystyle.ist}
headings_flag 1 % wir benutzen Überschriften
heading_prefix "{\\bfseries " % und setzen sie fett
heading_suffix "\\hfil}\\nopagebreak\n"% und links, nach ihnen kein Seitenumbruch
delim_0 "\\dotfill" % Punktzeile zwischen Einträgen und Seitenzahlen (Ebene 0)
delim_1 "\\dotfill" % Punktzeile zwischen Einträgen und Seitenzahlen (Ebene 1)
delim_2 "\\dotfill" % Punktzeile zwischen Einträgen und Seitenzahlen (Ebene 2)
delim_r "--" % Trenner zwischen Start und Ende eines Seitenbereiches
suffix_2p "\\,f." % Suffix bei einem bereich aus 2 Seiten
suffix_3p "\\,ff." % Suffix bei einem bereich aus 3 Seiten
\end{filecontents}
\begin{document}
\section{Abschnitt}
Die ``Dreiecke''\index{Dreieck} lassen sich in Gruppen aufteilen (``Haus der
Dreiecke''\index{Dreieck!Haus der Dreiecke}\index{Haus der Dreiecke}):
\newpage
\section{Der ``Satz des Pythagoras''}
\index{Satz des Pythagoras}\index{Pythagoras!Satz des}
(nach ``Pythagoras''\index{Pythagoras} von Samos, ca.~570~v.u.Z.)
\index{foo}
\section{Abschnitt}
Die ``Dreiecke''\index{Dreieck} lassen sich in Gruppen aufteilen (``Haus der
Dreiecke''\index{Dreieck!Haus der Dreiecke}\index{Haus der Dreiecke}):
\newpage
\section{Abschnitt}
Die ``Dreiecke''\index{Dreieck} lassen sich in Gruppen aufteilen (``Haus der
Dreiecke''\index{Dreieck!Haus der Dreiecke}\index{Haus der Dreiecke}):
\newpage
\section{Der ``Satz des Pythagoras''}
\index{Satz des Pythagoras}\index{Pythagoras!Satz des}
(nach ``Pythagoras''\index{Pythagoras} von Samos, ca.~570~v.u.Z.)
\printindex
\end{document}
![alt text][5]
Alle Optionen, die `makeindex` versteht, sowie die Anweisungen, die man in einer Stildatei verwenden kann, sind z.B. in [`makeindex.hlp`][6] (eine reine Textdatei, lässt sich also durch den bevorzugten (TeX-) Editor öffnen) beschrieben.
----------
Auf der LaTeX-Seite gibt es da auch eine Reihe Pakete, z. B. [`idxlayout`][7]
[1]: http://de.wikipedia.org/wiki/Register_%28Nachschlagewerk%29
[2]: http://texdoc.net/pkg/makeindex
[3]: http://texwelt.de/wissen/upfiles/index1_1.png
[4]: http://texwelt.de/wissen/upfiles/index2_1.png
[5]: http://texwelt.de/wissen/upfiles/index3.png
[6]: http://mirrors.ctan.org/indexing/makeindex/doc/makeindex.hlphttp://mirrors.ctan.org/indexing/makeindex/doc/makeindex.hlp
[7]: http://www.ctan.org/pkg/idxlayout