Die Erstellung eines Index oder Stichwortverzeichnisses ist gerade bei größeren LaTeX-Dokumenten empfehlenswert.
Es stehen dabei zwei Pakte zur Verfügung:
-
- makeindex
und
- xindy
Hier wird die Erstellung eines Stichwortverzeichnis anhand des makeindex-Pakets aufgezeigt.
1. Schritt: Einträge in der Präambel und im Text
In der Präambel des Dokuments müssen zwei Befehle eingetragen werden:
\usepackage{makeidx}
und
\makeindex
An der Stelle im Text, an der das Indexverzeichnis später ausgegeben werden soll, muss ein weiterer Befehl eingetragen werden:
\printindex
.
2. Schritt: Anlegen der Datei Index.ist
Im Beisiel nehmen wir folgende Ausgangslage an. Die Hauptdatei, also die Datei die den Text enthält, heißt hauptdatei.tex, die Datei die den Index enthält heißt hauptdatei.idx.
Es ist nun notwendig eine Datei zu erstellen, die die Formatierungsregeln für den Index enthält. Dazu wird eine Tex-Datei im gleichen Verzeichnis wie hauptdatei.tex erstellt. Hier heißt sie Index.ist. In die neu erstellte Datei werden nun alle Formatierungsregeln für das Stichwortverzeichnis eingetragen und abgespeichert.
3. Schritt: Stichwörter im Text definieren
Im Text müssen nun die Index-Einträge definiert werden. Dazu stellt das Makeindex-Paket den Befehl
\index{entry}
zur Verfügung. Die festgelegten Indexeinträge werden in hauptdatei.idx gespeichert.
4. Schritt: Index erstellen
Das Erstellen des Index erfordert drei Schritte, die nacheinander auszuführen sind. Nach dem ersten LaTeX-Konvertierungslauf öffnet man eine Konsole und wechselt in das Verzeichnis, wo hauptdatei.tex, hauptdatei.idx und die neu erstellte Datei Index.ist gespeichert sind. Zuerst muss dem Makeindex erklärt werden, dass er auf die Style-Datei Index.ist zugreifen soll. Der Befehl dazu lautet:
makeindex -s Index.ist hauptdatei.idx
Nach dem erfolgreichen Beenden, muss nun ein zweiter LaTeX-Lauf gestartet werden, der das Stichwortverzeichnis mit den Formatierungen in der Ausgabedatei darstellt.
Beispieleintrag von Index.ist
preamble "\\begin{theindex}"
postamble "\n\\end{theindex}\n"
headings_flag 1
heading_prefix "{\\bf "
heading_suffix "}\\nopagebreak%\n \\indexspace\\nopagebreak%"
\page_preference "rRnaA"
item_0 "\n\\item "
item_1 "\n\\item "
item_2 "\n\\item "
delim_0 "\\dotfill "
delim_1 "\\dotfill "
delim_2 "\\dotfill "
delim_r "~--~"
suffix_2p "\\,f."
suffix_3p "\\,ff."
„Deutsche Sortierung“
Ab Version 2.11 bietet Makeindex die Möglichkeit das Indexverzeichnis nach der Norm DIN 5007 zu ordnen. Die Ausgabe bietet zusätzlich noch die Option an, die deutschen Umlaute (ä,ö,ü) und die Sonderzeichen (ß) zu bearbeiten. Zuerst muss in der Index.ist noch ein Eintrag hinzugefügt werden:
quote '+'
Der Befehl zum Index erstellen ist noch ein bisschen zu ändern und zwar muss die Option -g eingeführt werden. Der Befehl lautet dann:
makeindex -g -s Index.ist hauptdatei.idx
5. Problemlösung:
Funktioniert der oben beschriebene Lösungsweg, dann kann noch der Lösungsweg versucht werden:
makeindex hauptdatei.idx
makeindex -g -s Index.ist hauptdatei.idx
Weiterführende Links:
➡ Makeindex auf ctan.org
➡ LRZ-München
➡ http://homepage.mac.com/farwer/latex05/Home_attachments/reader.pdf

ist absolut technik-begeistert und großer Fan von Linux und Open Source. Raspberry Pi Bastler der ersten Stunde und nach wie vor begeistert von dem kleinen Stück Hardware, auf dem er tolle Projekte umsetzt. Teilt hier seine Erfahrungen mit Nextcloud, Pi-hole, YubiKey, Synology und openmediavault und anderen spannenden IT-Themen. Nutzt Markdown und LaTeX zum Dokumentieren seiner Projekte und Gitea zum Versionieren. Sitzt vor einem 49“ Monitor, nutzt Windows und MacOS zum Arbeiten, Linux auf seinen Servern und virtuellen Maschinen und hört dabei Spotify und MP3s und Radio-Streams über seinen RadioPi.