Index » Historie » Revision 6
« Zurück |
Revision 6/17
(Vergleich)
| Weiter »
Martin Kraetke, 18.02.2021 16:54
Index¶
Auszeichnung multipler Indexes und deren Überschriften¶
Wir verwenden das LaTeX-Paket index für die Rohindexerzeugung, sowie Xindy zum Generieren des fertigen Registers.
Deklaration der Index-Typen¶
Das Paket erlaubt mehrere Indexe. Diese werden mit dem \(re)newindex-Befehlen deklariert:
\newindex{<typ>}{<endung rohindex>}{<endung fertiger index>}{<Überschrift>}
Damit der Skriptaufruf später korrekt funktioniert, müssen die beiden Endungen bei nicht-default-Typen dem Schema
<typ>_idx
(Rohindex) bzw. <typ>_ind
(fertiger Index) entsprechen.
Der Default- oder Hauptindex kriegt das Label default
, dessen ÜS lässt sich wie folgt überdefinieren:
\renewindex{default}{idx}{ind}{Personenregister}
Die Index-Einträge für diesen Index werden mit
\index{<Lemma>}
deklariert. Ausgegeben wird der Hauptindex wird mit
\printindex
Angenommen, wir wollen zusätzlich zu diesem noch ein Ortsverzeichnis, dann müssen wir in der Präambel der tex-Datei einen neuen Index-Typ deklarieren:
\newindex{o}{o_idx}{o_ind}{Ortsverzeichnis}
Die Index-Einträge würden dann mit
\index[o]{<Term>}
deklariert, der Index mit
\printindex[o]
ausgegeben.
Aufruf des Index-Skripts¶
Mit dem optionalen Argument kann angegeben werden, welcher Index generiert werden soll. Wird das optionale Argument weggelassen, wird der Hauptindex erzeugt:
./index.sh <tex-Dateiname ohne Endung>
Der Aufruf mit optionalen Argument erzeugt den Neben-Index, z.B.
./index.sh <tex-Dateiname ohne Endung> o
würde das Ortsverzeichnis aus o.g. Beispiel erzeugen. Das Skript muss also für jeden Index einzeln aufgerufen werden.
Generierung des Index¶
Generieung der Indexe durch TeX¶
Heißt: Indexeinträge sind mittels \index[<typ>]{<Lemma>} in TeX kodiert.
lualatex <tex-Dateiname>.tex %% Initialer TeX-Lauf; einsammeln der ÜSen
lualatex <tex-Dateiname>.tex %% Erzeugen des IHV; seitenzahlen verschieben sich ggf.
lualatex <tex-Dateiname>.tex %% Zur Sicherheit...
./index.sh <tex-Dateiname> %% OHNE Endung!
./index.sh <tex-Dateiname> <typ> %% Zweites, optionales Argument für Index-Typ anders als default, s.u.
lualatex <tex-Dateiname>.tex %% Index wird erstmalig ausgegeben, ÜS wird geschrieben
lualatex <tex-Dateiname>.tex %% ÜS(en) für Index(e) in IHV gerendert
lualatex <tex-Dateiname>.tex %% Zur Sicherheit...
Statische Index-Dateien¶
Heißt: <basename>.<typ>_ind
kommt vom Konverter
Bei statischen Indexes darf die index.sh
nicht aufgerufen werden, da sonst die *ind-Dateien überschrieben würden! Alle anderen Schritte sind dieselben; \(re)newindex{}{}{}{}
muss auch hier verwendet werden. Zum einen für die ÜSen, und zum anderen damit \printindex[<typ>]
keine "unknown index type"-Fehler auswirft.
Von Martin Kraetke vor fast 4 Jahren aktualisiert · 6 Revisionen