diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/koma-script/scrkernel-pagestyles.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/koma-script/scrkernel-pagestyles.dtx | 831 |
1 files changed, 831 insertions, 0 deletions
diff --git a/Master/texmf-dist/source/latex/koma-script/scrkernel-pagestyles.dtx b/Master/texmf-dist/source/latex/koma-script/scrkernel-pagestyles.dtx new file mode 100644 index 00000000000..7697aac6e3f --- /dev/null +++ b/Master/texmf-dist/source/latex/koma-script/scrkernel-pagestyles.dtx @@ -0,0 +1,831 @@ +% \CheckSum{593} +% \iffalse meta-comment +% ====================================================================== +% scrkernel-pagestyles.dtx +% Copyright (c) Markus Kohm, 2002-2013 +% +% This file is part of the LaTeX2e KOMA-Script bundle. +% +% This work may be distributed and/or modified under the conditions of +% the LaTeX Project Public License, version 1.3c of the license. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3c or later is part of all distributions of LaTeX +% version 2005/12/01 or later and of this work. +% +% This work has the LPPL maintenance status "author-maintained". +% +% The Current Maintainer and author of this work is Markus Kohm. +% +% This work consists of all files listed in manifest.txt. +% ---------------------------------------------------------------------- +% scrkernel-pagestyles.dtx +% Copyright (c) Markus Kohm, 2002-2013 +% +% Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz, +% Version 1.3c, verteilt und/oder veraendert werden. +% Die neuste Version dieser Lizenz ist +% http://www.latex-project.org/lppl.txt +% und Version 1.3c ist Teil aller Verteilungen von LaTeX +% Version 2005/12/01 oder spaeter und dieses Werks. +% +% Dieses Werk hat den LPPL-Verwaltungs-Status "author-maintained" +% (allein durch den Autor verwaltet). +% +% Der Aktuelle Verwalter und Autor dieses Werkes ist Markus Kohm. +% +% Dieses Werk besteht aus den in manifest.txt aufgefuehrten Dateien. +% ====================================================================== +% \fi +% +% \CharacterTable +% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +% Digits \0\1\2\3\4\5\6\7\8\9 +% Exclamation \! Double quote \" Hash (number) \# +% Dollar \$ Percent \% Ampersand \& +% Acute accent \' Left paren \( Right paren \) +% Asterisk \* Plus \+ Comma \, +% Minus \- Point \. Solidus \/ +% Colon \: Semicolon \; Less than \< +% Equals \= Greater than \> Question mark \? +% Commercial at \@ Left bracket \[ Backslash \\ +% Right bracket \] Circumflex \^ Underscore \_ +% Grave accent \` Left brace \{ Vertical bar \| +% Right brace \} Tilde \~} +% +% \iffalse +%%% From File: $Id: scrkernel-pagestyles.dtx 1551 2013-12-16 14:02:13Z mjk $ +%<*driver> +% \fi +\ProvidesFile{scrkernel-pagestyles.dtx}[2013/12/16 v3.12 KOMA-Script + (page style)] +% \iffalse +\documentclass[halfparskip-]{scrdoc} +\usepackage[english,ngerman]{babel} +\usepackage[latin1]{inputenc} +\CodelineIndex +\RecordChanges +\GetFileInfo{scrkernel-pagestyles.dtx} +\title{\KOMAScript{} \partname\ \texttt{\filename}% + \footnote{Dies ist Version \fileversion\ von Datei \texttt{\filename}.}} +\date{\filedate} +\author{Markus Kohm} + +\begin{document} + \maketitle + \tableofcontents + \DocInput{\filename} +\end{document} +%</driver> +% \fi +% +% \selectlanguage{ngerman} +% +% \changes{v2.95}{2002/06/25}{% +% erste Version aus der Aufteilung von \texttt{scrclass.dtx}} +% +% \section{Seitenstil} +% +% Neben den Definitionen zum Seitenstil in dieser Datei gibt es auch +% noch das Paket \textsf{scrpage2} (siehe \texttt{scrpage.dtx}). +% Es\marginline{Geplant!} ist deshalb davon auszugehen, dass zukünftig die +% Definitionen hier komplett durch \textsf{scrpage2} ersetzt werden und +% \textsf{scrpage2} von den \KOMAScript-Klassen direkt geladen wird. +% +% \StopEventually{\PrintIndex\PrintChanges} +% +% \subsection{Optionen für die Trennlinien in Kopf und Fuß} +% +% \iffalse +%<*option> +%<*class> +% \fi +% +% \begin{option}{headsepline} +% \changes{v2.95c}{2006/08/11}{BugFix: Argument bei +% \cs{PassOptionsToPackage} vertauscht}% +% \changes{v2.97c}{2007/04/19}{Option \texttt{headinclude} wird nicht +% mehr an \textsf{typearea} geschickt}% +% \changes{v2.98c}{2008/03/26}{Option \texttt{headinclude} wird gesetzt, +% wobei kein Fehler ausgegeben wird, wenn sie nicht existiert.}% +% \changes{v3.12}{2013/03/05}{Nutzung der Status-Signalisierung mit +% \cs{FamilyKeyStateProcessed}}% +% \changes{v3.12}{2013/03/05}{wenn \textsf{typearea} noch gar nicht geladen +% ist, Option an dieses Paket schicken} +% \begin{option}{headnosepline} +% \changes{v2.97d}{2007/10/03}{\cs{PackageInfo} durch \cs{PackageInfoNoLine} +% ersetzt} +% \changes{v3.01a}{2008/11/20}{deprecated} +% Der Kopfteil kann mit einer Linie vom Textbereich getrennt werden. +% \begin{macro}{\if@hsl} +% \begin{macro}{\@hsltrue} +% \begin{macro}{\@hslfalse} +% Die Entscheidung wird in einem Schalter gespeichert. +% \begin{macrocode} +\newif\if@hsl +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% Gleichzeitig wird dem \textsf{typearea}-Paket mitgeteilt, dass der +% Kopf zum Textbereich zu rechnen ist. Dies geschieht allerdings in +% umgekehrter Richtung nicht. Die Optionen sind also nicht +% symmetrisch. +% \begin{macrocode} +\KOMA@key{headsepline}[true]{% + \KOMA@set@ifkey{headsepline}{@hsl}{#1}% + \ifx\FamilyKeyState\FamilyKeyStateProcessed + \@ifundefined{typearea}{% + \PassOptionsToPackage{typearea}{headinclude=#1}% + }{% + \KOMAoptions{headinclude=#1}{}% + }% + \fi +} +\KOMA@DeclareDeprecatedOption{headnosepline}{headsepline=false} +% \end{macrocode} +% \end{option} +% \end{option} +% +% +% \begin{option}{footsepline} +% \changes{v2.0e}{1994/08/14}{bei \cs{PassOptionsToPackage} fehlte +% die Paket-Angabe}^^A +% \changes{v2.95c}{2006/08/11}{BugFix: Argument bei +% \cs{PassOptionsToPackage} vertauscht}^^A +% \changes{v2.97c}{2007/04/19}{Option \texttt{footinclude} wird nicht +% mehr an \textsf{typearea} geschickt}^^A +% \changes{v2.98c}{2008/03/26}{Option \texttt{footinclude} wird gesetzt, +% wobei kein Fehler ausgegeben wird, wenn sie nicht existiert.}^^A +% \changes{v3.12}{2013/03/05}{Nutzung der Status-Signalisierung mit +% \cs{FamilyKeyStateProcessed}}^^A +% \changes{v3.12}{2013/03/05}{wenn \textsf{typearea} noch gar nicht geladen +% ist, Option an dieses Paket schicken}^^A +% \changes{v3.12}{2013/08/26}{\cs{KOMA@options} durch +% \cs{KOMAoptions} ersetzt}^^A +% \changes{v3.12}{2013/08/26}{ggf. Satzspiegel neu berechnen}^^A +% \begin{option}{footnosepline} +% \changes{v2.97d}{2007/10/03}{\cs{PackageInfo} durch \cs{PackageInfoNoLine} +% ersetzt} +% \changes{v3.01a}{2008/11/20}{deprecated} +% Der Fußteil kann mit einer Linie vom Textbereich getrennt werden. +% \begin{macro}{\if@fsl} +% \begin{macro}{\@fsltrue} +% \begin{macro}{\@fslfalse} +% Die Entscheidung wird in einem Schalter gespeichert. +% \begin{macrocode} +\newif\if@fsl +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% Gleichzeitig wird dem \texttt{typearea}-Paket mitgeteilt, dass der +% Fuß zum Textbereich zu rechnen ist. Auch hier sind die Optionen +% nicht symmetrisch. +% \begin{macrocode} +\KOMA@key{footsepline}[true]{% + \KOMA@set@ifkey{footsepline}{@fsl}{#1}% + \ifx\FamilyKeyState\FamilyKeyStateProcessed + \@ifundefined{typearea}{% + \PassOptionsToPackage{typearea}{headinclude=#1}% + }{% + \KOMAoptions{footinclude=#1,DIV=current}% + }% + \fi +} +\KOMA@DeclareDeprecatedOption{footnosepline}{footsepline=false} +% \end{macrocode} +% \end{option} +% \end{option} +% +% In früheren Versionen wurde noch die Option \texttt{mpinclude} von +% den Klassen ausgewertet. Dies geschieht jetzt nur noch in +% \textsf{typearea}. Von den Klassen wird dann ggf. auf den dort +% definierten Schalter zugegriffen. Dieses Vorgehen ist deshalb +% sinnvoll, weil die Klassen ausnahmslos das \textsf{typearea}-Paket +% laden. +% +% +% \subsection{Optionen und Anweisungen für leere Seiten} +% +% \begin{macro}{\if@twoside} +% \changes{v2.97c}{2007/07/18}{Schalter passend setzen} +% Die Voreinstellung wird direkt passend gesetzt. +% \begin{macrocode} +%<article|report|letter>\@twosidefalse +%<book>\@twosidetrue +% \end{macrocode} +% \end{macro} +% +% \iffalse +%</class> +% \fi +% +% \begin{option}{cleardoublepage} +% \changes{v2.95}{2004/08/24}{neuer Schalter} +% \changes{v2.96a}{2007/01/03}{Wert \texttt{current} sollte nun +% funktionieren} +% \changes{v2.98c}{2008/03/06}{verwendet \cs{def} statt \cs{let}, damit die +% Option \texttt{open} funktioniert} +% \changes{v3.12}{2013/03/05}{Nutzung der Status-Signalisierung mit +% \cs{FamilyKeyStateProcessed}}% +% \begin{option}{cleardoubleempty} +% \changes{v2.8a}{2001/06/18}{neue Option} +% \changes{v2.97d}{2007/10/03}{\cs{PackageInfo} durch \cs{PackageInfoNoLine} +% ersetzt} +% \changes{v3.01a}{2008/11/20}{deprecated} +% \begin{option}{cleardoubleplain} +% \changes{v2.8a}{2001/06/18}{neue Option} +% \changes{v2.97d}{2007/10/03}{\cs{PackageInfo} durch \cs{PackageInfoNoLine} +% ersetzt} +% \changes{v3.01a}{2008/11/20}{deprecated} +% \begin{option}{cleardoublestandard} +% \changes{v2.8a}{2001/06/18}{neue Option} +% \changes{v2.8q}{2001/11/06}{\cs{cleardoublestandardpage} statt +% \cs{cleardoublestandard}} +% \changes{v2.97d}{2007/10/03}{\cs{PackageInfo} durch \cs{PackageInfoNoLine} +% ersetzt} +% \changes{v3.01a}{2008/11/20}{deprecated} +% \begin{macro}{\cleardoublestandardpage} +% \changes{v2.8a}{2001/06/18}{neu} +% \changes{v2.96a}{2007/01/02}{korrekter Ersatzwert gesetzt} +% \begin{macro}{\cleardoubleusingstyle} +% \changes{v2.95}{2004/08/24}{neu} +% \changes{v3.06a}{2010/09/17}{\cs{thispagestyle} durch \cs{pagestyle} +% ersetzt} +% \begin{macro}{\cleardoubleemptypage} +% \changes{v2.8a}{2001/06/18}{neu} +% \begin{macro}{\cleardoubleplainpage} +% \changes{v2.8a}{2001/06/18}{neu} +% \begin{macro}{\cleardoubleoddpage} +% \changes{v3.00}{2008/09/27}{neu} +% \begin{macro}{\cleardoubleoddstandardpage} +% \changes{v2.98c}{2008/03/06}{neu} +% \begin{macro}{\cleardoubleoddusingstyle} +% \changes{v2.98c}{2008/03/06}{neu} +% \changes{v3.06a}{2010/09/17}{\cs{thispagestyle} durch \cs{pagestyle} +% ersetzt} +% \begin{macro}{\cleardoubleoddemptypage} +% \changes{v2.98c}{2008/03/06}{neu} +% \begin{macro}{\cleardoubleoddplainpage} +% \changes{v2.98c}{2001/06/18}{neu} +% \begin{macro}{\cleardoubleevenpage} +% \changes{v3.00}{2008/09/27}{neu} +% \begin{macro}{\cleardoubleevenstandardpage} +% \changes{v2.98c}{2008/03/06}{neu} +% \begin{macro}{\cleardoubleevenusingstyle} +% \changes{v2.98c}{2008/03/06}{neu} +% \changes{v3.06a}{2010/09/17}{\cs{thispagestyle} durch \cs{pagestyle} +% ersetzt} +% \begin{macro}{\cleardoubleevenemptypage} +% \changes{v2.98c}{2008/03/06}{neu} +% \begin{macro}{\cleardoubleevenplainpage} +% \changes{v2.98c}{2001/06/18}{neu} +% \begin{macro}{\cleardoublepage} +% \changes{v2.98c}{2001/06/18}{wird immer neu definiert} +% \changes{v2.98c}{2008/04/11}{neue Voreinstellung für Versionen nach 2.98c} +% Bei Verwendung von \texttt{twoside} und \texttt{openright} bei den +% Klassen \textsf{scrbook} und \textsf{scrreprt} wird bei \cs{chapter} +% implizit \cs{cleardoublepage} ausgeführt. Das führt ggf. +% normalerweise zu einer linken Seite, auf der noch der Kolumnentitel +% des vorherigen Kapitels und eine Seitenzahl steht. Häufig wird +% stattdessen nur eine Seitenzahl oder auch gar nichts gewünscht. Es +% soll also der Seitenstil \texttt{plain} oder \texttt{empty} +% verwendet werden. Dies wird mit den Optionen ermöglicht. Dazu +% werden auch gleich neue Makros definiert: +% \begin{macrocode} +\KOMA@key{cleardoublepage}{% + \begingroup% + \def\@tempc{% + \endgroup% + \KOMA@unknown@keyval{cleardoublepage}{#1}{% + 'current' or any defined pagestyle e.g. 'empty','plain'}% + }% + \ifstr{#1}{current}{% + \def\@tempc{\endgroup% + \def\cleardoublepage{\cleardoublestandardpage}% + \def\cleardoubleoddpage{\cleardoubleoddstandardpage}% + \def\cleardoubleevenpage{\cleardoubleevenstandardpage}% + \FamilyKeyStateProcessed + }% + }{% + \ifnotundefined{ps@#1}{% + \def\@tempc{\endgroup% + \def\cleardoublepage{\cleardoublepageusingstyle{#1}}% + \def\cleardoubleoddpage{\cleardoubleoddpageusingstyle{#1}}% + \def\cleardoubleevenpage{\cleardoubleevenpageusingstyle{#1}}% + \FamilyKeyStateProcessed + }% + }{}% + }% + \@tempc +} +\newcommand*{\cleardoubleoddstandardpage}{} +\let\cleardoubleoddstandardpage=\cleardoublepage +\newcommand*{\cleardoubleoddpageusingstyle}[1]{\clearpage + {\pagestyle{#1}\cleardoubleoddstandardpage}} +\newcommand*{\cleardoubleoddemptypage}{\cleardoubleoddpageusingstyle{empty}} +\newcommand*{\cleardoubleoddplainpage}{\cleardoubleoddpageusingstyle{plain}} +\newcommand*{\cleardoubleevenstandardpage}{% + \clearpage + \if@twoside\ifodd\c@page + \hbox{}\newpage\if@twocolumn\hbox{}\newpage\fi + \fi\fi +} +\newcommand*{\cleardoubleevenpageusingstyle}[1]{\clearpage + {\pagestyle{#1}\cleardoubleevenstandardpage}} +\newcommand*{\cleardoubleevenemptypage}{\cleardoubleevenpageusingstyle{empty}} +\newcommand*{\cleardoubleevenplainpage}{\cleardoubleevenpageusingstyle{plain}} +\newcommand*{\cleardoublestandardpage}{\cleardoubleoddstandardpage} +\renewcommand*{\cleardoublepage}{% + \expandafter\ifnum \@nameuse{scr@v@2.98c}<\scr@compatibility\relax + \cleardoubleemptypage + \else + \cleardoublestandardpage + \fi +} +\newcommand*{\cleardoubleoddpage}{\cleardoubleoddemptypage} +\newcommand*{\cleardoubleevenpage}{\cleardoubleevenemptypage} +\newcommand*{\cleardoublepageusingstyle}[1]{\clearpage + {\pagestyle{#1}\cleardoublestandardpage}} +\newcommand*{\cleardoubleemptypage}{\cleardoublepageusingstyle{empty}} +\newcommand*{\cleardoubleplainpage}{\cleardoublepageusingstyle{plain}} +%<*class> +\KOMA@DeclareDeprecatedOption{cleardoubleempty}{cleardoublepage=empty} +\KOMA@DeclareDeprecatedOption{cleardoubleplain}{cleardoublepage=plain} +\KOMA@DeclareDeprecatedOption{cleardoublestandard}{cleardoublepage=current} +%</class> +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{option} +% \end{option} +% \end{option} +% \end{option} +% +% +% \iffalse +%</option> +%<*body> +%<*class> +% \fi +% +% +% \subsection{Befehle für den Kompatibilitätsmodus} +% +% \begin{macro}{\headincludeon} +% \changes{v2.95}{2004/07/21}{ersatzlos gestrichen} +% \begin{macro}{\headincludeoff} +% \changes{v2.95}{2004/07/21}{ersatzlos gestrichen} +% \begin{macro}{\headseplineon} +% \changes{v2.95}{2004/07/21}{ersatzlos gestrichen} +% \begin{macro}{\headseplineoff} +% \changes{v2.95}{2004/07/21}{ersatzlos gestrichen} +% \begin{macro}{\footincludeon} +% \changes{v2.95}{2004/07/21}{ersatzlos gestrichen} +% \begin{macro}{\footincludeoff} +% \changes{v2.95}{2004/07/21}{ersatzlos gestrichen} +% \begin{macro}{\footseplineon} +% \changes{v2.95}{2004/07/21}{ersatzlos gestrichen} +% \begin{macro}{\footseplineoff} +% \changes{v2.95}{2004/07/21}{ersatzlos gestrichen} +% Da die \KOMAScript-Klassen ohnehin nicht mehr auf Kompatibilität zu +% \textsf{Script~2.0} überprüft werden, wurde der Kompatibilitätsmodus +% ersatzlos gestrichen. Dazu gehören nach über zehn Jahren nun auch diese +% Anweisungen. Ehemals waren sie wie folgt definiert: +% \begin{verbatim} +% \if@compatibility +% \newcommand*\headincludeon{\@hincltrue} +% \newcommand*\headincludeoff{\@hinclfalse} +% \newcommand*\headseplineon{\@hsltrue \@hincltrue} +% \newcommand*\headseplineoff{\@hslfalse \@hinclfalse} +% \newcommand*\footincludeon{\@fincltrue} +% \newcommand*\footincludeoff{\@finclfalse} +% \newcommand*\footseplineon{\@fsltrue \@fincltrue} +% \newcommand*\footseplineoff{\@fslfalse \@finclfalse} +% \fi +% \end{verbatim} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% +% \subsection{Definition der Standardseitenstile} +% +% \changes{v2.0e}{1994/08/10}{bei \textsf{scrbook} gibt es kein +% einseitiges Layout} +% \changes{v2.3a}{1995/07/08}{da bei \textsf{book} seit Version 1.2v +% die Option oneside wieder ein einseitiges Layout erzeugt, dieses +% wieder eingebaut} +% +% \begin{macro}{\ps@plain} +% \begin{macro}{\ps@myheadings} +% \begin{macro}{\ps@headings} +% Es wird das Aussehen der Kopf- und Fußzeilen für die +% Standardseitenstile \texttt{empty}, \texttt{plain}, +% \texttt{headings} und \texttt{myheadings} festgelegt. Diese sind +% außerdem abhängig davon, ob es sich um einseitiges oder beidseitiges +% Layout handelt. +% +% Im Gegensatz zu den Seitenstilen der Standardklassen steht die +% Seitennummer beim \KOMAScript{} Paket immer in der Fußzeile. +% Außerdem sind Trennlinien zwischen Kopf- und Textbereich sowie +% zwischen Text- und Fußbereich möglich. +% +% Die Kopfzeile wird auch nicht mehr in Großbuchstaben gewandelt. +% +% \changes{v2.2a}{1995/02/07}{bei \textsf{scrbook} und +% \textsf{scrreprt} Punkt hinter der section-Nummer entfernt} +% \changes{v2.2c}{1995/05/25}{Punkt hinter der Kapitelnummer in der +% Kopfzeile entfernt} +% \changes{v2.2c}{1995/05/25}{Nummern in der Kopfzeile auf CJK +% umgestellt} +% \changes{v2.4f}{1996/10/08}{\cs{strut} in der Kopfzeile +% eingefügt} +% \begin{macro}{\set@tempdima@hw} +% \changes{v2.8q}{2002/03/28}{neu (intern)} +% Um nicht ständig das Gleiche schreiben zu müssen wird hier ein +% internes Makro verwendet. +% \begin{macrocode} +\newcommand*{\set@tempdima@hw}{% + \setlength{\@tempdima}{\textwidth}% + \if@mincl + \addtolength{\@tempdima}{\marginparsep}% + \addtolength{\@tempdima}{\marginparwidth}% + \fi +} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\pnumfont} +% \changes{v2.8c}{2001/06/29}{\cs{normalcolor} eingefügt} +% \begin{macro}{\headfont} +% \changes{v2.8c}{2001/06/29}{\cs{normalcolor} eingefügt} +% \begin{macro}{\footfont} +% \changes{v2.98c}{2008/02/14}{Neu} +% Kopf- und Fußzeile sowie die Seitennummer werden in einer speziellen +% Schriftart gesetzt. Die drei Makros hier sind jedoch als interne +% Makros zu betrachten. +% \begin{macrocode} +\newcommand*{\pnumfont}{\normalfont\normalcolor} +\newcommand*{\headfont}{\normalfont\normalcolor\slshape} +\newcommand*{\footfont}{} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \begin{KOMAfont}{pagenumber} +% \changes{v2.8o}{2001/09/14}{neues Element \texttt{pagenumber}} +% \begin{KOMAfont}{pagination} +% \changes{v2.8o}{2001/09/14}{neues Alias-Element} +% \begin{KOMAfont}{pageheadfoot} +% \changes{v2.98c}{2008/02/14}{neues Element} +% \begin{KOMAfont}{pagehead} +% \changes{v2.8o}{2001/09/14}{neues Element \texttt{pagehead}} +% \changes{v2.98c}{2008/02/14}{neuer Alias} +% \begin{macro}{\scr@fnt@wrn@pagehead} +% \changes{v2.8o}{2001/09/14}{neue Warnung für Element \texttt{pagehead}} +% \changes{v2.97c}{2007/09/25}{Warnung geändert} +% \changes{v2.98c}{2008/02/14}{Warnung geändert} +% \begin{KOMAfont}{pagefoot} +% \changes{v2.8o}{2001/09/14}{neues Element \texttt{pagefoot}} +% \changes{v2.98c}{2008/02/14}{nicht länger ein Alias} +% \begin{macro}{\scr@fnt@wrn@pagefoot} +% \changes{v2.98c}{2008/02/14}{Neu (intern)} +% Hier werden die Elemente definiert, deren Schriftart dann geändert +% werden kann. +% \begin{macrocode} +\newcommand*{\scr@fnt@pagenumber}{\pnumfont} +\aliaskomafont{pagination}{pagenumber} +\newcommand*{\scr@fnt@pageheadfoot}{\headfont} +\aliaskomafont{pagehead}{pageheadfoot} +%<*letter> +\newcommand*{\scr@fnt@wrn@pagehead}[1]{% + `pagehead' is only an alias of `pageheadfoot'.\MessageBreak + Font of page foot will also be changed% +} +\newcommand*{\scr@fnt@pagefoot}{\footfont} +%</letter> +%<*!letter> +\newcommand*{\scr@fnt@pagefoot}{\footfont} +\newcommand*{\scr@fnt@wrn@pagefoot}[1]{% + This class does not use font element `pagefoot'!\MessageBreak + Maybe you should load package `scrpage2', before\MessageBreak + using this element% +} +%</!letter> +% \end{macrocode} +% \end{macro} +% \end{KOMAfont} +% \end{macro} +% \end{KOMAfont} +% \end{KOMAfont} +% \end{KOMAfont} +% \end{KOMAfont} +% +% \begin{macro}{\pagemark} +% \changes{v2.95}{2006/03/15}{nun für alle Klassen} +% \changes{v3.05}{2010/02/05}{eine zusätzliche Gruppe eingefügt} +% Das ist die Seitenmarke, die nun für alle Klassen verwendet wird. Damit +% wird es leichter, \textsf{fancyhdr} statt \textsf{scrpage2} zu verwenden. +% \begin{macrocode} +\newcommand*{\pagemark}{{\usekomafont{pagenumber}{% +%<letter> \pagename\ % + \thepage}}} +% \end{macrocode} +% \end{macro} +% +% Zurück zur Definition der Seitenstile. Hier gibt es erhebliche +% Unterschiede zwischen der Briefklasse und den anderen Klassen. Das beginnt +% schon damit, dass es spezielle Stile für doppelseitige Briefe nicht gibt. +% \changes{v2.1b}{1994/12/31}{im einseitigen Seitenstil \cs{markboth} durch +% \cs{markright} ersetzt}% +% \changes{v2.2a}{1995/02/07}{im einseitigen Seitenstil bei +% \textsf{scrartcl} und \texttt{oneside} \cs{subsectionmark} eingefügt}% +% \changes{v2.2a}{1995/02/07}{im einseitigen Seitenstil bei +% \textsf{scrreprt} und \texttt{oneside} \cs{sectionmark} eingefügt}% +% \changes{v2.0e}{1994/08/17}{im einseitigen Seitenstil \cs{markboth} durch +% \cs{markright} ersetzt}% +% \changes{v2.97c}{2007/07/18}{Unterscheidung auf \texttt{twoside} so spät +% wie möglich}% +% \changes{v3.10}{2011/08/31}{\cs{MakeMarkcase} wird beachtet}% +% Hinweis: Die \emph{even}-Varianten werden im einseitigen Satz vom +% \LaTeX-Kern selbst nicht verwendet. Es schadet also nicht, sie trotzdem +% identisch zum doppelseitigen Satz zu definieren. +% \begin{macrocode} +%<*!letter> +\renewcommand*{\ps@plain}{% + \renewcommand*{\@oddhead}{}% + \let\@evenhead\@oddhead + \renewcommand*{\@evenfoot}{% + \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\pagemark\hfil}}}}}% + \renewcommand*{\@oddfoot}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\hfil\pagemark + \if@twoside\else\hfil\fi}}}}\hss}% +}% +\newcommand*{\ps@headings}{\let\@mkboth\markboth + \renewcommand*{\@evenhead}{% + \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% + \hb@xt@ \@tempdima{{\headfont\strut\leftmark\hfil}}% + \if@hsl \vskip 1.5\p@ \hrule \fi}}}% + \renewcommand*{\@oddhead}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \hb@xt@ \@tempdima{{\headfont\hfil\strut\rightmark + \if@twoside\else\hfil\fi}}% + \if@hsl \vskip 1.5\p@ \hrule \fi}}\hss}% + \renewcommand*{\@evenfoot}{% + \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\pagemark\hfil}}}}}% + \renewcommand*{\@oddfoot}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\hfil\pagemark + \if@twoside\else\hfil\fi}}}}\hss}% +%<*article> + \renewcommand*{\sectionmark}[1]{% + \if@twoside\expandafter\markboth\else\expandafter\markright\fi + {\MakeMarkcase{\ifnumbered{section}{\sectionmarkformat\fi}{}##1}}{}}% + \renewcommand*{\subsectionmark}[1]{% + \if@twoside + \markright{% + \MakeMarkcase{\ifnumbered{subsection}{\subsectionmarkformat}{}##1}% + }% + \fi + }% +%</article> +%<*report|book> + \renewcommand*{\chaptermark}[1]{% + \if@twoside\expandafter\markboth\else\expandafter\markright\fi + {\MakeMarkcase{\ifnumbered{chapter}{% +%<book> \if@mainmatter + \chaptermarkformat +%<book> \fi + }{}##1}% + }{}% + }% + \renewcommand*{\sectionmark}[1]{% + \if@twoside + \markright{\MakeMarkcase{\ifnumbered{section}{\sectionmarkformat}{}% + ##1}}% + \fi + }% +%</report|book> +}% +\newcommand*{\ps@myheadings}{\let\@mkboth\@gobbletwo + \renewcommand*{\@evenhead}{% + \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% + \hb@xt@ \@tempdima{{\headfont\strut\leftmark\hfil}}% + \if@hsl \vskip 1.5\p@ \hrule \fi}}}% + \renewcommand*{\@oddhead}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \hb@xt@ \@tempdima{{\headfont\hfil\strut\rightmark + \if@twoside\else\hfil\fi}}% + \if@hsl \vskip 1.5\p@ \hrule \fi}}\hss}% + \renewcommand*{\@evenfoot}{% + \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\pagemark\hfil}}}}}% + \renewcommand*{\@oddfoot}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\hfil\pagemark + \if@twoside\else\hfil\fi}}}}\hss}% +%<!article> \renewcommand*{\chaptermark}[1]{}% +%<article> \renewcommand*{\subsectionmark}[1]{}% + \renewcommand*{\sectionmark}[1]{}% +} +%</!letter> +% \end{macrocode} +% \changes{v3.08}{2010/10/28}{\cs{noindent} added before usage of variable +% \texttt{nexthead} or \texttt{nextfoot}} +% \begin{macrocode} +%<*letter> +\renewcommand*{\ps@plain}{% + \renewcommand*{\@oddhead}{% + \vbox{\vbox{\hsize=\textwidth\hbox to\textwidth{% + \parbox[b]{\textwidth}{\strut + \ifnum\@pageat>-1 + \ifnum\@pageat<3 + \ifcase\@pageat\raggedright\or\centering\or\raggedleft\fi + \pagemark + \else + \hfill + \fi + \else + \hfill + \fi + }% + }% + \if@hsl\kern1pt\rule{\textwidth}{.4pt}\fi + }% + }% + }% + \let\@evenhead\@oddhead% + \renewcommand*{\@oddfoot}{% + \parbox[t]{\textwidth}{% + \if@fsl + {% + \raggedright% + \vskip-\baselineskip\vskip.4pt + \hrulefill\\ + }% + \fi + \ifnum\@pageat>2 + \ifcase\@pageat\or\or\or\raggedright\or\centering\or\raggedleft\fi + \strut\pagemark + \else + \hfill + \fi + }% + }% + \let\@evenfoot\@oddfoot +} +\newcommand*{\ps@headings}{\let\@mkboth\markboth + \renewcommand*{\@oddhead}{% + \vbox{% + \vbox{\hsize=\textwidth\hbox to\textwidth{\headfont\noindent + \usekomavar{nexthead}}}% + \if@hsl\kern1pt\rule{\textwidth}{.4pt}\fi% + }% + }% + \let\@evenhead\@oddhead + \renewcommand*{\@oddfoot}{% + \parbox[t]{\textwidth}{% + \if@fsl + {% + \raggedright% + \vskip-\baselineskip\vskip.4pt + \hrulefill\\ + }% + \fi + \vbox{\hsize=\textwidth\hbox to\textwidth{\headfont\footfont\noindent + \usekomavar{nextfoot}}}% + }% + }% + \let\@evenfoot\@oddfoot +} +\newcommand*{\ps@myheadings}{% + \ps@headings + \let\@mkboth\@gobbletwo +} +%</letter> +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% +% \subsection{Festlegung des Seitenstils auf besonderen Seiten} +% +% So etwas gibt es derzeit nicht für Briefe. +% \iffalse +%</class> +%<*!letter> +% \fi +% +% \begin{macro}{\titlepagestyle} +% \changes{v2.8d}{2001/07/05}{neu} +% \begin{macro}{\partpagestyle} +% \changes{v2.8d}{2001/07/05}{neu} +% \changes{v3.00}{2008/08/05}{nicht mehr in \textsf{scrartcl} definiert} +% \begin{macro}{\chapterpagestyle} +% \changes{v2.8d}{2001/07/05}{neu} +% \begin{macro}{\indexpagestyle} +% \changes{v2.8d}{2001/07/05}{neu} +% Auf verschiedenen Seiten wird automatisch mit \cs{thispagestyle} auf +% einen anderen Seitenstil umgeschaltet. Welcher das ist, ist in +% diesem Makros abgelegt und kann bei Bedarf geändert werden. +% Voreingestellt ist der in früheren Versionen fest verdrahtete +% Seitenstil \texttt{plain}. +% \begin{macrocode} +\newcommand*{\titlepagestyle}{plain} +%<book|report>\newcommand*{\partpagestyle}{plain} +%<book|report>\newcommand*{\chapterpagestyle}{plain} +%<class>\newcommand*{\indexpagestyle}{plain} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \iffalse +%</!letter> +%<*class> +% \fi +% +% \subsection{Standardeinstellungen} +% +% Der voreingestellte Seitenstil hängt von der verwendeten Klasse ab: +% \begin{macrocode} +%<report|article|letter>\pagestyle{plain} +%<book>\pagestyle{headings} +% \end{macrocode} +% Die Nummerierung erfolgt hingegen immer mit arabischen Zahlen: +% \begin{macrocode} +\pagenumbering{arabic} +% \end{macrocode} +% +% Im zweiseitigen Satz wird die letzte Zeile bündig gesetzt, im +% einseitigen und bei Briefen generell jedoch nicht: +% \begin{macrocode} +%<*!letter> +\if@twoside + \flushbottom +\else +%</!letter> + \raggedbottom +%<!letter>\fi +% \end{macrocode} +% Im zweispaltigen Satz wird \cs{sloppy} verwendet und die letzte +% Zeile jeweils bündig gesetzt. Briefe sind einspaltig. +% \begin{macrocode} +%<*!letter> +\if@twocolumn + \twocolumn + \sloppy + \flushbottom +\else +%</!letter> + \onecolumn +%<!letter>\fi +% \end{macrocode} +% +% +% \iffalse +%</class> +%</body> +% \fi +% +% \Finale +% +\endinput +% +% end of file `scrkernel-pagestyles.dtx' +%%% Local Variables: +%%% mode: doctex +%%% TeX-master: t +%%% End: |