PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Allgemeine Frage zu KOMA Script und Seitenzahlen



Deacon
03-07-2016, 17:37
Guten Tag,

ich fange an, meine Dissertation zu schreiben und richte gerade mein LaTeX Dokument ein. Ich verwende die Dokumentenklasse scrbook.
In der Dokumentation zu KOMA Script (scrguide, Abschnitt 3.12. "Kopf und Fuß bei vordefinierten Seitenstilen") steht folgendes:



headings ist der Seitenstil für lebende Kolumnentitel. Das sind Kolumnentitel, bei denen Überschriften automatisch in den Seitenkopf übernommen werden. [...] Bei den Klassen scrbook und scrreprt werden dabei im doppelseitigen Layout die Überschriften der Kapitel und der Abschnitte in der Kopfzeile wiederholt – bei KOMA-Script jeweils außen, bei den Standardklassen innen. Die Seitenzahl wird bei KOMA-Script im Fuß außen, bei den Standardklassen im Kopf außen gesetzt.


Nun hätte ich gerne genau das Verhalten der Standardklassen, nämlich Überschriften im Kopf innen und Seitenzahlen im Kopf außen.
Wie ist hierfür das empfohlene Vorgehen? Braucht man dafür zwingend das Paket scrpage2 (bzw. scrlayer-scrpage) oder geht es auch ohne?

Meine Lösung sieht momentan folgendermaßen aus:


\documentclass[paper=A4,fontsize=12pt,BCOR=5mm,DIV=calc,headsepli ne=true]{scrbook}
\usepackage{scrpage2}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[english]{babel}
\usepackage{lipsum}

%Define page style with scrpage2 package:
\pagestyle{scrheadings}
\ohead{\pagemark}
\ihead{\headmark}
\ofoot{}
\setheadsepline{1pt}

\begin{document}

\frontmatter
\tableofcontents
\clearpage
\mainmatter

\chapter{First Chapter}
\lipsum[1]
\section{First Section}
\subsection{First Subsection}
\lipsum
\subsection{Second Subsection}
\lipsum
\section{Second Section}
\subsection{Third Subsection}
\lipsum
\subsection{Fourth Subsection}
\lipsum[1-4]

\clearpage
\chapter{Second Chapter}
\lipsum
\end{document}


Habe ich das richtig gemacht, die Befehle für die Kopf- und Fußzeilen in die Präambel meines Dokumentes zu setzen?

Noch eine Frage:
Der Parameter "headsepline = true" bei documentclass wird ignoriert, wenn ich das scrpage2 Paket einbinde. Ich muss dann den Befehl \setheadsepline{1pt} verwenden. Warum ist das so?

Ich danke für Antworten.
Schöne Grüße!

esdd
03-07-2016, 23:43
Es ist richtig die Einstellungen für die Kopf- und Fußzeile in der Präambel vorzunehmen. Als Anwender empfiehlt es sich ein Paket für diese Anpassungen zu laden, wobei sich für KOMA-Script Klassen das aktuelle Paket scrlayer-scrpage empfiehlt.


\documentclass[
paper=A4,fontsize=12pt,BCOR=5mm,DIV=calc,
headsepline
]{scrbook}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[english]{babel}
\usepackage{lipsum}% für Fülltext

%Define page style:
\usepackage
%[headsepline=1pt]% falls die Breite der Linie angepasst werden soll
{scrlayer-scrpage}
\ohead{\pagemark}
\ihead{\headmark}
\ofoot{}

\begin{document}
\frontmatter
\tableofcontents

\mainmatter
\chapter{First Chapter}
\lipsum[1]
\section{First Section}
\subsection{First Subsection}
\lipsum
\subsection{Second Subsection}
\lipsum
\section{Second Section}
\subsection{Third Subsection}
\lipsum
\subsection{Fourth Subsection}
\lipsum[1-4]

\chapter{Second Chapter}
\lipsum
\end{document}

Beim Laden von scrlayer-scrpage wird der Seitenstil scrheadings automatisch aktiviert. Die \clearpage in Deinem Code habe ich entfernt, weil \chapter automatisch eine neue Seite beginnen.

Die Seitenzahl auf Seiten mit dem plain Stil, wie er zum Beispiel für Kapitelanfangsseiten verwendet wird, soll weiterhin im Fuß außen sein?

Das obsolete Paket scrpage2 war der Vorgänger von scrlayer-scrpage. Es kennt die Option headsepline nur ohne Wert, weshalb die bei der Klasse angegebene Option headsepline=true nicht zu einer Linie unter der Kopfzeile im Seitenstil scrheadings führt. Die Klassenoption headsepline=true sorgt nur für die Linie in den Seitenstilen headings und myheadings, die ja von den Klassen selbst definiert werden. Du könntest aber einfach nur headsepline beim Laden der Klasse nutzen, da der Säumniswert der Klassenoption true ist. Die Dicke der Linie müsstest Du trotzdem noch selbst anpassen, da die Voreinstellung dafür .4pt ist.

headsepline=true ist eine Option der KOMA-Script Klassen, die für die Seitenstile headings und myheadings die Kopfzeilenlinie einfügt. Wird für die Klassenoption headsepline kein Wert angegeben, dann entspricht das headsepline=true. Die Angabe von headsepline=true oder headsepline beeinflusst auch den Satzspiegel, da sie automatisch die Option headinclude setzt.

Deacon
04-07-2016, 16:51
Danke für die ausführliche Antwort. Jetzt verstehe ich das besser.

Bei den Kapitelanfangsseiten kann die Seitenzahl ruhig im Fuß außen stehen bleiben. Wie würde den der Befehl für eine im Fuß mittige Seitenzahl bei Kapitelanfangsseiten lauten?

Noch eine andere Frage:
Ich habe die aktuelle Version 3.21 des KOMA Skript Paketes heruntergeladen und entpackt. Bei MikTeX habe ich das entpackte Verzeichnis unter "Start > Alle Programme > MikTeX > Maintenance > Settings > Roots" hinzugefügt.
Jetzt kennt er das Paket "scrlayer-scrpage" (was er vorher nicht kannte). Ich frage mich jedoch: Es gibt eine alte und eine neue Version meines KOMA Skript Paketes in MikTeX. Welches nimmt er nun beim Kompilieren? Gibt es da eine Priorisierung von benutzerdefinierten Verzeichnisbäumen in MikTeX?

esdd
04-07-2016, 21:13
Wenn Du die Seitenzahl im plain Stil auch an anderer Stelle haben möchtest, dann löschst Du am besten zunächste die vordefinierten Inhalte beider Seitenstile mit \clearpairofpagestyles und definierst danach die gewünschten Einträge. Die Seitenzahl auf plain Seiten mittig im Fuß bekommst Du mit \cfoot[\pagemark]{}.



%Define page style:
\usepackage
%[headsepline=1pt]% falls die Breite der Linie angepasst werden soll
{scrlayer-scrpage}
\clearpairofpagestyles% Kopf- und Fußzeilen leeren
\ohead{\pagemark}
\ihead{\headmark}
\cfoot[\pagemark]{}


Wenn das Paket scrlayer-scrpage bisher unbekannt war, dann hast Du sehr lange kein MiKTeX-Update gemacht. Das Paket ist seit Anfang 2014 in MiKTeX 2.9 vorhanden. Und MiKTeX 2.9 hat derzeit auch die KOMA-Version 3.21. Infos zum Updaten von MiKTeX Paketen findest Du unter http://tex.stackexchange.com/a/108490/43317.

Ja, es gibt eine Reihenfolge für das Suchen nach Dateien. Wenn Du eine Multiuser-Installation hast, dann werden vermutlich zuerst die Dateien durchsucht, die Du über den Paketmanager als Nutzer installiert hast. Danach sind die benutzerdefinierten Verzeichnisbäume an der Reihe und zum Schluß, die als admin installierten Dateien. Bei einer Einzelnutzerinstallationen werden die benutzerdefinierten Bäume vor denen der MiKTeX-Installion durchsucht.

Welche Version bei Dir zuerst gefunden wird, kannst Du testen, in dem Du in eine Eingabeaufforderung

kpsewhich scrartcl.cls

eingibst. Dir wird dann der Pfad zur zuerst gefundenen Datei angezeigt.

Wo der Reihe nach gesucht wird, siehst Du auch im Reiter root der MiKTeX Settings. Damit Dir bekannten Verzeichnisbäume angezeigt werden, musst Du den Haken bei "Show MiKTeX-maintained directories" setzen. Die Reihenfolge der Verzeichnisse entspricht der Suchreihenfolge.

Deacon
04-07-2016, 21:37
Danke dir vielmals!

In der Tat habe ich MiKTeX Ende 2013 installiert und seither nicht mehr geupdatet. Das liegt daran, dass ich an einem Firmenrechner arbeite und ein komfortables Update über den MiKTeX Update Manager nicht möglich ist. (Die Verbindung zu den Hostservern der LaTeX Dateien wird blockiert.) Update würde hier bedeuten, MiKTeX komplett zu deinstallieren und wieder zu installieren. Darauf hatte ich bisher keine Lust (never change a running system...). Deshalb muss ich manuell Pakete herunterladen und diese dann hinzufügen. Leider gibt es etliche (unterschiedliche) Anleitungen zur manuellen Installation von Paketen und ich wurde aus diesen nicht wirklich schlau. Jetzt habe ich es aber mit deiner Hilfe verstanden.
Danke nochmals!