PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Section in Kopfzeile



Heynrich
09-04-2013, 16:38
Hallo Zusammen,
und zwar habe ich einen Code mit dem ich Chapter und Section in die Kopfzeile geschrieben habe. Mein Problem ist jetzt, dass wenn ich mehrere Sections auf einer Seite habe, immer das zweite für die Kopfzeile verwendet wird, ich allerdings gerne das erste hätte. Ich habe mir das ganze aus dem Inet so zusammengereimt und bin froh, dass es bisher so klappt, hab aber eigentlich keine Ahnung.



\documentclass[a4paper,12pt]{scrreprt}

\usepackage{scrpage2}
\automark[section]{chapter}

\pagestyle{scrheadings}
\clearscrheadfoot

\ihead[\rightmark]{\rightmark}
\ohead[\leftmark]{\leftmark}

\renewcommand*{\chapterpagestyle}{scrheadings}
\renewcommand*{\subsubsectionmark}[1]{\markright{\subsubsectionmarkformat #1}}
\makeatletter
\renewcommand*{\rightmark}{\expandafter\@rightmark \botmark\@empty\@empty}
\makeatother%diesen Teil hab ich nicht verstanden, aber wenn er nicht drin ist, klappts nicht

\begin{document}
\chapter{123}
\section{abc}
\section{xyz}
\end{document}

Lilliane
09-04-2013, 16:57
Hallo Heynrich,

und was genau ist jetzt Deine Frage? Oder wolltest Du nur zeigen, wie Du das bislang machst?

VG

Lilly

Heynrich
09-04-2013, 17:00
Mein Problem ist jetzt, dass wenn ich mehrere Sections auf einer Seite habe, immer das zweite für die Kopfzeile verwendet wird, ich allerdings gerne das erste hätte.

Im Moment erscheint ja das xyz in der Kopfzeile. Ich hätte allerdings gerne das abc.

klops
09-04-2013, 17:24
Das ist schlicht der Unterschied zwischen \rightmark, das auf der TeX-Anweisung \firstmark (erste Marke, die auf der Seite gesetzt wurde) basiert, und \leftmark, das auf der TeX-Anweisung \botmark (letzte Marke, die auf der Seite gesetzt wurde) basiert. Siehe dazu auch die Seiten 433f im KOMA-Script-Buch (http://www.dante.de/index/Literatur/KOMA-Script.html). Du definierst allerdings explizit, dass \rightmark eben nicht \firstmark, sondern \botmark verwenden soll. Warum machst Du das, wenn Du es gar nicht haben willst?

Dass \firstmark auf der Kapitelanfangsseite nichts liefert, ist nicht weiter verwunderlich, schließlich ist die erste Marke auf der Seite nicht die von \section, sondern die, die bei \chapter gesetzt wird und da ist dieser Teil der Marke natürlich leer.

Ich würde ja schlicht empfehlen, den allgemeinen typografischen Gepflogenheiten entsprechend auf Kapitelanfangsseiten keinen Kolumnentitel zu setzen. Sonst musst Du bereits vor \chapter die Marke für \section setzen. Das geht nur umständlich und ist fehleranfällig:

\documentclass[a4paper,12pt]{scrreprt}

\usepackage{scrpage2}
\automark[section]{chapter}

\pagestyle{scrheadings}
\clearscrheadfoot

\ihead[\rightmark]{\rightmark}
\ohead[\leftmark]{\leftmark}

\renewcommand*{\chapterpagestyle}{scrheadings}

\begin{document}
\cleardoublepage
\stepcounter{chapter}\stepcounter{section}\section mark{abc}
\addtocounter{chapter}{-1}
\chapter{123}
\section{abc}
\section{xyz}
\end{document}

klops
09-04-2013, 19:05
Lies Abschnitt 11.5.1 im Dokument »Math mode (http://texdoc.net/pkg/mathmode)«.
@localghost: Ich glaube, Du hast die Fragen verwechselt. Das sollte vermutlich eine Antwort auf http://www.mrunix.de/forums/showthread.php?t=74947 werden.

Heynrich
09-04-2013, 20:49
Ok, nicht ganz das was ich mir erhofft hatte, aber danke für deine Hilfe.
Und das mit dem \botmark hatte ich irgendwo gefunden, ausprobiert und das kam dem ganzen schon so nahe, dass ich gedacht habe, es fehlt nur noch ein kleiner Schritt um es richtig zu machen.

u_fischer
09-04-2013, 22:38
Dein Code ist sehr zweifelhaft. Was z.B. soll die Definition von \subsubsectionmark?
Abgesehen davon: Es ist (ziemlich) leicht die erste und die letzte Überschrift einer Seite in die Kopfzeile zu bekommen. Bei Überschriften, die sich mittendrin befinden, ist es nicht mehr trivial.