Sie sind hier

\lehead Argumente

Ich habe bisher \lehead mit einem scrheadings Stil verwendet, und möchte den gleichen auch für den plain-Stil einstellen. Das identische Argument in [] Klammern kompiliert aber nicht, sondern bricht ab mit

Missing \begin{document}. [\makebox[.7cm][l

Aus dem scrguide:

\lehead[scrplain-links-gerade]{scrheadings-links-gerade}

Paolo

%% Mein Bsp.:
\documentclass[]{scrbook}
\usepackage[automark]{scrpage2}
\usepackage{xcolor}
\clearscrheadfoot
\pagestyle{scrheadings}
\lehead%
% 1. Argument: []
% [\makebox[.7cm][l]{\pagemark}%
% \colorbox{yellow}{\parbox[c][1cm][c]{8cm}%
% {\makebox[8cm][l]{\headmark}}}]%
% 2. Argument: {}
{\makebox[.7cm][l]{\pagemark}%
\colorbox{yellow}{\parbox[c][1cm][c]{8cm}%
{\makebox[8cm][l]{\headmark}}}}
\begin{document}
asdf
\end{document}
Bild von Markus Kohm

Die eckigen Klammern von optionalen Argumenten sind keine achten Argumentklammern, sondern per delimited argument implementiert. Das bedeutet, dass für TeX das optionale Argument an der ersten schließenden eckigen Klammer endet. Bei dir endet das optionale Argument von \lehead also bereits nach .7cm. Damit ist klar, was schief geht. Die De-TeX-FAQ empfiehlt daher korrekterweise in diesem Fall das optionale Argument zusätzlich in echte Argumentklammern zu setzen:

\lehead%
 % 1. Argument: []
 [{\makebox[.7cm][l]{\pagemark}%
 \colorbox{yellow}{\parbox[c][1cm][c]{8cm}%
 {\makebox[8cm][l]{\headmark}}}}]%
% 2. Argument: {}
 {\makebox[.7cm][l]{\pagemark}%
 \colorbox{yellow}{\parbox[c][1cm][c]{8cm}%
 {\makebox[8cm][l]{\headmark}}}}

Vielen Dank. Ich hatte schon auf etwas Richtung \savebox getippt..

Paolo

Ich dachte bisher, zum Kapitelanfang würde auf Plain-Stil geschaltet. Durch "cleardoubleplain" wird nun auch nach \cleardoublepage auf Plain geschaltet. Da jedoch bisher mein 1. Argument von \lehead[] leer war, war die Seite nach einem \cleardoublepage weiss. Nicht jedoch bei Titelanfang, hier stimmte es bereits (leerer Kolumnentitel, aber Seitenzahl, Rahmen...).
Somit ist der Stil zum Kapitelanfang doch nicht Plain?
scrguide sagt, es würde zu Kapitelanfang \thispagestyle{plain} aufgerufen.

Bild von Markus Kohm

Der Seitenstil plain ist in der Voreinstellung nicht leer, sondern hat bei doppelseitigem Druck im KOMA-Script-Stil Seitenzahlen unten außen und im Standardklassen-Stil unten mittig. \lehead[]{...} würde aber nur die Seitenzahl auf geraden/linken Seiten oben links/außen entfernen, nicht auf ungeraden/rechten Seiten unten rechts/außen und nicht auf geraden/linken Seiten unten außen und natürlich erst recht nicht unten mittig.

Der bereits vorhandene Seitenstil ohne Kopf und Fuß ist übrigens empty. Außerdem kann man den Seitenstil für Kapitelanfangsseiten ändern.

Falls Dir diese Auskunft nicht weiterhilft: vollständiges Minimalbeispiel.

Bild von Markus Kohm

Hier zeigt sich einer der Vorteile von scrlayer-scrpage gegenüber dem veralteten scrpage2. Durch Verwendung der Sternform von \lehead kann man sich die Wiederholung des obligatorischen Arguments als optionales Argument sparen, so dass man gar nicht erst in die Falle läuft:

\documentclass{scrbook}
\usepackage[automark]{scrlayer-scrpage}
\usepackage{xcolor}
\clearpairofpagestyles
\lehead*{% *-Form → verwende dieses Argument auch für plain
  \makebox[.7cm][l]{\pagemark}%
  \colorbox{yellow}{%
    \parbox[c][1cm][c]{8cm}{%
      \makebox[8cm][l]{\headmark}}}}
\usepackage{blindtext}
\begin{document}
\blinddocument
\end{document}
Comments for "\lehead Argumente" abonnieren