PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Kopzeile "Literaturverzeichnis" erscheint auch noch in Sach- und Personenregister



Gotthard
15-06-2009, 09:42
Hi,

hab jetzt einiges ausprobiert, komme aber selber nicht weiter.

Ich habe ein Sach- und Personenregister. Über diesem erscheint als Kopfzeile jedoch "Literaturverzeichnis".

Ich möchte, dass darüber jedoch "Sachregister" oder "Personenregister" steht.

Wie schaffe ich das?

Hier MB:





\documentclass{scrbook}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{tocloft}
\usepackage[T1]{fontenc}

\begin{document}

\tableofcontents

bla blubb

\bibliography{Literaturverzeichnis2}


\bibliographystyle{jurabib}
\newpage


\printindex{Personenregister}{Personenregister}
\newpage
\printindex{Sachregister}{Sachregister}
\newpage


\end{document}

mechanicus
15-06-2009, 10:03
Hallo,

womit erzeugst du deinen Index, splitindex?

Gruß
Marco

u_fischer
15-06-2009, 10:14
Hast du Minimalbeispiel getestet? Ich erhalte


! Undefined control sequence.
l.20 \printindex
{Personenregister}{Personenregister}


Ulrike Fischer

pi-c
15-06-2009, 10:25
Hallo, Gotthard,



Ich habe ein Sach- und Personenregister. Über diesem erscheint als Kopfzeile jedoch "Literaturverzeichnis".

Ich möchte, dass darüber jedoch "Sachregister" oder "Personenregister" steht.
Keine Ahnung, wie der Index erzeugt wird -- \printindex erkennt er hier nicht. Dass immer noch "Literaturverzeichnis" im Kopf steht, wird aber wohl daran liegen, dass Du kein neues chapter angefangen hast und darum die Einstellungen vom Literaturverzeichnis noch aktiv sind. Versuche es mal so:


\documentclass{scrbook}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{tocloft}
\usepackage[T1]{fontenc}

\begin{document}

\tableofcontents

bla blubb

\bibliography{Literaturverzeichnis2}


\bibliographystyle{jurabib}
\newpage

\markboth{Personenregister}{}
\printindex{Personenregister}{Personenregister}

\newpage

\markboth{Sachregister}{}
\printindex{Sachregister}{Sachregister}
\newpage


\end{document}


Eventuell musst Du \markboth nochmal anpassen -- sieh Dir mal die Doku zu fancyhdr (ftp://tug.ctan.org/pub/tex-archive/macros/latex/contrib/fancyhdr/fancyhdr.pdf) an, da sind \markboth etc. genauer erklärt!

Schönen Gruß,

Andreas

u_fischer
15-06-2009, 10:49
Es ist normalerweise unnötig manuell einen \markboth-Befehl einzufügen. Die theindex-Umgebung kümmert sich schon drum (wenn überhaupt etwas im Index ist). Wenn das beim OP nicht so ist, benutzt er entweder ein Paket, das theindex ändert (was man anhand eines korrekten Minimalbeispiels sehen könnte), oder sein Index ist leer (was man auch sehen könnte, wenn er ein glaubwürdiges Beispiel schicken würde).

Ulrike Fischer

Gotthard
15-06-2009, 12:12
Das ist kein MB.

Es soll auch niemand aufheulen, denn es zeigt das Problem und das reicht.

Ich hoffe, dass auch einige sehen, was ich tun muss und danke für die neutralen und nicht pädagogisch wirkend wollenden Beiträge.



\documentclass{scrbook}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{tocloft}
\usepackage[T1]{fontenc}

\usepackage{multind}
\makeindex{Sachregister}
\makeindex{Personenregister}

\usepackage[commabeforerest,ibidem=name&title&auto,citefull=first,titleformat = {colonsep}]{jurabib}

\setcounter{tocdepth}{4}



\begin{document}

\tableofcontents


\chapter{Einleitung}

bla blubb

\bibliography{Literaturverzeichnis2}

\bibliographystyle{jurabib}
\newpage


\printindex{Personenregister}{Personenregister}
\newpage
\printindex{Sachregister}{Sachregister}
\newpage


\end{document}

Gotthard
15-06-2009, 12:44
Hi,

das vorangegangene Beispiel funktioniert zwar auf meinem Rechner, aber evtl. nicht auf anderen. Deshalb habe ich jetzt noch die Register mit je einem Begriff "gefüllt". Hoffe, dass ihr das auch so kompilieren könnt.

Roman


\documentclass{scrbook}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{tocloft}
\usepackage[T1]{fontenc}

\usepackage{multind}
\makeindex{Sachregister}
\makeindex{Personenregister}

\usepackage[commabeforerest,ibidem=name&title&auto,citefull=first,titleformat = {colonsep}]{jurabib}

\setcounter{tocdepth}{4}



\begin{document}

\tableofcontents


\chapter{Einleitung}

bla\index{Sachregister}{bla}

blubb\index{Personenregister}{blubb}

\bibliography{Literaturverzeichnis}

\bibliographystyle{jurabib}
\newpage


\printindex{Personenregister}{Personenregister}
\newpage
\printindex{Sachregister}{Sachregister}
\newpage


\end{document}

pi-c
15-06-2009, 13:40
Siehe meine obige Antwort: die Indizes erzeugen kein Chapter, damit erben sie die Kopfzeile vom Literaturverzeichnis!


The \printindex command is modified from the LaTeX standard so that it doesn’t create its own chapter or section heading; you therefore decide what names (or sectioning level, even) to use for the indexes, and \indexname is completely ignored.

Sieh Dir mal die Definition des Befehls \printindex in multind.sty an:



\newif\if@restonecol
\def\printindex#1#2{\@restonecoltrue\if@twocolumn\ @restonecolfalse\fi
\columnseprule \z@ \columnsep 35pt
\newpage \twocolumn[{\Large\bf #2 \vskip4ex}]
\markright{\uppercase{#2}}
\addcontentsline{toc}{section}{#2}
\@input{#1.ind}}


Die Überschriften werden als \section behandelt; die Kopfzeile der rechten Seite wird mit dem Indexnamen überschrieben -- deshalb ist die Kopfzeile auch nur beim "Personenregister" falsch.

Ich sehe drei Möglichkeiten:

1) Du passt multind.sty selbst an ("\markboth{\uppercase{#2}{}}" statt "\markright{\uppercase{#2}}"),

2) Du schiebst die beiden Registern in ein eigenes \chapter (z.B. "Anhang" oder "Register"),

3) Du fügst vor jedem \printindex noch ein \markboth{}{} ein.

Schönen Gruß,

Andreas

Gotthard
15-06-2009, 14:23
Hi Andreas,

das mit den Chaptern klingt am besten für mich. Denn ich hab erstens so gut wie keine Ahnung von LaTeX so dass es zweitens so einfach wie möglich sein muss.

Oder hat Ulrike noch eine Idee?

Roman

Gotthard
15-06-2009, 14:49
So, ich will eure Zeit nicht weiter vergeuden, deshalb ein MB, bei dem in der Ausgabe leider einiges nicht stimmt.

@Andreas: Das mit den Chaptern habe ich probiert, das schaut aber "komisch" aus.:


\documentclass{scrbook}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{tocloft}
\usepackage[T1]{fontenc}

\usepackage{multind}
\makeindex{Sachregister}
\makeindex{Personenregister}

\usepackage[commabeforerest,ibidem=name&title&auto,citefull=first,titleformat={colonsep}]{jurabib}

\setcounter{tocdepth}{4}



\begin{document}

\tableofcontents


\chapter{Einleitung}

bla\index{Sachregister}{bla} blubb\index{Personenregister}{blubb}

\bibliography{Literaturverzeichnis}

\bibliographystyle{jurabib}
\newpage

\chapter{Personenregister}
\printindex{Personenregister}{Personenregister}
\newpage
\chapter{Sachregister}
\printindex{Sachregister}{Sachregister}
\newpage


\end{document}

Das Inhaltsverzeichnis schaut vor allem komisch aus. Da steht dann zweimal "Sachregister" und analog zweimal Personenregister.

Wäre schön, wenn da einfach wie beim Literaturverzeichnis nur einmal das jeweilige Register stehen würde.

Wenn ich es ohne chapter mache, dann schaut es so aus:


\documentclass{scrbook}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{tocloft}
\usepackage[T1]{fontenc}

\usepackage{multind}
\makeindex{Sachregister}
\makeindex{Personenregister}

\usepackage[commabeforerest,ibidem=name&title&auto,citefull=first,titleformat={colonsep}]{jurabib}

\setcounter{tocdepth}{4}



\begin{document}

\tableofcontents


\chapter{Einleitung}

bla\index{Sachregister}{bla} blubb\index{Personenregister}{blubb}

\bibliography{Literaturverzeichnis}

\bibliographystyle{jurabib}
\newpage


\printindex{Personenregister}{Personenregister}
\newpage

\printindex{Sachregister}{Sachregister}
\newpage


\end{document}

Zudem habe ich irgendwo einen Fehler drin, den ich jedoch nicht finde. Jedenfalls kommt trotz \index{}{} nichts in den Registern.

Das mit \markboth ist heikel. Da hat Ulrike recht. Ich würde gerne ein gesplittetes Register haben, das in den Kopfzeilen richtig wiedergegeben wird.

Fehlt noch was im MB?

Danke,

Roman

pi-c
15-06-2009, 15:31
@Andreas: Das mit den Chaptern habe ich probiert,
das schaut aber "komisch" aus.:ü


\chapter{Personenregister}
\printindex{Personenregister}{Personenregister}
\newpage
\chapter{Sachregister}
\printindex{Sachregister}{Sachregister}
\newpage


Das Inhaltsverzeichnis schaut vor allem komisch aus. Da steht dann zweimal "Sachregister" und analog zweimal Personenregister.

So meinte ich es auch nicht, ich dachte eher an sowas:

\chapter{Anhang}
\printindex{Personenregister}{Personenregister}
\newpage
\printindex{Sachregister}{Sachregister}
\newpage




Wäre schön, wenn da einfach wie beim Literaturverzeichnis nur einmal das jeweilige Register stehen würde.
\printindex erzeugt ja eine Überschrift auf dem Level \section, daher die doppelten Überschriften im Inhaltsverzeichnis...

So, wie ich es meinte, ist das aber auch unschön, weil \printindex vor dem Register noch einen Seitenumbruch einfügt -- "Anhang" steht dann also alleine auf der Seite.


Zudem habe ich irgendwo einen Fehler drin, den ich jedoch nicht finde. Jedenfalls kommt trotz \index{}{} nichts in den Registern.
Kann ich nicht nachvollziehen -- bei mir steht da bla und blubb... :-)


Das mit \markboth ist heikel. Da hat Ulrike recht. Ich würde gerne ein gesplittetes Register haben, das in den Kopfzeilen richtig wiedergegeben wird.
Sorry, ist das Einzige, was mir auf die Schnelle noch einfällt...

Was hältst Du hiervon?


\documentclass{scrbook}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{tocloft}
\usepackage[T1]{fontenc}

\usepackage{multind}
\makeindex{Sachregister}
\makeindex{Personenregister}

\usepackage[commabeforerest,ibidem=name&title&auto,citefull=first,titleformat={colonsep}]{jurabib}

\setcounter{tocdepth}{4}



\begin{document}

\tableofcontents


\chapter{Einleitung}

bla\index{Sachregister}{bla} blubb\index{Personenregister}{blubb}

\addcontentsline{toc}{chapter}{Literaturverzeichni s}

\bibliography{Literaturverzeichnis}

\bibliographystyle{jurabib}
\newpage

\addcontentsline{toc}{chapter}{Anhang}

\markboth{\uppercase{Personenregister}}{}
\thispagestyle{plain}
\printindex{Personenregister}{Personenregister}

\newpage

\markboth{\uppercase{Sachregister}}{}
\thispagestyle{plain}
\printindex{Sachregister}{Sachregister}
\newpage


\end{document}

"Anhang" erscheint jetzt nur im Inhaltsverzeichnis -- einfach nur, damit die Register nicht als Section unter dem letzten Kapitel stehen. \thispagestyle{plain} habe ich eingefügt, damit nicht schon auf der ersten Seite -- gleich über der Überschrift -- die Kopfzeile erscheint. Sobald das Register länger als eine Seite wird, sind die Kopfzeilen dann da...

u_fischer
15-06-2009, 15:34
Als erstes solltest du dich entscheiden, ob du wirklich multind benutzen willst (das ziemlich alt ist) oder lieber splitidx.

Wenn du dich für ein Paket entschieden hast, solltest du entscheiden, wie die Titel der Verzeichnisse formatiert werden sollen: Als chapter oder section. Wenn als section musst du entscheiden, ob es nicht sinnvoll wäre davor eine Kapitelüberschrift einzufügen.

\chapter{Verzeichnisse}
\printindex{Personen}...
\printindex{Sachen}...

Dann musst du entscheiden, was du in den Kopfzeilen eigentlich haben willst. (Du hast ein zweiseitiges Layout und normalerweise ist auf linken Seiten das Kapitel und auf rechten die Section.). Wenn du multind benutzen willst, solltest du auch mitteilen, welchen pagestyle und welches Paket du für die normalen Kopfzeilen eigentlich benutzt, weil man vielleicht etwas anpassen muss.

Ulrike Fischer

Gotthard
15-06-2009, 15:42
Hi Ulrike, hi Andreas!

ich nehme gerne splitidx, ich bin ja nicht der Fachmann. Wo sind die Vorteile?

Du hast natürlich recht mit den chaptern und sections.

Ich habe mich für folgendes entschieden:

\chapter{Register}
\printindex{Personenregister}
\printindex{Sachregister}


Dann wäre vielleicht auch das Inhaltsverzeichnis schöner zu gestalten...

Das beste kommt ja noch, wenn ich biblatex einbinden will... Aber das hat noch Zeit :-))

Danke!

Roman

u_fischer
15-06-2009, 16:14
Naja, splitidx ist deutlich neuer und vom gleichen Autor wie scrbook. Außerdem kann es, falls du viele Verzeichnisse hast und die \write-Register nicht reichen, alle Verzeichnisse in eine idx-Datei schreiben und später per perl-Script oder mit TeX splitten. Du solltest aber unbedingt die Dokumentation lesen und einiges ausprobieren, wenn du die Feinheiten verstehen willst.

Beispiel: (Du musst zwischen den Läufen, makeindex datei-pix.idx und makeindex datei-six.idx aufrufen; die \newpage sind nur dazu da, ein paar Seiten für die Kopfzeilen zu erzeugen.)


\documentclass{scrbook}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[split,makeindex,idxcommands]{splitidx}
\newindex[Personenregister]{pix}
\newindex[Sachregister]{six}
\begin{document}

\tableofcontents
bla blubb

\sindex[pix]{Schiller},\pix{Goethe} \sindex[six]{Stuhl} \six{Tisch}

\bibliography{Literaturverzeichnis2}
\chapter{Register}
\printsubindex[pix]
abc\newpage
cde\newpage
cde\newpage
cdef\newpage
\printsubindex[six]
abc \newpage abc
cde\newpage
cde\newpage
cdef\newpage

\end{document}

Ulrike Fischer