Überarbeitungsverlauf[Zurück]
Klicke auf Einblenden/Ausblenden von Überarbeitungen 2
\if@mainmatter berücksichtigt bei \chaptermark

23 Apr '18, 12:59

gast3's gravatar image

gast3
(ausgesetzt)

Da du mit drei verschiedenen Marken arbeitest (Kapitelmarke + Abschnittsmarke und eine Unterabschnittsmarke) reicht der normale Markenmechanismus von LaTeX nicht aus. Man könnte diesen nun auf drei Teile erweitern oder man definiert einfach mit Hilfe von e-TeXs `\newmarks` eine neue Marke. Ich werde diesen Weg gehen. Zu `\newmarks`, `\firstmarks`, `\topmarks` und `\botmarks` sei auf das e-TeX-Manual verwiesen. Danach kommt man eigentlich mit einem einzigen Seitenstil aus: \documentclass[ paper=17cm:24cm, 12pt, headlines=0,% Wir haben keine Kopfzeile. footlines=1,% Wir haben genau eine Fußzeile ]{scrbook} \usepackage[ngerman]{babel} % deutsche Sprache \usepackage[T1]{fontenc} \usepackage{blindtext} \usepackage{xcolor}% ggf. mit Option table (besser als colortbl getrennt zu laden) \setcounter{secnumdepth}{\chapternumdepth} \setcounter{tocdepth}{\subsubsectiontocdepth}% Wirklich? % SEITENSTIL \usepackage[ % autoenlargeheadfoot=false,% Die geringe Kopfhöhe ist beabsichtigt (benötigt KOMA-Script 3.25). footsepline=.5pt, % Fußlinie plainfootsepline ]{scrlayer-scrpage} \ModifyLayer[addvoffset=-\dp\strutbox]{scrheadings.foot.above.line} % Abstand zur Fußlinie \ModifyLayer[addvoffset=-\dp\strutbox]{plain.scrheadings.foot.above.line} % Erst einmal alles löschen: \clearpairofpagestyles \addtokomafont{footsepline}{\color{red}} % farbige Fußleiste \addtokomafont{pagenumber}{\bfseries} % fettgedruckte Benummerung \setlength{\footskip}{1.2cm} % Abstand zum Seiteninhalt \newmarks\thesubsectionmark% Wir benötigen für die rechte Seite eine weitere Marke \makeatletter \renewcommand*{\@mkdouble}[1]{% Verzeichnisse sollen nur die linke Marke setzen \@mkboth{#1}{}% } \renewcommand{\chaptermark}[1]{% Die Kapitelmarke besteht bei nummerierten Kapiteln aus der formatierten Nummer, bei nicht nummerierten Kapiteln aus der dem Text. \@mkboth{\ifnumbered{chapter}{\chaptermarkformat}{#1}}{}% \@mkboth{\if@mainmatter\ifnumbered{chapter}{\chaptermarkformat}{#1}\else #1\fi}{}% \marks\thesubsectionmark{}% Außerdem löscht jedes Kapitel die Unterabschnittsmarke. } \renewcommand{\sectionmark}[1]{% \@mkright{: #1}% Die Abschnittsmarke besteht aus einem Doppelpunkt und dem Text. \marks\thesubsectionmark{}% Außerdem löscht jeder Abschnitt die Unterabschnittsmarke. } \renewcommand{\subsectionmark}[1]{% \@temptokena{#1}% Das setzen der Unterabschnittsmarke erfolgt indirekt \marks\thesubsectionmark{\the\@temptokena}% über ein Tokenregister wie im LaTeX-Kern auch. } \makeatother \renewcommand*{\chaptermarkformat}{\chapapp~\thechapter}% Formatierung der Kapitelnummer in der Kapitelmarke mit Präfix "Kapitel" oder "Anhang" \lefoot*{% \pagemark~\rule[-\dp\strutbox]{1pt}{\baselineskip}\enskip \leftmark\rightbotmark } \rofoot*{% \botmarks\thesubsectionmark\enskip \rule[-\dp\strutbox]{1pt}{\baselineskip}~\pagemark } \begin{document} \frontmatter% Nicht nummerierte Kapitel, römische Seitenzahlen … \tableofcontents % Inhaltsverzeichnisses \mainmatter% Nummerierte Kapitel, arabische Seitenzahlen … \addchap{Vorwort} \blindtext[3] \section{Abschnitt}% Höhere Ebenen zu überspringen ist schlechter Stil \blindtext[2] \subsection{Unterabschnitt} \blindtext[4] \section{Noch ein Abschnitt}% Höhere Ebenen zu überspringen ist schlechter Stil \blindtext[5] \blinddocument \appendix \blinddocument \end{document} Wenn ich das Ergebnis näher betrachtet, nährt das allerdings die Zweifel daran, dass dieses Vorgehen sinnvoll ist. Was auf einigen Seiten noch sinnvoll erscheinen mag: [![gut gefüllt mag es sinnvoll erscheinen][1]][2] wirkt auf anderen doch etwas merkwürdig: [![bei leerem rechtem Fuß eher merkwürdig][3]][3] Ich habe übrigens für die linken Seiten bewusst `\rightbotmark` verwendet, damit bereits auf der ersten Kapitelseite eine Abschnittsmarke ausgegeben wird. Entfernt man die Kolumnentitel auf der Kapitelanfangsseite, indem man `\lefoot*` durch \lefoot[{\pagemark~\rule[-\dp\strutbox]{1pt}{\baselineskip}}] ersetzt, kann man wahlweise auch `\righttopmark` verwenden. Man sollte allerdings `\botmarks` in der Definition für rechte Seiten nicht durch `\firstmarks` oder `\topmarks` ersetzen. Dann müsste man nämlich das löschen der Unterabschnittsmarke in `\sectionmark` ebenfalls entfernen, was wiederum auf Seiten mit Abschnittswechsel aber ohne Unterabschnittswechsel zu einer falschen Marke führen könnte. [1]: https://texwelt.de/wissen/upfiles/test_20180423_083828.png [2]: https://texwelt.de/wissen/upfiles/test_20180423_083828.png [3]: https://texwelt.de/wissen/upfiles/test_20180423_083906.png
Klicke auf Einblenden/Ausblenden von Überarbeitungen 1

23 Apr '18, 09:09

gast3's gravatar image

gast3
(ausgesetzt)

Da du mit drei verschiedenen Marken arbeitest (Kapitelmarke + Abschnittsmarke und eine Unterabschnittsmarke) reicht der normale Markenmechanismus von LaTeX nicht aus. Man könnte diesen nun auf drei Teile erweitern oder man definiert einfach mit Hilfe von e-TeXs `\newmarks` eine neue Marke. Ich werde diesen Weg gehen. Zu `\newmarks`, `\firstmarks`, `\topmarks` und `\botmarks` sei auf das e-TeX-Manual verwiesen. Danach kommt man eigentlich mit einem einzigen Seitenstil aus: \documentclass[ paper=17cm:24cm, 12pt, headlines=0,% Wir haben keine Kopfzeile. footlines=1,% Wir haben genau eine Fußzeile ]{scrbook} \usepackage[ngerman]{babel} % deutsche Sprache \usepackage[T1]{fontenc} \usepackage{blindtext} \usepackage{xcolor}% ggf. mit Option table (besser als colortbl getrennt zu laden) \setcounter{secnumdepth}{\chapternumdepth} \setcounter{tocdepth}{\subsubsectiontocdepth}% Wirklich? % SEITENSTIL \usepackage[ % autoenlargeheadfoot=false,% Die geringe Kopfhöhe ist beabsichtigt (benötigt KOMA-Script 3.25). footsepline=.5pt, % Fußlinie plainfootsepline ]{scrlayer-scrpage} \ModifyLayer[addvoffset=-\dp\strutbox]{scrheadings.foot.above.line} % Abstand zur Fußlinie \ModifyLayer[addvoffset=-\dp\strutbox]{plain.scrheadings.foot.above.line} % Erst einmal alles löschen: \clearpairofpagestyles \addtokomafont{footsepline}{\color{red}} % farbige Fußleiste \addtokomafont{pagenumber}{\bfseries} % fettgedruckte Benummerung \setlength{\footskip}{1.2cm} % Abstand zum Seiteninhalt \newmarks\thesubsectionmark% Wir benötigen für die rechte Seite eine weitere Marke \makeatletter \renewcommand*{\@mkdouble}[1]{% Verzeichnisse sollen nur die linke Marke setzen \@mkboth{#1}{}% } \renewcommand{\chaptermark}[1]{% Die Kapitelmarke besteht bei nummerierten Kapiteln aus der formatierten Nummer, bei nicht nummerierten Kapiteln aus der dem Text. \@mkboth{\ifnumbered{chapter}{\chaptermarkformat}{#1}}{}% \marks\thesubsectionmark{}% Außerdem löscht jedes Kapitel die Unterabschnittsmarke. } \renewcommand{\sectionmark}[1]{% \@mkright{: #1}% Die Abschnittsmarke besteht aus einem Doppelpunkt und dem Text. \marks\thesubsectionmark{}% Außerdem löscht jeder Abschnitt die Unterabschnittsmarke. } \renewcommand{\subsectionmark}[1]{% \@temptokena{#1}% Das setzen der Unterabschnittsmarke erfolgt indirekt \marks\thesubsectionmark{\the\@temptokena}% über ein Tokenregister wie im LaTeX-Kern auch. } \makeatother \renewcommand*{\chaptermarkformat}{\chapapp~\thechapter}% Formatierung der Kapitelnummer in der Kapitelmarke mit Präfix "Kapitel" oder "Anhang" \lefoot*{% \pagemark~\rule[-\dp\strutbox]{1pt}{\baselineskip}\enskip \leftmark\rightbotmark } \rofoot*{% \botmarks\thesubsectionmark\enskip \rule[-\dp\strutbox]{1pt}{\baselineskip}~\pagemark } \begin{document} \frontmatter% Nicht nummerierte Kapitel, römische Seitenzahlen … \tableofcontents % Inhaltsverzeichnisses \mainmatter% Nummerierte Kapitel, arabische Seitenzahlen … \addchap{Vorwort} \blindtext[3] \section{Abschnitt}% Höhere Ebenen zu überspringen ist schlechter Stil \blindtext[2] \subsection{Unterabschnitt} \blindtext[4] \section{Noch ein Abschnitt}% Höhere Ebenen zu überspringen ist schlechter Stil \blindtext[5] \blinddocument \appendix \blinddocument \end{document} Wenn ich das Ergebnis näher betrachtet, nährt das allerdings die Zweifel daran, dass dieses Vorgehen sinnvoll ist. Was auf einigen Seiten noch sinnvoll erscheinen mag: [![gut gefüllt mag es sinnvoll erscheinen][1]][2] wirkt auf anderen doch etwas merkwürdig: [![bei leerem rechtem Fuß eher merkwürdig][3]][3] Ich habe übrigens für die linken Seiten bewusst `\rightbotmark` verwendet, damit bereits auf der ersten Kapitelseite eine Abschnittsmarke ausgegeben wird. Entfernt man die Kolumnentitel auf der Kapitelanfangsseite, indem man `\lefoot*` durch \lefoot[{\pagemark~\rule[-\dp\strutbox]{1pt}{\baselineskip}}] ersetzt, kann man wahlweise auch `\righttopmark` verwenden. Man sollte allerdings `\botmarks` in der Definition für rechte Seiten nicht durch `\firstmarks` oder `\topmarks` ersetzen. Dann müsste man nämlich das löschen der Unterabschnittsmarke in `\sectionmark` ebenfalls entfernen, was wiederum auf Seiten mit Abschnittswechsel aber ohne Unterabschnittswechsel zu einer falschen Marke führen könnte. [1]: https://texwelt.de/wissen/upfiles/test_20180423_083828.png [2]: https://texwelt.de/wissen/upfiles/test_20180423_083828.png [3]: https://texwelt.de/wissen/upfiles/test_20180423_083906.png