Ich habe meine Kopfzeile so aufgebaut, dass oben rechts die Seitenzahl steht und links steht folgendes: Section | Subsection. Leider steht der Subsection-Titel in der Kopfzeile eine Seite zu früh. Ist z.B. von Seite 1 der Subsection-Titel "A" und anschließend folgt ein Text, der ca. bis zur Mitte von Seite 2 geht. Nach diesem Text kommt der Subsection-Titel "B", dann steht in der Kopfzeile der Subsection-Titel B, obwohl dort noch der Titel von A stehen sollte.

Hier mein Minimalbeispiel:

% !TeX spellcheck = de_DE_igerman98 
\documentclass[a4papier,12pt]{scrartcl}
%\usepackage[applemac]{inputenc}
\usepackage[ngerman]{babel}
\renewcommand{\familydefault}{\sfdefault}
%\usepackage{helvet}    
\usepackage[a4paper, left=2.5cm, right=2.5cm, top=2cm, bottom=2cm]{geometry} %Seitenränder
\usepackage{blindtext}
%Kopfzeile
\usepackage[headsepline]{scrpage2}
\pagestyle{scrheadings}
\clearscrheadfoot
\automark[subsection]{section} 
\renewcommand{\sectionmark}[1]{\markboth{\sectionmarkformat #1}{}}% 
\renewcommand{\subsectionmark}[1]{\markright{$|$ #1}} %nur Titel ohne Nr. 
\ihead{\leftmark{} \rightmark} %\rightmark}  
\ohead{\pagemark} 
\renewcommand*{\sectionmarkformat}{} %Kopfzeile ohne Kaptitelnummer
\renewcommand*{\subsectionmarkformat}{} %Kopfzeile ohne Kapitelnummer
\setheadsepline{1pt}
\begin{document}    
\section{Section}
\blindtext
\subsection{Subsection 1}
\blindtext
\blindtext
\blindtext
\blindtext
\blindtext
\blindtext
\subsection{Subsection 2}
\end{document}

Und bei \subsection{Subsection 2} ist jetzt das Problem, dass in der Kopfzeile jetzt "Subsection 2" und nicht "Subsection 1" steht.

gefragt 14 Jul '19, 22:20

Simon's gravatar image

Simon
4558
Akzeptiert-Rate: 0%

bearbeitet 15 Jul '19, 08:09

gast3's gravatar image

gast3
(ausgesetzt)


Vorab sei erwähnt, dass eine Option a4papier vollkommen unbekannt ist, was in log-Datei auch gemeldet wird. a4paper wiederum ist bei KOMA-Script-Klassen ohnehin Voreinstellung, so dass die Option entfallen kann. geometry verwendet ohnehin das Papierformat, das es vorfindet, so dass man dort ebenfalls keine Option a4paper benötigt.

Dass du auf Seite 2 bereits „Subsection 2“ erhältst halte ich für korrekt, immerhin steht auf der Seite auch tatsächlich genau das. Wenn dich stört, dass auf Seite 1 kein „Subsection 1” steht, kann man das beispielsweise so ändern:

\documentclass[12pt]{scrartcl}
\usepackage[ngerman]{babel}
\renewcommand{\familydefault}{\sfdefault}% für ein VM überflüssig
\usepackage[left=2.5cm, right=2.5cm, top=2cm, bottom=2cm]{geometry} % eher ungünstige Seitenränder; für ein VM überflüssig
\usepackage{blindtext}
%Kopfzeile
\usepackage[headsepline=1pt,autooneside=false]{scrlayer-scrpage}
\clearpairofpagestyles
\automark[subsection]{section} 
\ihead{\leftmark{} $|$ \rightbotmark} 
\ohead*{\pagemark} 
\renewcommand*{\sectionmarkformat}{} %Kopfzeile ohne Kaptitelnummer
\renewcommand*{\subsectionmarkformat}{} %Kopfzeile ohne Kapitelnummer
\begin{document}    
\section{Section}
\blindtext
\subsection{Subsection 1}
\blindtext
\blindtext
\blindtext
\blindtext
\blindtext
\blindtext
\subsection{Subsection 2}
\end{document}

Soll hingegen wirklich auf der ersten Seite nur „Section“ und auf der zweiten „Subsection 1” stehen, dann ginge das mit:

\documentclass[12pt]{scrartcl}
\usepackage[ngerman]{babel}
\usepackage{blindtext}
%Kopfzeile
\usepackage[headsepline=1pt,autooneside=false]{scrlayer-scrpage}
\clearpairofpagestyles
\automark[subsection]{section} 
\ihead{\leftmark{}\ifstr{\leftmark}{\rightmark}{}{ $|$ \righttopmark}} 
\ohead*{\pagemark} 
\renewcommand*{\sectionmarkformat}{} %Kopfzeile ohne Kaptitelnummer
\renewcommand*{\subsectionmarkformat}{} %Kopfzeile ohne Kapitelnummer
\begin{document}    
\section{Section}
\blindtext
\subsection{Subsection 1}
\blindtext
\blindtext
\blindtext
\blindtext
\blindtext
\blindtext
\subsection{Subsection 2}
\end{document}

Bitte beachte, dass scrpage2 seit vielen Jahren veraltet ist. Es wird sicher irgendwann aus KOMA-Script verschwinden, deshalb sollte man den offiziellen Nachfolger, der auch in der KOMA-Script-Anleitung dokumentiert ist, verwenden. Nur mit diesem Nachfolger stehen neben \leftmark und \rightmark auch die ebenfalls in der Anleitung dokumentierten Anweisungen \leftfirstmark, \lefttopmark, \leftbotmark, \rightfirstmark, \righttopmark und \rightbotmark zur Verfügung, die bei der Realisierung von Randbedingungen nützlich sein können. Das veraltete Paket scrpage2 bietet diese nicht.

In deinem Code waren die \automark-Einstellungen übrigens nahezu wirkungslos, weil sie durch die Umdefinierung von \sectionmark und \subsectionmark überschrieben wurden.

Es sei nicht verschwiegen, dass obige Lösungen auch Nachteile haben, die du sofort erkennen solltest, wenn du unmittelbar am Ende ein \section{Section 2} einfügst. Ich tendiere deshalb zu etwas wie:

\documentclass[12pt]{scrartcl}
\usepackage[ngerman]{babel}
\usepackage{blindtext}
%Kopfzeile
\usepackage[headsepline=1pt,autooneside=false]{scrlayer-scrpage}
\clearpairofpagestyles
\automark[subsection]{section} 
\ihead{\leftmark{}\ifstr{\leftmark}{\rightbotmark}{}{ $|$ \rightbotmark}}
\ohead*{\pagemark} 
\renewcommand*{\sectionmarkformat}{} %Kopfzeile ohne Kaptitelnummer
\renewcommand*{\subsectionmarkformat}{} %Kopfzeile ohne Kapitelnummer
\begin{document}    
\section{Section}
\blindtext
\subsection{Subsection 1}
\blindtext
\blindtext
\blindtext
\blindtext
\blindtext
\blindtext
\subsection{Subsection 2}
\blindtext

\section{Section 2}
\end{document}

Vielleicht ist das, was ich als Nachteil betrachte aber auch genau das, was tatsächlich gewünscht wird. Ohne genauere Spezifikation aller Sonderfälle, ist das kaum zu beurteilen. Daher habe ich auch mehrere Möglichkeiten gezeigt.

Permanenter link

beantwortet 15 Jul '19, 08:06

gast3's gravatar image

gast3
(ausgesetzt)
Akzeptiert-Rate: 53%

bearbeitet 21 Jul '19, 13:45

Hey, vielen Dank für eine schnelle und ausführliche Antwort. Tatsächlich ist deine Zweite Lösung genau das, was ich gesucht habe. Vielen Dank nochmal!

(15 Jul '19, 13:25) Simon

@Simon: Wenn die zweite Lösung genau das ist, was du gesucht hast, wäre es fair die Antwort zu akzeptieren.

(23 Jan '20, 11:22) saputello

Ich würde empfehlen, die Kopfzeilen einfach so zu lassen, wie sind in der Voreinstellung von scrartcl sind, wenn man lebende Kolumnentitel einschaltet:

\documentclass[12pt,headsepline]{scrartcl}
\usepackage[ngerman]{babel}
% Seitenränder wie sie leider an vielen Unis vorgeschrieben sind
\usepackage[a4paper, left=2.5cm, right=2.5cm, top=2cm, bottom=2cm]{geometry}
\usepackage{blindtext}
%Kopfzeile mit lebenden Kolumnentiteln
\pagestyle{headings}
\begin{document}
\blinddocument
\end{document}

Das ist eigentlich meistens eine gute Wahl. Im Kopf steht dann auch immer das Wesentliche, nämlich bei einseitigen Dokumenten der aktuelle Abschnitt. Abwechselnd Abschnitt und Unterabschnitt bekommt man bei doppelseitigen Dokumenten ebenfalls automatisch:

\documentclass[12pt,twoside,headsepline]{scrartcl}
\usepackage[ngerman]{babel}
% Seitenränder wie sie leider an vielen Unis vorgeschrieben sind
\usepackage[a4paper, left=2.5cm, right=2.5cm, top=2cm, bottom=2cm]{geometry}
\usepackage{blindtext}
%Kopfzeile mit lebenden Kolumnentiteln
\pagestyle{headings}
\begin{document}
\blinddocument
\end{document}
Permanenter link

beantwortet 21 Jul '19, 14:02

okay's gravatar image

okay
1513
Akzeptiert-Rate: 0%

bearbeitet 21 Jul '19, 14:04

Vielen Dank für deine Antwort. Leider muss ich es aber genau so machen, wie ich es beschrieben hatte. Das ist das Problem an der Sache :D

(21 Jul '19, 14:11) Simon
Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs fügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×130
×38
×32
×15

gestellte Frage: 14 Jul '19, 22:20

Frage wurde gesehen: 6,179 Mal

zuletzt geändert: 23 Jan '20, 11:22