PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : mehrere Indexe in das Inhaltsverzeichnis und Kopfzeile



marius79
13-09-2010, 17:35
Hallo,

ich habe drei kleine Fragen zu mit dem Paket index erstellten Indexen:

1. In meinem Dokument gibt es ein Personenverzeichnis und einen normalen Index. Beide sollen unnummeriert im Inhaltsverzeichnis erscheinen. Das habe ich bisher noch nicht hinbekommen.

2. Im Seitenkopf wird "Personenverzeichnis" und "Index" iin Großbuchstaben geschrieben, in den normalen Kapiteln aber in Groß- und Kleinbuchstaben. Lässt sich das vereinheitlichen, nach Möglichkeit so, dass auch das Personenverzeichnis und der Index in Groß- und Kleinbuchstaben erscheinen?

3. Der Index soll wie ein Kapitel auf einer ungeraden Seite beginnen. Im unten angehängten Beispiel schließt der direkt nach dem Personenverzeichnis auf der nächsten Seite, einer geraden, an.

Hier ein Minimalbeispiel:

\documentclass[
index=totoc,%
headsepline,%
cleardoublepage=empty,%
]{scrbook}

\usepackage{index}
\usepackage[ngerman]{babel}
\usepackage{blindtext}

\newindex{names}{ndx}{nnd}{Personenverzeichnis}
\makeindex

\begin{document}
\tableofcontents

\chapter{Erstes Kapitel}
A\index{A}

\Blindtext

Max Mustermann\index[names]{Mustermann, Max}

\printindex[names]
\printindex
\end{document}
Um die beiden Verzeichnisse über mehrere Seiten auszudehnen, was für die Sache mit den Kopfzeilen wichtig ist, habe ich die Dateien minibsp.nnd und minibsp.ind folgendermaßen aufgeblasen (bitte verzeiht die under- und overfull box Warnungen):

\begin{theindex}
\providecommand*\lettergroupDefault[1]{}
\providecommand*\lettergroup[1]{%
\par\textbf{#1}\par
\nopagebreak
}

% M
\item Mustermann, Max, 4
\item \Blindtext
\item \blindtext
\end{theindex}


\begin{theindex}
\providecommand*\lettergroupDefault[1]{}
\providecommand*\lettergroup[1]{%
\par\textbf{#1}\par
\nopagebreak
}

% A
\item A, 3
\item \Blindtext
\end{theindex}

Vielen Dank und beste Grüße
Marius

marius79
14-09-2010, 14:29
Für diejenigen, die sich mal mit einem ähnlichen Problem konfrontiert sehen, hier meine momentane Lösung.

Aus index.sty habe ich durch folgende Änderungen myindex.sty gemacht:

1. In meinem Dokument gibt es ein Personenverzeichnis und einen normalen Index. Beide sollen unnummeriert im Inhaltsverzeichnis erscheinen. Das habe ich bisher noch nicht hinbekommen.

index.sty

\@makeschapterhead{\indexname}%
myindex.sty

\addchap{\indexname}%

2. Im Seitenkopf wird "Personenverzeichnis" und "Index" iin Großbuchstaben geschrieben, in den normalen Kapiteln aber in Groß- und Kleinbuchstaben. Lässt sich das vereinheitlichen, nach Möglichkeit so, dass auch das Personenverzeichnis und der Index in Groß- und Kleinbuchstaben erscheinen?
index.sty

\@mkboth{\MakeUppercase\indexname}%
{\MakeUppercase\indexname}%
myindex.sty

\@mkboth{\indexname}%
{\indexname}%

3. Der Index soll wie ein Kapitel auf einer ungeraden Seite beginnen. Im unten angehängten Beispiel schließt der direkt nach dem Personenverzeichnis auf der nächsten Seite, einer geraden, an.
Im zweiten Block \renewenvironment{theindex} ergänzen:

\if@openright\cleardoublepage\else\clearpage\fi%
So funktioniert es bei mir. Unschön ist, dass myindex.sty die Verwendung einer KOMA-Script Klasse voraussetzt, da \addchap ansonsten wohl unbekannt ist. Bleibt noch zu erwähnen, dass es vermutlich auch eine Lösung mit Boardmitteln von KOMA-Script gibt, die sehr viel sauberer ist. Ich habe das nicht hinbekommen. So haben z.B. die Schalter index=totoc und toc=index keine Wirkung gezeigt.

Viele Grüße
Marius

Schweinebacke
15-09-2010, 10:23
Mit dem Paket splitidx (http://ctan.org/pkg/splitindex) kann man auch mehrere Indexe anlegen. Dabei wird aber nicht das komplette theindex umdefiniert, sondern die Definition der Klasse übernommen. Daher funktioniert das dann auch mit KOMA-Script (aber auch mit den Standardklassen) und die KOMA-Script-Optionen für Index ins Inhaltsverzeichnis etc. werden AFAIK ebenfalls beachtet.