summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/koma-script/source
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2020-04-22 03:02:46 +0000
committerNorbert Preining <norbert@preining.info>2020-04-22 03:02:46 +0000
commite0e2537ccbac6924b371be81092c1177e817162c (patch)
tree1ee747d3a078004710d37b5f3ddaa9d975bdded7 /macros/latex/contrib/koma-script/source
parent8731cc5ad70723b9a155917df509d857579c355d (diff)
CTAN sync 202004220302
Diffstat (limited to 'macros/latex/contrib/koma-script/source')
-rw-r--r--macros/latex/contrib/koma-script/source/Makefile10
-rw-r--r--macros/latex/contrib/koma-script/source/scrextend.dtx16
-rw-r--r--macros/latex/contrib/koma-script/source/scrhack.dtx28
-rw-r--r--macros/latex/contrib/koma-script/source/scrkernel-basics.dtx93
-rw-r--r--macros/latex/contrib/koma-script/source/scrkernel-compatibility.dtx10
-rw-r--r--macros/latex/contrib/koma-script/source/scrkernel-language.dtx66
-rw-r--r--macros/latex/contrib/koma-script/source/scrkernel-letterclassoptions.dtx16
-rw-r--r--macros/latex/contrib/koma-script/source/scrkernel-listsof.dtx24
-rw-r--r--macros/latex/contrib/koma-script/source/scrkernel-miscellaneous.dtx14
-rw-r--r--macros/latex/contrib/koma-script/source/scrkernel-notepaper.dtx31
-rw-r--r--macros/latex/contrib/koma-script/source/scrkernel-sections.dtx91
-rw-r--r--macros/latex/contrib/koma-script/source/scrkernel-typearea.dtx135
-rw-r--r--macros/latex/contrib/koma-script/source/scrkernel-version.dtx4
-rw-r--r--macros/latex/contrib/koma-script/source/scrmain.ins11
-rw-r--r--macros/latex/contrib/koma-script/source/scrpage.dtx2261
-rw-r--r--macros/latex/contrib/koma-script/source/scrwfile.dtx9
-rw-r--r--macros/latex/contrib/koma-script/source/tocbasic.dtx11
17 files changed, 400 insertions, 2430 deletions
diff --git a/macros/latex/contrib/koma-script/source/Makefile b/macros/latex/contrib/koma-script/source/Makefile
index 5c5ae90b84..f0273531c9 100644
--- a/macros/latex/contrib/koma-script/source/Makefile
+++ b/macros/latex/contrib/koma-script/source/Makefile
@@ -1,6 +1,6 @@
# ======================================================================
# Makefile
-# Copyright (c) Markus Kohm, 2002-2019
+# Copyright (c) Markus Kohm, 2002-2020
#
# This file is part of the LaTeX2e KOMA-Script bundle.
#
@@ -18,7 +18,7 @@
# This work consists of all files listed in manifest.txt.
# ----------------------------------------------------------------------
# Makefile
-# Copyright (c) Markus Kohm, 2002-2019
+# Copyright (c) Markus Kohm, 2002-2020
#
# Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz,
# Version 1.3c, verteilt und/oder veraendert werden.
@@ -101,7 +101,6 @@ CLS_MAIN = scrbook.cls \
scrbase.sty \
scrkbase.sty \
scraddr.sty \
- scrpage2.sty \
scrtime.sty \
scrdate.sty \
scrjura.sty \
@@ -139,7 +138,6 @@ CLS_MAIN = scrbook.cls \
scrlayer-scrpage.sty \
scrlayer-notecolumn.sty \
scrlayer-fancyhdr.sty
-# komamarks.sty
CLS_MAIN_DTX = scrkernel-basics.dtx \
scrkernel-bibliography.dtx \
@@ -168,7 +166,6 @@ CLS_MAIN_DTX = scrkernel-basics.dtx \
scrlfile.dtx \
scrwfile.dtx \
scraddr.dtx \
- scrpage.dtx \
scrtime.dtx \
scrlogo.dtx \
scrextend.dtx \
@@ -180,7 +177,6 @@ CLS_MAIN_DTX = scrkernel-basics.dtx \
scrlayer-scrpage.dtx \
scrlayer-notecolumn.dtx \
scrlayer-fancyhdr.dtx
-# komamarks.dtx
STATIC_DOC = README \
INSTALL.txt \
@@ -197,10 +193,8 @@ CLS_MAIN_INS = scrmain.ins
CLS_MAIN_SUBINS = scrstrip.inc scrstrop.inc scrdocstrip.tex
ALPHA_INS = tocstyle.dtx scrlayer-fancyhdr.dtx
-# komamarks.dtx
ALPHA_DOC = tocstyle.pdf scrlayer-fancyhdr.pdf
-# komamarks.pdf
ALPHA_DTX = $(subst .pdf,.dtx,$(ALPHA_DOC))
diff --git a/macros/latex/contrib/koma-script/source/scrextend.dtx b/macros/latex/contrib/koma-script/source/scrextend.dtx
index 009e922244..63718bf10e 100644
--- a/macros/latex/contrib/koma-script/source/scrextend.dtx
+++ b/macros/latex/contrib/koma-script/source/scrextend.dtx
@@ -1,8 +1,8 @@
-% \CheckSum{75}
+% \CheckSum{74}
% \iffalse meta-comment
% ======================================================================
% scrextend.dtx
-% Copyright (c) Markus Kohm, 2002-2019
+% Copyright (c) Markus Kohm, 2002-2020
%
% This file is part of the LaTeX2e KOMA-Script bundle.
%
@@ -20,7 +20,7 @@
% This work consists of all files listed in manifest.txt.
% ----------------------------------------------------------------------
% scrextend.dtx
-% Copyright (c) Markus Kohm, 2002-2019
+% Copyright (c) Markus Kohm, 2002-2020
%
% Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz,
% Version 1.3c, verteilt und/oder veraendert werden.
@@ -55,7 +55,7 @@
% Right brace \} Tilde \~}
%
% \iffalse
-%%% From File: $Id: scrextend.dtx 3262 2019-10-10 08:25:29Z kohm $
+%%% From File: $Id: scrextend.dtx 3453 2020-02-25 07:33:30Z kohm $
%<preidentify>%%% (run: preidentify)
%<prepare>%%% (run: prepare)
%<option>%%% (run: option)
@@ -63,7 +63,7 @@
\ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi
\begingroup
\def\filedate$#1: #2-#3-#4 #5${\gdef\filedate{#2/#3/#4}}
- \filedate$Date: 2019-10-10 10:25:29 +0200 (Thu, 10 Oct 2019) $
+ \filedate$Date: 2020-02-25 08:33:30 +0100 (Tue, 25 Feb 2020) $
\def\filerevision$#1: #2 ${\gdef\filerevision{r#2}}
\filerevision$Revision: 1962 $
\endgroup
@@ -111,15 +111,17 @@
%<*preidentify>
% \fi
%
+% \changes{v3.30}{2020/02/25}{\cs{PackageWarningNoLine} statt
+% \cs{PackageWarning} mit angehängtem \cs{@gobble}}%^^A
% \begin{macrocode}
\begingroup\expandafter\expandafter\expandafter\endgroup
\expandafter\ifx\csname KOMAClassName\endcsname\relax\else
- \PackageWarning{scrextend}{%
+ \PackageWarningNoLine{scrextend}{%
This package was made to extend other classes but\MessageBreak
KOMA-Script classes by some features of the\MessageBreak
KOMA-Script classes.\MessageBreak
It should never be used with a KOMA-Script class.\MessageBreak
- Loading of the package will be aborted\@gobble%
+ Loading of the package will be aborted%
}%
\expandafter\endinput
\fi
diff --git a/macros/latex/contrib/koma-script/source/scrhack.dtx b/macros/latex/contrib/koma-script/source/scrhack.dtx
index 4a8aedcecf..5644d18a7e 100644
--- a/macros/latex/contrib/koma-script/source/scrhack.dtx
+++ b/macros/latex/contrib/koma-script/source/scrhack.dtx
@@ -1,8 +1,8 @@
-% \CheckSum{1855}
+% \CheckSum{1877}
% \iffalse meta-comment
% ======================================================================
% scrhack.dtx
-% Copyright (c) Markus Kohm, 2008-2019
+% Copyright (c) Markus Kohm, 2008-2020
%
% This file is part of the LaTeX2e KOMA-Script bundle.
%
@@ -23,7 +23,7 @@
% of TeX would generate the implementation documentation.
% ----------------------------------------------------------------------
% scrhack.dtx
-% Copyright (c) Markus Kohm, 2008-2019
+% Copyright (c) Markus Kohm, 2008-2020
%
% Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz,
% Version 1.3c, verteilt und/oder veraendert werden.
@@ -62,7 +62,7 @@
% Right brace \} Tilde \~}
%
% \iffalse
-%%% From File: $Id: scrhack.dtx 3392 2019-11-19 09:37:46Z kohm $
+%%% From File: $Id: scrhack.dtx 3474 2020-04-08 09:34:56Z kohm $
%<package&identify>%%% using: package,identify
%<package&option>%%% using: package,option
%<package&body>%%% using: package,body
@@ -71,7 +71,7 @@
\ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi
\begingroup
\def\filedate$#1: #2-#3-#4 #5${\gdef\filedate{#2/#3/#4}}
- \filedate$Date: 2019-11-19 10:37:46 +0100 (Tue, 19 Nov 2019) $
+ \filedate$Date: 2020-04-08 11:34:56 +0200 (Wed, 08 Apr 2020) $
\def\filerevision$#1: #2 ${\gdef\filerevision{r#2}}
\filerevision$Revision: 1962 $
\endgroup
@@ -861,6 +861,21 @@
}%
}%
}%
+% \end{macrocode}
+% \changes{v3.30}{2020/04/01}{setzen von \cs{@captype} ergänzt}%^^A
+% Ab Version~3.30 wird zusätzlich \cs{lst@makecaption} um das Setzen von
+% \cs{@captype} auf \texttt{lstlisting} ergänzt. Dadurch wird auch die
+% Verwendung von \cs{raggedlstlistingcaption} ermöglicht, falls dieses
+% definiert wird. Die Umdefinierung erfolgt in Form einer Erweiterung der
+% Definition aus \textsf{listings}. Das sollte so lange funktionieren, solange
+% die Anweisung in \textsf{listings} keine Argumente hat.
+% \begin{macrocode}
+ \expandafter\def\expandafter\lst@makecaption\expandafter{%
+ \expandafter\def\expandafter\@captype\expandafter{%
+ \expandafter l\expandafter s\expandafter t\expandafter l%
+ \expandafter i\expandafter s\expandafter t\expandafter i%
+ \expandafter n\expandafter g\expandafter}\lst@makecaption
+ }%
\let\scr@do@hack@listings\relax
}
\scr@ifexpected{\lstlistoflistings}{%
@@ -1016,6 +1031,7 @@
}{%
% \end{macrocode}
% \changes{v3.25}{2019/01/23}{emergency patch added}%^^A
+% \changes{v3.30}{2020/02/25}{spurious space in warning message removed}%^^A
% If this also does not work, we try an emergency patch, that could break
% things.
% \begin{macrocode}
@@ -1031,7 +1047,7 @@
release of package `nomencl'.\MessageBreak
Mostly this patch does work too, but it also could\MessageBreak
break `nomencl`. If this happens, please deactivate\MessageBreak
- the `nomencl` hack of `scrhack`
+ the `nomencl` hack of `scrhack`%
}%
}{%
\PackageWarning{scrhack}{%
diff --git a/macros/latex/contrib/koma-script/source/scrkernel-basics.dtx b/macros/latex/contrib/koma-script/source/scrkernel-basics.dtx
index f9c193af4f..e46fa55950 100644
--- a/macros/latex/contrib/koma-script/source/scrkernel-basics.dtx
+++ b/macros/latex/contrib/koma-script/source/scrkernel-basics.dtx
@@ -1,8 +1,8 @@
-% \CheckSum{4335}
+% \CheckSum{4366}
% \iffalse meta-comment
% ======================================================================
% scrkernel-basics.dtx
-% Copyright (c) Markus Kohm, 2002-2019
+% Copyright (c) Markus Kohm, 2002-2020
%
% This file is part of the LaTeX2e KOMA-Script bundle.
%
@@ -20,7 +20,7 @@
% This work consists of all files listed in manifest.txt.
% ----------------------------------------------------------------------
% scrkernel-basics.dtx
-% Copyright (c) Markus Kohm, 2002-2019
+% Copyright (c) Markus Kohm, 2002-2020
%
% Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz,
% Version 1.3c, verteilt und/oder veraendert werden.
@@ -55,7 +55,7 @@
% Right brace \} Tilde \~}
%
% \iffalse
-%%% From File: $Id: scrkernel-basics.dtx 3448 2020-01-17 14:56:41Z kohm $
+%%% From File: $Id: scrkernel-basics.dtx 3465 2020-03-07 10:23:56Z kohm $
%<prepare>%%% (run: prepare)
%<option>%%% (run: option)
%<body>%%% (run: body)
@@ -65,7 +65,7 @@
\ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi
\begingroup
\def\filedate$#1: #2-#3-#4 #5${\def\filedate{#2/#3/#4}}
- \filedate$Date: 2020-01-17 15:56:41 +0100 (Fri, 17 Jan 2020) $
+ \filedate$Date: 2020-03-07 11:23:56 +0100 (Sat, 07 Mar 2020) $
\def\filerevision$#1: #2 ${\def\filerevision{r#2}}
\filerevision$Revision: 1638 $
\xdef\fileinfo{\filedate\space\filerevision\space}
@@ -244,6 +244,38 @@
% \end{macrocode}
% \end{macro}%^^A \kernel@ifstar
%
+% \selectlanguage{english}
+%
+% \subsection{Improved \LaTeX{} kernel commands}
+% The \LaTeX{} kernel already provides some useful commands, but some can be
+% improved.
+%
+% \begin{macro}{\rloop}
+% \changes{v3.30}{2020/03/07}{new}
+% The \cs{loop} \dots \cs{repeat} of the \LaTeX{} kernel cannot be used inside
+% a \cs{loop} \dots \cs{repeat} without extra code for preserving
+% \cs{iterate}. So here is a re-entrant version that is also long. This
+% version can be used even inside a \cs{loop} \dots \cs{repeat}. However you
+% should not use \cs{loop} \dots \cs{repeat} inside \cs{rloop} \dots
+% \cs{repeat}.
+% \begin{macrocode}
+%<*base>
+\newcommand{\rloop}[1]{}
+\long\def\rloop#1\repeat{%
+ \ifdefined\iterate
+ \edef\iterate{\unexpanded{#1\relax\expandafter\iterate\fi\def\iterate}%
+ {\unexpanded\expandafter{\iterate}}}%
+ \else
+ \def\iterate{#1\relax\expandafter\iterate\fi\let\iterate\relax}%
+ \fi
+ \iterate
+}
+%</base>
+% \end{macrocode}
+% \end{macro}
+% \selectlanguage{ngerman}
+%
+%
% \subsection{Test von Anweisungen}
%
% \begin{macro}{\scr@ifundefinedorrelax}
@@ -2761,10 +2793,12 @@
% \changes{v3.28}{2019/11/18}{entfernt}%^^A
% \begin{macro}{\scr@ifpdftex}
% \changes{v2.95}{2002/08/19}{neu (intern)}%^^A
+% \changes{v3.30}{2020/03/06}{veralteten Befehl \cs{ifnotundefined} durch
+% \cs{Ifnotundefined} ersetzt}%^^A
% If-then-else-Konstrukt, um zu testen, ob pdf\TeX{} verwendet wird.
% \begin{macrocode}
%<*base>
-\newcommand{\scr@ifpdftex}{\ifnotundefined{pdftexversion}}
+\newcommand{\scr@ifpdftex}{\Ifnotundefined{pdftexversion}}
%</base>
% \end{macrocode}
% \end{macro}
@@ -2772,10 +2806,12 @@
%
% \begin{macro}{\scr@ifluatex}
% \changes{v3.21}{2016/05/27}{neu (intern)}%^^A
+% \changes{v3.30}{2020/03/06}{veralteten Befehl \cs{ifnotundefined} durch
+% \cs{Ifnotundefined} ersetzt}%^^A
% If-the-else-Konstrukt, um zu testen, ob lua\TeX{} verwendet wird.
% \begin{macrocode}
%<*base>
-\newcommand{\scr@ifluatex}{\ifnotundefined{luatexversion}}
+\newcommand{\scr@ifluatex}{\Ifnotundefined{luatexversion}}
%</base>
% \end{macrocode}
% \end{macro}
@@ -2800,10 +2836,12 @@
% \begin{macro}{\scr@ifVTeX}
% \changes{v2.95}{2002/08/19}{neu}%^^A
% \changes{v2.97c}{2007/06/20}{umdefiniert von \cs{scr@ifvtex}}
+% \changes{v3.30}{2020/03/06}{veralteten Befehl \cs{ifnotundefined} durch
+% \cs{Ifnotundefined} ersetzt}%^^A
% If-then-else-Konstrukt, um zu testen, ob V\TeX{} verwendet wird.
% \begin{macrocode}
%<*base>
-\newcommand{\scr@ifVTeX}{\ifnotundefined{VTeXversion}}
+\newcommand{\scr@ifVTeX}{\Ifnotundefined{VTeXversion}}
%</base>
% \end{macrocode}
% \end{macro}
@@ -2880,19 +2918,21 @@
% \begin{macro}{\scr@ifpsoutput}
% \changes{v2.95}{2002/08/21}{neu (intern)}%^^A
% \changes{v2.95}{2004/07/20}{Expandierbarkeit verbessert}%^^A
+% \changes{v3.30}{2020/03/06}{veralteten Befehl \cs{ifnotundefined} durch
+% \cs{Ifnotundefined} ersetzt}%^^A
% If-then-else-Konstrukt, um abhängig davon, ob früher oder später
% \texttt{ps} ausgegeben wird oder nicht, Befehle auszuführen.
% \begin{macrocode}
%<*base>
\newcommand*{\scr@ifpsoutput}{%
- \ifnotundefined{if@dvips}{%
+ \Ifnotundefined{if@dvips}{%
\if@dvips
\expandafter\@firstoftwo
\else
\expandafter\@secondoftwo
\fi
}{%
- \ifnotundefined{OpMode}{%
+ \Ifnotundefined{OpMode}{%
\ifnum\OpMode=2
\expandafter\@firstoftwo
\else
@@ -4105,8 +4145,9 @@
% \begin{macro}{\FamilyUnknownKeyValue}
% \changes{v3.10}{2011/09/12}{no error while processing global options}%^^A
% \changes{v3.11a}{2012/05/28}{prevent remove from list of unused global
-% options globally}%^^A
+% options globally}%^^A
% \changes{v3.14}{2014/10/17}{\cs{long}}%^^A
+% \changes{v3.30}{2020/02/25}{spurious space in warning message removed}%^^A
% Dieses Makro berichtet über Fehler wegen unbekannter Wertübergabe an einen
% Schlüssel. Das erste Argument ist die Familie, das zweite der Schlüssel,
% das dritte der Wert und das vierte die Liste der möglichen Werte.
@@ -4120,7 +4161,7 @@
Setting this command to a non empty\MessageBreak
value for option `#2' of\MessageBreak
family `#1' is deprecated,\MessageBreak
- but has been found
+ but has been found%
}%
\fi
}
@@ -5108,6 +5149,8 @@
% \begin{macro}{\ForDoHook}
% \changes{v3.27}{2019/02/05}{New}%^^A
% \changes{v3.28}{2019/11/18}{\cs{ifstr} umbenannt in \cs{Ifstr}}%^^A
+% \changes{v3.30}{2020/03/07}{\cs{loop}\dots\cs{repeat} inside group}%^^A
+% \changes{v3.30}{2020/03/07}{using \cs{rloop} instead of \cs{loop}}%^^A
% Arguments:
% \begin{description}
% \item[\meta{specificator}:]
@@ -5129,18 +5172,20 @@
but do-hook specificators must not be empty.%
}%
}{%
- \let\scr@hookname\relax
- \edef\scr@hookargument{#1}%
- \loop
- \scr@hooksplit@specificator\scr@hookname\scr@hookargument
- \scr@hookargument
- \begingroup\edef\reserved@a{%
- \unexpanded{\endgroup #2}{\scr@hookname}{\scr@hookargument}%
- }\reserved@a
- \ifx\scr@hookargument\@empty\else
- \repeat
- \let\scr@hookname\relax
- \let\scr@hookargument\relax
+ \begingroup
+ \def\scr@hookrun{\endgroup}%
+ \let\scr@hookname\relax
+ \edef\scr@hookargument{#1}%
+ \rloop
+ \scr@hooksplit@specificator\scr@hookname\scr@hookargument
+ \scr@hookargument
+ \edef\scr@hookrun{%
+ \unexpanded\expandafter{\scr@hookrun}%
+ \unexpanded{#2}{\scr@hookname}{\scr@hookargument}%
+ }%
+ \ifx\scr@hookargument\@empty\else
+ \repeat
+ \scr@hookrun
}%
}
% \end{macrocode}
diff --git a/macros/latex/contrib/koma-script/source/scrkernel-compatibility.dtx b/macros/latex/contrib/koma-script/source/scrkernel-compatibility.dtx
index 3037d123ab..d85f22aca9 100644
--- a/macros/latex/contrib/koma-script/source/scrkernel-compatibility.dtx
+++ b/macros/latex/contrib/koma-script/source/scrkernel-compatibility.dtx
@@ -1,4 +1,4 @@
-% \CheckSum{222}
+% \CheckSum{223}
% \iffalse meta-comment
% ======================================================================
% scrkernel-compatibility.dtx
@@ -55,7 +55,7 @@
% Right brace \} Tilde \~}
%
% \iffalse
-%%% From File: $Id: scrkernel-compatibility.dtx 3446 2020-01-06 16:31:11Z kohm $
+%%% From File: $Id: scrkernel-compatibility.dtx 3451 2020-02-24 16:22:41Z kohm $
%<identify>%%% (run: identify)
%<init>%%% (run: init)
%<option>%%% (run: option)
@@ -65,7 +65,7 @@
\ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi
\begingroup
\def\filedate$#1: #2-#3-#4 #5${\def\filedate{#2/#3/#4}}
- \filedate$Date: 2020-01-06 17:31:11 +0100 (Mon, 06 Jan 2020) $
+ \filedate$Date: 2020-02-24 17:22:41 +0100 (Mon, 24 Feb 2020) $
\def\filerevision$#1: #2 ${\def\filerevision{r#2}}
\filerevision$Revision: 1638 $
\edef\reserved@a{%
@@ -428,6 +428,8 @@
% \changes{v3.28}{2019/11/20}{Neues Macro}
% \begin{macro}{\scr@v@3.29}
% \changes{v3.29}{2020/01/06}{Neues Macro}
+% \begin{macro}{\scr@v@3.30}
+% \changes{v3.30}{2020/02/24}{Neues Macro}
% \begin{macro}{\scr@v@last}
% \changes{v2.9u}{2005/03/05}{Neues Macro}%^^A
% Nun die unterschiedlichen möglichen Werte (|\scr@v@last| ist jeweils die
@@ -506,6 +508,7 @@
\@namedef{scr@v@3.27a}{17}
\@namedef{scr@v@3.28}{17}
\@namedef{scr@v@3.29}{17}
+\@namedef{scr@v@3.30}{17}
\@namedef{scr@v@last}{17}
% \end{macrocode}
% \end{macro}
@@ -568,6 +571,7 @@
% \end{macro}
% \end{macro}
% \end{macro}
+% \end{macro}
% \end{macro}
% \end{macro}
% \end{macro}
diff --git a/macros/latex/contrib/koma-script/source/scrkernel-language.dtx b/macros/latex/contrib/koma-script/source/scrkernel-language.dtx
index 2a02e45de0..3738ca9b50 100644
--- a/macros/latex/contrib/koma-script/source/scrkernel-language.dtx
+++ b/macros/latex/contrib/koma-script/source/scrkernel-language.dtx
@@ -1,8 +1,8 @@
-% \CheckSum{2229}
+% \CheckSum{2247}
% \iffalse meta-comment
% ======================================================================
% scrkernel-language.dtx
-% Copyright (c) Markus Kohm, 2002-2019
+% Copyright (c) Markus Kohm, 2002-2020
%
% This file is part of the LaTeX2e KOMA-Script bundle.
%
@@ -20,7 +20,7 @@
% This work consists of all files listed in manifest.txt.
% ----------------------------------------------------------------------
% scrkernel-language.dtx
-% Copyright (c) Markus Kohm, 2002-2019
+% Copyright (c) Markus Kohm, 2002-2020
%
% Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz,
% Version 1.3c, verteilt und/oder veraendert werden.
@@ -55,7 +55,7 @@
% Right brace \} Tilde \~}
%
% \iffalse
-%%% From File: $Id: scrkernel-language.dtx 3265 2019-10-13 17:58:25Z kohm $
+%%% From File: $Id: scrkernel-language.dtx 3480 2020-04-13 09:39:03Z kohm $
%<option>%%% (run: option)
%<body>%%% (run: body)
%<*dtx>
@@ -63,9 +63,9 @@
\ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi
\begingroup
\def\filedate$#1: #2-#3-#4 #5${\gdef\filedate{#2/#3/#4}}
- \filedate$Date: 2019-10-13 19:58:25 +0200 (Sun, 13 Oct 2019) $
+ \filedate$Date: 2020-04-13 11:39:03 +0200 (Mon, 13 Apr 2020) $
\def\filerevision$#1: #2 ${\gdef\filerevision{r#2}}
- \filerevision$Revision: 3265 $
+ \filerevision$Revision: 3480 $
\edef\reserved@a{%
\noexpand\endgroup
\noexpand\ProvidesFile{scrkernel-language.dtx}
@@ -563,6 +563,15 @@
% \begin{macrocode}
\expandafter\providecommand\expandafter*%
\csname abx@extras@\scr@reserved@a\endcsname{}%
+% \end{macrocode}
+% \changes{v3.30}{2020/04/13}{\cs{renewcommand} workaround}%^^A
+% Unfortunately some users use \cs{renewcommand} to change a name even if the
+% language has not been loaded and the command has not been defined. This
+% would result in an error message. So a this point we let \cs{renewcommand}
+% be \cs{providecommand}, because we know that currently the command is
+% \cs{relax}.
+% \begin{macrocode}
+ \let\renewcommand\providecommand
\csname extras\scr@reserved@a\endcsname
\csname captions\scr@reserved@a\endcsname
\ifx #2\relax \aftergroup\@firstofone
@@ -642,8 +651,14 @@
% \cs{extras\meta{language}} would result in an error. As a workaround for
% this issue, make sure, that \cs{abx@extras@\meta{language}} is defined here
% locally.
-% \selectlanguage{ngerman}%^^A
+% \changes{v3.30}{2020/04/13}{\cs{renewcommand} workaround}%^^A
+% Unfortunately some users use \cs{renewcommand} to change a name even if the
+% language has not been loaded and the command has not been defined. This
+% would result in an error message. So a this point we let \cs{renewcommand}
+% be \cs{providecommand}, because we know that currently the command is
+% \cs{relax}.
% \begin{macrocode}
+ \let\renewcommand\providecommand
\expandafter\providecommand\expandafter*%
\csname abx@extras@\scr@reserved@a\endcsname{}%
\csname captions\scr@reserved@a\endcsname
@@ -682,6 +697,7 @@
% \end{macrocode}
% \end{macro}%^^A \scr@provide@captionname
% \end{macro}%^^A \providecaptionname
+% \selectlanguage{ngerman}
%
% \begin{macro}{\newcaptionname}
% \changes{v2.8q}{2001/11/08}{neu}%^^A
@@ -748,8 +764,14 @@
% \cs{extras\meta{language}} would result in an error. As a workaround for
% this issue, make sure, that \cs{abx@extras@\meta{language}} is defined here
% locally.
-% \selectlanguage{ngerman}%^^A
+% \changes{v3.30}{2020/04/13}{\cs{renewcommand} workaround}%^^A
+% Unfortunately some users use \cs{renewcommand} to change a name even if the
+% language has not been loaded and the command has not been defined. This
+% would result in an error message. So a this point we let \cs{renewcommand}
+% be \cs{providecommand}, because we know that currently the command is
+% \cs{relax}.
% \begin{macrocode}
+ \let\renewcommand\providecommand
\expandafter\providecommand\expandafter*%
\csname abx@extras@\scr@reserved@a\endcsname{}%
\csname captions\scr@reserved@a\endcsname
@@ -783,6 +805,7 @@
}
% \end{macrocode}
% \end{macro}%^^A \scr@new@scaptionname
+% \selectlanguage{ngerman}%^^A
% \begin{macro}{\scr@new@captionname}
% \changes{v3.12}{2013/07/30}{neu (intern)}%^^A
% \changes{v3.26}{2018/08/29}{diverse \cs{expandafter} eingespart}%^^A
@@ -824,8 +847,14 @@
% \cs{extras\meta{language}} would result in an error. As a workaround for
% this issue, make sure, that \cs{abx@extras@\meta{language}} is defined here
% locally.
-% \selectlanguage{ngerman}%^^A
+% \changes{v3.30}{2020/04/13}{\cs{renewcommand} workaround}%^^A
+% Unfortunately some users use \cs{renewcommand} to change a name even if the
+% language has not been loaded and the command has not been defined. This
+% would result in an error message. So a this point we let \cs{renewcommand}
+% be \cs{providecommand}, because we know that currently the command is
+% \cs{relax}.
% \begin{macrocode}
+ \let\renewcommand\providecommand
\expandafter\providecommand\expandafter*%
\csname abx@extras@\scr@reserved@a\endcsname{}%
\csname captions\scr@reserved@a\endcsname
@@ -860,6 +889,7 @@
% \end{macrocode}
% \end{macro}%^^A \scr@new@captionname
% \end{macro}%^^A \newcaptionname
+% \selectlanguage{ngerman}%^^A
%
% \begin{macro}{\renewcaptionname}
% \changes{v2.8q}{2001/11/08}{neu}%^^A
@@ -929,8 +959,14 @@
% \cs{extras\meta{language}} would result in an error. As a workaround for
% this issue, make sure, that \cs{abx@extras@\meta{language}} is defined here
% locally.
-% \selectlanguage{ngerman}%^^A
+% \changes{v3.30}{2020/04/13}{\cs{renewcommand} workaround}%^^A
+% Unfortunately some users use \cs{renewcommand} to change a name even if the
+% language has not been loaded and the command has not been defined. This
+% would result in an error message. So a this point we let \cs{renewcommand}
+% be \cs{providecommand}, because we know that currently the command is
+% \cs{relax}.
% \begin{macrocode}
+ \let\renewcommand\providecommand
\expandafter\providecommand\expandafter*%
\csname abx@extras@\scr@reserved@a\endcsname{}%
\csname captions\scr@reserved@a\endcsname
@@ -963,6 +999,7 @@
}
% \end{macrocode}
% \end{macro}%^^A \scr@renew@scaptionname
+% \selectlanguage{ngerman}%^^A
% \begin{macro}{\scr@renew@captionname}
% \changes{v3.12}{2013/07/30}{neu (intern)}%^^A
% \changes{v3.26}{2018/08/29}{diverse \cs{expandafter} eingespart}%^^A
@@ -1006,8 +1043,14 @@
% \cs{extras\meta{language}} would result in an error. As a workaround for
% this issue, make sure, that \cs{abx@extras@\meta{language}} is defined here
% locally.
-% \selectlanguage{ngerman}%^^A
+% \changes{v3.30}{2020/04/13}{\cs{renewcommand} workaround}%^^A
+% Unfortunately some users use \cs{renewcommand} to change a name even if the
+% language has not been loaded and the command has not been defined. This
+% would result in an error message. So a this point we let \cs{renewcommand}
+% be \cs{providecommand}, because we know that currently the command is
+% \cs{relax}.
% \begin{macrocode}
+ \let\renewcommand\providecommand
\expandafter\providecommand\expandafter*%
\csname abx@extras@\scr@reserved@a\endcsname{}%
\csname extras\scr@reserved@a\endcsname
@@ -1049,6 +1092,7 @@
% \end{macrocode}
% \end{macro}%^^A \scr@renew@captionname
% \end{macro}%^^A \renewcaptionname
+% \selectlanguage{ngerman}%^^A
%
% \iffalse
%</package&base>
diff --git a/macros/latex/contrib/koma-script/source/scrkernel-letterclassoptions.dtx b/macros/latex/contrib/koma-script/source/scrkernel-letterclassoptions.dtx
index 8260872417..1759c2990d 100644
--- a/macros/latex/contrib/koma-script/source/scrkernel-letterclassoptions.dtx
+++ b/macros/latex/contrib/koma-script/source/scrkernel-letterclassoptions.dtx
@@ -2,7 +2,7 @@
% \iffalse meta-comment
% ======================================================================
% scrkernel-letterclassoptions.dtx
-% Copyright (c) Markus Kohm, 2006-2019
+% Copyright (c) Markus Kohm, 2006-2020
%
% This file is part of the LaTeX2e KOMA-Script bundle.
%
@@ -20,7 +20,7 @@
% This work consists of all files listed in manifest.txt.
% ----------------------------------------------------------------------
% scrkernel-letterclassoptions.dtx
-% Copyright (c) Markus Kohm, 2006-2019
+% Copyright (c) Markus Kohm, 2006-2020
%
% Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz,
% Version 1.3c, verteilt und/oder veraendert werden.
@@ -55,7 +55,7 @@
% Right brace \} Tilde \~}
%
% \iffalse
-%%% From File: $Id: scrkernel-letterclassoptions.dtx 3404 2019-11-24 21:50:05Z kohm $
+%%% From File: $Id: scrkernel-letterclassoptions.dtx 3453 2020-02-25 07:33:30Z kohm $
%<option>%%% (run: option)
%<head>%%% (run: head)
%<body>%%% (run: body)
@@ -64,9 +64,9 @@
\ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi
\begingroup
\def\filedate$#1: #2-#3-#4 #5${\gdef\filedate{#2/#3/#4}}
- \filedate$Date: 2019-11-24 22:50:05 +0100 (Sun, 24 Nov 2019) $
+ \filedate$Date: 2020-02-25 08:33:30 +0100 (Tue, 25 Feb 2020) $
\def\filerevision$#1: #2 ${\gdef\filerevision{r#2}}
- \filerevision$Revision: 3404 $
+ \filerevision$Revision: 3453 $
\endgroup
\ProvidesFile{scrkernel-letterclassoptions.dtx}
[\filedate\space \filerevision\space
@@ -895,6 +895,8 @@
%
% Und für \texttt{DIN5008} braucht es dann noch einige zusätzliche
% Einstellungen:
+% \changes{v3.30}{2020/02/25}{unerwünschtes Leerzeichen am Ende der Warnungen
+% beseitigt}%^^A
% \begin{macrocode}
%</!5008>
%<*5008>
@@ -926,7 +928,7 @@
\space\string\areaset[5mm]{%
\the\dimexpr \paperwidth-45mm\relax}{%
\the\dimexpr 1.414\dimexpr \paperwidth-45mm\relax\relax}\MessageBreak
- to follow the norm
+ to follow the norm%
}%
\fi
\ifdim \dimexpr\parskip\relax=\dimexpr\baselineskip\relax\else
@@ -939,7 +941,7 @@
document does not conform DIN5008.\MessageBreak
You shoud use, e.g.,\MessageBreak
\space\string\KOMAoption{parskip}{full}\MessageBreak
- to follow the norm
+ to follow the norm%
}%
\fi
\endgroup
diff --git a/macros/latex/contrib/koma-script/source/scrkernel-listsof.dtx b/macros/latex/contrib/koma-script/source/scrkernel-listsof.dtx
index 4c2b069b2d..b7ff8d719e 100644
--- a/macros/latex/contrib/koma-script/source/scrkernel-listsof.dtx
+++ b/macros/latex/contrib/koma-script/source/scrkernel-listsof.dtx
@@ -2,7 +2,7 @@
% \iffalse meta-comment
% ======================================================================
% scrkernel-listsof.dtx
-% Copyright (c) Markus Kohm, 2002-2019
+% Copyright (c) Markus Kohm, 2002-2020
%
% This file is part of the LaTeX2e KOMA-Script bundle.
%
@@ -20,7 +20,7 @@
% This work consists of all files listed in manifest.txt.
% ----------------------------------------------------------------------
% scrkernel-listsof.dtx
-% Copyright (c) Markus Kohm, 2002-2019
+% Copyright (c) Markus Kohm, 2002-2020
%
% Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz,
% Version 1.3c, verteilt und/oder veraendert werden.
@@ -55,7 +55,7 @@
% Right brace \} Tilde \~}
%
% \iffalse
-%%% From File: $Id: scrkernel-listsof.dtx 3390 2019-11-18 17:09:35Z kohm $
+%%% From File: $Id: scrkernel-listsof.dtx 3477 2020-04-11 07:26:26Z kohm $
%<prepare>%%% (run: prepare)
%<option>%%% (run: option)
%<body>%%% (run: body)
@@ -64,9 +64,9 @@
\ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi
\begingroup
\def\filedate$#1: #2-#3-#4 #5${\gdef\filedate{#2/#3/#4}}
- \filedate$Date: 2019-11-18 18:09:35 +0100 (Mon, 18 Nov 2019) $
+ \filedate$Date: 2020-04-11 09:26:26 +0200 (Sat, 11 Apr 2020) $
\def\filerevision$#1: #2 ${\gdef\filerevision{r#2}}
- \filerevision$Revision: 3390 $
+ \filerevision$Revision: 3477 $
\edef\reserved@a{%
\noexpand\endgroup
\noexpand\ProvidesFile{scrkernel-listsof.dtx}%
@@ -299,7 +299,7 @@
%
% \selectlanguage{english}%^^A
% \changes{v3.27}{2019/05/11}{init code moved from \texttt{tocbasic.dtx}}%^^A
-% \changes{v1.00}{auto-activation of feature \texttt{onecolumn}}
+% \changes{v1.0a}{2008/11/13}{auto-activation of feature \texttt{onecolumn}}
% Set feature \texttt{onecolumn} for every ToC file.
% \begin{macrocode}
%<*prepare&(book|report)>
@@ -508,7 +508,8 @@
% \textsf{scrbook}}%^^A
% \changes{v3.00}{2008/07/04}{Verwendung von \cs{toc@heading} ist nicht
% länger empfohlen}%^^A
-% \changes{v3.10}{2011/08/31}{\cs{MakeMarkcase} wird beachtet}%
+% \changes{v3.10}{2011/08/31}{\cs{MakeMarkcase} wird beachtet}%^^A
+% \changes{v3.30}{2020/02/24}{Leerzeichen am Ende der Warnung entfernt}%^^A
% Befehl, zum Setzen der Überschrift des Inhaltsverzeichnisses. Eigentlich
% ist das überflüssig, weil es nur einmal verwendet wird. Aus Gründen der
% Konsistenz mit den anderen Verzeichnissen machen wir das hier aber
@@ -521,7 +522,7 @@
You should use the features of package `tocbasic'\MessageBreak
instead of \string\toc@heading.\MessageBreak
Definition of \string\toc@heading\space may be removed from\MessageBreak
- KOMA-Script soon, so it should not be used
+ KOMA-Script soon, so it should not be used%
}%
%<article> \section*{\contentsname}%
%<book|report> \chapter*{\contentsname}%
@@ -1016,6 +1017,8 @@
% \changes{v3.01}{2008/11/13}{Neu (intern)}%^^A
% \changes{v3.12}{2013/09/25}{Text geändert}%^^A
% \changes{v3.12a}{2014/03/05}{Text korrigiert}%^^A
+% \changes{v3.30}{2020/02/25}{spurious space at end of warning message
+% removed}%^^A
% Die Warnung für die Verwendung von \cs{float@listhead}, dessen Definition
% irgendwann aus den Klassen verschwinden wird.
% \begin{macrocode}
@@ -1031,7 +1034,7 @@
Loading of package `scrhack' may help to\MessageBreak
avoid this warning, if you are using a\MessageBreak
a package that still implements the\MessageBreak
- deprecated \string\float@listhead\space interface
+ deprecated \string\float@listhead\space interface%
}%
}
% \end{macrocode}
@@ -1040,6 +1043,7 @@
% \changes{v3.01}{2008/11/13}{Neu (intern)}%^^A
% \changes{v3.12}{2013/09/25}{Text geändert}%^^A
% \changes{v3.12a}{2014/03/05}{Text korrigiert}%^^A
+% \changes{v3.30}{2020/02/24}{Leerzeichen am Ende der Warnung entfernt}%^^A
% Die Warnung für die Verwendung von \cs{float@addtolists}, dessen
% Unterstützung irgendwann aus den Klassen verschwinden wird.
% \begin{macrocode}
@@ -1057,7 +1061,7 @@
Loading of package `scrhack' may help to\MessageBreak
avoid this warning, if you are using a\MessageBreak
a package that still implements the\MessageBreak
- deprecated \string\float@addtolist\space interface
+ deprecated \string\float@addtolist\space interface%
}%
\global\let\scr@float@addtolists@warning\relax
}
diff --git a/macros/latex/contrib/koma-script/source/scrkernel-miscellaneous.dtx b/macros/latex/contrib/koma-script/source/scrkernel-miscellaneous.dtx
index 8c5a97f27a..28d651f63d 100644
--- a/macros/latex/contrib/koma-script/source/scrkernel-miscellaneous.dtx
+++ b/macros/latex/contrib/koma-script/source/scrkernel-miscellaneous.dtx
@@ -2,7 +2,7 @@
% \iffalse meta-comment
% ======================================================================
% scrkernel-miscellaneous.dtx
-% Copyright (c) Markus Kohm, 2002-2019
+% Copyright (c) Markus Kohm, 2002-2020
%
% This file is part of the LaTeX2e KOMA-Script bundle.
%
@@ -20,7 +20,7 @@
% This work consists of all files listed in manifest.txt.
% ----------------------------------------------------------------------
% scrkernel-miscellaneous.dtx
-% Copyright (c) Markus Kohm, 2002-2019
+% Copyright (c) Markus Kohm, 2002-2020
%
% Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz,
% Version 1.3c, verteilt und/oder veraendert werden.
@@ -55,7 +55,7 @@
% Right brace \} Tilde \~}
%
% \iffalse
-%%% From File: $Id: scrkernel-miscellaneous.dtx 3400 2019-11-21 10:36:26Z kohm $
+%%% From File: $Id: scrkernel-miscellaneous.dtx 3453 2020-02-25 07:33:30Z kohm $
%<init>%%% (run: init)
%<option>%%% (run: option)
%<execoption>%%% (run: execoption)
@@ -65,9 +65,9 @@
\ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi
\begingroup
\def\filedate$#1: #2-#3-#4 #5${\gdef\filedate{#2/#3/#4}}
- \filedate$Date: 2019-11-21 11:36:26 +0100 (Thu, 21 Nov 2019) $
+ \filedate$Date: 2020-02-25 08:33:30 +0100 (Tue, 25 Feb 2020) $
\def\filerevision$#1: #2 ${\gdef\filerevision{r#2}}
- \filerevision$Revision: 3400 $
+ \filerevision$Revision: 3453 $
\edef\reserved@a{%
\noexpand\endgroup
\noexpand\ProvidesFile{scrkernel-miscellaneous.dtx}%
@@ -1080,8 +1080,8 @@
\ifx\@sect\@tempa
% \end{macrocode}
% Note: There are several bugs in this definition (e.g. missing
-% \cs{expandafter} and orphan spaced). Nevertheless its the original one from
-% \textsf{minitoc} 61 and so I have to use it.
+% \cs{expandafter} and spurious spaced). Nevertheless its the original one
+% from \textsf{minitoc} 61 and so I have to use it.
% \begin{macrocode}
\def\@tempa#1#2#3#4#5#6[#7]#8{
\expandafter
diff --git a/macros/latex/contrib/koma-script/source/scrkernel-notepaper.dtx b/macros/latex/contrib/koma-script/source/scrkernel-notepaper.dtx
index 3fed0574df..651bc7d50b 100644
--- a/macros/latex/contrib/koma-script/source/scrkernel-notepaper.dtx
+++ b/macros/latex/contrib/koma-script/source/scrkernel-notepaper.dtx
@@ -1,7 +1,7 @@
% \iffalse meta-comment
% ======================================================================
% scrkernel-notepaper.dtx
-% Copyright (c) Markus Kohm, 2006-2019
+% Copyright (c) Markus Kohm, 2006-2020
%
% This file is part of the LaTeX2e KOMA-Script bundle.
%
@@ -19,7 +19,7 @@
% This work consists of all files listed in manifest.txt.
% ----------------------------------------------------------------------
% scrkernel-notepaper.dtx
-% Copyright (c) Markus Kohm, 2006-2019
+% Copyright (c) Markus Kohm, 2006-2020
%
% Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz,
% Version 1.3c, verteilt und/oder veraendert werden.
@@ -54,7 +54,7 @@
% Right brace \} Tilde \~}
%
% \iffalse
-%%% From File: $Id: scrkernel-notepaper.dtx 3390 2019-11-18 17:09:35Z kohm $
+%%% From File: $Id: scrkernel-notepaper.dtx 3472 2020-03-27 11:01:45Z kohm $
%<option>%%% (run: option)
%<body>%%% (run: body)
%<*dtx>
@@ -62,7 +62,7 @@
\ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi
\begingroup
\def\filedate$#1: #2-#3-#4 #5${\gdef\filedate{#2/#3/#4}}
- \filedate$Date: 2019-11-18 18:09:35 +0100 (Mon, 18 Nov 2019) $
+ \filedate$Date: 2020-03-27 12:01:45 +0100 (Fri, 27 Mar 2020) $
\def\filerevision$#1: #2 ${\gdef\filerevision{r#2}}
\filerevision$Revision: 1767 $
\edef\reserved@a{%
@@ -2206,6 +2206,8 @@
% \changes{v3.27}{2019/03/22}{new (internal)}%^^A
% \changes{v3.28}{2019/11/15}{\cs{ifkomavarempty} durch \cs{Ifkomavarempty}
% ersetzt}%^^A
+% \changes{v3.30}{2020/03/27}{Umdefinierung des Zeilenumbruchs
+% verschoben}%^^A
% The field with the recipience address. This should be used only on the first
% page of a letter.
% \begin{macrocode}
@@ -2215,9 +2217,13 @@
\color@begingroup
\if@baddr
\Ifkomavarempty{backaddress}{}{%
- \def\\{\usekomavar{backaddressseparator}\@ogobble}%
- \backaddr@format{\scriptsize\usekomafont{backaddress}%
- \usekomavar{backaddress}}%
+ \backaddr@format{\scriptsize
+ {%
+ \def\\{\usekomavar{backaddressseparator}\@ogobble}%
+ \usekomafont{backaddress}%
+ {\usekomavar{backaddress}}%
+ }%
+ }%
}%
\fi
\color@endgroup
@@ -3346,6 +3352,8 @@
% \changes{v3.27}{2019/03/27}{only at \textsf{scrlttr2}}%^^A
% \changes{v3.28}{2019/11/15}{\cs{ifkomavarempty} durch \cs{Ifkomavarempty}
% ersetzt}%^^A
+% \changes{v3.30}{2020/03/27}{Umdefinierung des Zeilenumbruchs
+% verschoben}%^^A
% Dasselbe gilt auch für das Adressfeld für Fensterumschläge. Die
% Rücksendeadresse und die Briefart werden dabei mit eigenen
% Formatieranweisungen gesetzt.
@@ -3391,9 +3399,12 @@
\if@baddr
\Ifkomavarempty{backaddress}{}{{%
\noindent%
- \def\\{\usekomavar{backaddressseparator}\@ogobble}%
- \backaddr@format{\scriptsize\usekomafont{backaddress}%
- \usekomavar{backaddress}}}}%
+ \backaddr@format{\scriptsize
+ {%
+ \def\\{\usekomavar{backaddressseparator}\@ogobble}%
+ \usekomafont{backaddress}%
+ {\usekomavar{backaddress}}%
+ }}}}%
\fi
}{backaddress}{backaddrheight}{\setkomavar}%
\ifcase \ltr@priority
diff --git a/macros/latex/contrib/koma-script/source/scrkernel-sections.dtx b/macros/latex/contrib/koma-script/source/scrkernel-sections.dtx
index 154a453927..3fdf99854c 100644
--- a/macros/latex/contrib/koma-script/source/scrkernel-sections.dtx
+++ b/macros/latex/contrib/koma-script/source/scrkernel-sections.dtx
@@ -1,8 +1,8 @@
-% \CheckSum{4850}
+% \CheckSum{4900}
% \iffalse meta-comment
% ======================================================================
% scrkernel-sections.dtx
-% Copyright (c) Markus Kohm, 2002-2019
+% Copyright (c) Markus Kohm, 2002-2020
%
% This file is part of the LaTeX2e KOMA-Script bundle.
%
@@ -20,7 +20,7 @@
% This work consists of all files listed in manifest.txt.
% ----------------------------------------------------------------------
% scrkernel-sections.dtx
-% Copyright (c) Markus Kohm, 2002-2019
+% Copyright (c) Markus Kohm, 2002-2020
%
% Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz,
% Version 1.3c, verteilt und/oder veraendert werden.
@@ -55,7 +55,7 @@
% Right brace \} Tilde \~}
%
% \iffalse
-%%% From File: $Id: scrkernel-sections.dtx 3400 2019-11-21 10:36:26Z kohm $
+%%% From File: $Id: scrkernel-sections.dtx 3476 2020-04-08 14:42:59Z kohm $
% The runs of run-time file generation:
%<preidentify>%%% (run: preidentify)
% - everything that is needed before selfidentification of resulting files
@@ -78,9 +78,9 @@
\ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi
\begingroup
\def\filedate$#1: #2-#3-#4 #5${\gdef\filedate{#2/#3/#4}}
- \filedate$Date: 2019-11-21 11:36:26 +0100 (Thu, 21 Nov 2019) $
+ \filedate$Date: 2020-04-08 16:42:59 +0200 (Wed, 08 Apr 2020) $
\def\filerevision$#1: #2 ${\gdef\filerevision{r#2}}
- \filerevision$Revision: 3400 $
+ \filerevision$Revision: 3476 $
\edef\reserved@a{%
\noexpand\endgroup
\noexpand\ProvidesFile{scrkernel-sections.dtx}%
@@ -981,6 +981,8 @@
% \changes{v3.19}{2015/07/17}{Verwendung von \cs{sectionlinesformat} und
% \cs{sectioncatchphraseformat}}%^^A
% \changes{v3.27}{2019/07/08}{neue Option \texttt{nonumber}}%^^A
+% \changes{v3.30}{2020/02/25}{unerwünschtes Leerzeichen am Ende der Warnung
+% entfernt}%^^A
% \begin{macro}{\scr@latex@sect}
% \changes{v3.27}{2019/07/24}{Neu (intern für \textsf{scrhack})}%^^A
% Damit auch alle mit \cs{@startsection} definierten Gliederungsebenen
@@ -1029,7 +1031,7 @@
Please send information about this to\MessageBreak
the KOMA-Script maintainer!\MessageBreak
Maybe LaTeX will be broken by the redefinition\MessageBreak
- of \string\@sect\space}%
+ of \string\@sect}%
\fi
% \end{macrocode}
% \end{macro}%^^A \scr@latex@sect
@@ -1307,6 +1309,8 @@
% der Erweiterung für die Formatieurng der Überschrift}%^^A
% \begin{macro}{\scr@latex@ssect}
% \changes{v3.27}{2019/07/24}{Neu (intern für \textsf{scrhack})}%^^A
+% \changes{v3.30}{2020/02/25}{unerwünschtes Leerzeichen am Ende der Warnung
+% entfernt}%^^A
% Das wird für Überschriften ohne Nummer verwendet. Im Prinzip machen wir hier
% dasselbe wie zuvor.
% \begin{macrocode}
@@ -1330,7 +1334,7 @@
Please send information about this to\MessageBreak
the KOMA-Script maintainer!\MessageBreak
Maybe LaTeX will be broken by the redefinition\MessageBreak
- of \string\@ssect\space}%
+ of \string\@ssect}%
\fi
% \end{macrocode}
% \end{macro}%^^A \scr@latex@ssect
@@ -1402,6 +1406,8 @@
% \end{macro}%^^A \@ssect
% \begin{macro}{\@xsect}
% \changes{v3.26}{2018/09/18}{wird umdefiniert}%^^A
+% \changes{v3.30}{2020/02/25}{unerwünschtes Leerzeichen am Ende der Warnung
+% entfernt}%^^A
% \begin{macro}{\scr@latex@xsect}
% \changes{v3.27}{2019/07/24}{Neu (intern für \textsf{scrhack})}%^^A
% Wir brauchen zum Einen in \cs{@xsect} einen Fallunterscheidung nach
@@ -1441,7 +1447,7 @@
Please send information about this to\MessageBreak
the KOMA-Script maintainer!\MessageBreak
Maybe LaTeX will be broken by the redefinition\MessageBreak
- of \string\@xsect\space}%
+ of \string\@xsect}%
\fi
% \end{macrocode}
% \end{macro}%^^A \scr@latex@xsect
@@ -1899,6 +1905,17 @@
}
%</book|report>
% \end{macrocode}
+% \begin{macro}{\scr@dsc@style@chapter@subcommands}
+% \selectlanguage{english}%^^A
+% \changes{v3.30}{2020/04/08}{new (internal)}
+% Internal name list of additional commands to be defined for style
+% \texttt{part} commands.
+% \begin{macrocode}
+\newcommand*{\scr@dsc@style@chapter@subcommands}[1]{%
+ @#1,@s#1,@make#1head,@makes#1head,@@make#1head,@@makes#1head,set#1preamble%
+}
+% \end{macrocode}
+% \end{macro}%^^A \scr@dsc@style@chapter@subcommands
% \end{macro}%^^A \scr@dsc@def@style@chapter@command
%
% \begin{macro}{\scr@dsc@style@part@options}
@@ -1972,7 +1989,7 @@
\DeclareSectionCommandStyleFontOption{part}{prefixfont}{}{prefix}
% \end{macrocode}
% \end{macro}%^^A \scr@dsc@style@part@options
-% \begin{macro}{\scr@dsc@def@style@part@command}
+% \begin{macro}{\scr@dsc@def@style@part@ommand}
% \changes{v3.18}{2015/05/23}{neue Anweisung (intern)}
% Diese Anweisung legt fest, wie ein Gliederungsbefehl für den Stil
% \texttt{part} zu definieren ist. Das einzige Argument ist dabei der
@@ -1987,6 +2004,17 @@
%<book|report> \@namedef{set#1preamble}{\set@preamble{#1}}%
}
% \end{macrocode}
+% \begin{macro}{\scr@dsc@style@part@subcommands}
+% \selectlanguage{english}%^^A
+% \changes{v3.30}{2020/04/08}{new (internal)}
+% Internal name list of additional commands to be defined for style
+% \texttt{part} commands.
+% \begin{macrocode}
+\newcommand*{\scr@dsc@style@part@subcommands}[1]{%
+ @#1,@s#1,@end#1,set#1preamble%
+}
+% \end{macrocode}
+% \end{macro}%^^A \scr@dsc@style@part@subcommands
% \end{macro}%^^A \scr@dsc@def@style@part@command
%
% \begin{macro}{\scr@dsc@style@section@neededoptionstest}
@@ -2783,6 +2811,7 @@
% \changes{v3.25}{2018/03/10}{zusätzliche Tests und Fehlermeldungen bei
% \cs{the\dots}, \cs{\dots mark}, \cs{\dots format},
% \cs{\dots markformat}}%^^A
+% \changes{v3.30}{2020/04/08}{unerwünschte Leerzeichen eliminiert}%^^A
% Basierend auf |\DeclareSectionCommand| wird eine Gliederungsanweisung
% definiert, die zuvor noch nicht existierte. Wichtig zu bemerken ist, dass
% die ganzen Hilfsanweisungen bereits existieren dürfen.
@@ -2795,8 +2824,46 @@
\expandafter\scr@ifundefinedorrelax\expandafter{\reserved@a}{}{%
\@tempswafalse
\edef\reserved@b{\expandafter\string\csname \reserved@a\endcsname}%
- }
- }
+ }%
+ }%
+ \if@tempswa
+% \end{macrocode}
+% \changes{v3.30}{2020/04/08}{erweiterte Neuheitsprüfung}%^^A
+% Es wird der Stil benötigt, um zu ermitteln, ob die Unterbefehle für diesen
+% Stil möglicherweise bereits definiert sind.
+% \begin{macrocode}
+ \expandafter\let\expandafter\scr@dsc@current
+ \csname scr@tso@##2@style\endcsname
+ \DefineFamilyKey[.dsc]{KOMAarg}{style}{%
+ \edef\scr@dsc@current{##1}%
+ \FamilyKeyStateProcessed
+ }%
+ \DefineFamilyKey[.dsc]{KOMAarg}{@else@}{\FamilyKeyStateProcessed}%
+ \FamilyExecuteOptions[.dsc]{KOMAarg}{#1}%
+ \RelaxFamilyKey[.dsc]{KOMAarg}{@else@}%
+ \RelaxFamilyKey[.dsc]{KOMAarg}{style}%
+ \@tempswatrue
+% \end{macrocode}
+% Wenn der Stil definiert ist und Unterbefehle kennt, diese ebenfalls testen.
+% \begin{macrocode}
+ \@ifundefined{scr@dsc@current}{}{%
+ \scr@ifundefinedorrelax{scr@dsc@style@\scr@dsc@current @subcommands}{%
+ }{%
+ \edef\reserved@b{%
+ \csname scr@dsc@style@\scr@dsc@current @subcommands\endcsname{#2}%
+ }%
+ \expandafter\@for\expandafter\reserved@a\expandafter:\expandafter=%
+ \reserved@b\do{%
+ \expandafter\scr@ifundefinedorrelax\expandafter{\reserved@a}{}{%
+ \@tempswafalse
+ \edef\reserved@b{%
+ \expandafter\string\csname \reserved@a\endcsname}%
+ }%
+ }%
+ }
+ }%
+ \let\scr@dsc@current\relax
+ \fi
\if@tempswa
\DeclareSectionCommand[{#1}]{#2}%
\else
diff --git a/macros/latex/contrib/koma-script/source/scrkernel-typearea.dtx b/macros/latex/contrib/koma-script/source/scrkernel-typearea.dtx
index d49b9ba640..3c6f846094 100644
--- a/macros/latex/contrib/koma-script/source/scrkernel-typearea.dtx
+++ b/macros/latex/contrib/koma-script/source/scrkernel-typearea.dtx
@@ -1,8 +1,8 @@
-%\CheckSum{2882}
+% \CheckSum{2945}
% \iffalse meta-comment
% ======================================================================
% scrkernel-typearea.dtx
-% Copyright (c) Markus Kohm, 2002-2019
+% Copyright (c) Markus Kohm, 2002-2020
%
% This file is part of the LaTeX2e KOMA-Script bundle.
%
@@ -20,7 +20,7 @@
% This work consists of all files listed in manifest.txt.
% ----------------------------------------------------------------------
% scrkernel-typearea.dtx
-% Copyright (c) Markus Kohm, 2002-2019
+% Copyright (c) Markus Kohm, 2002-2020
%
% Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz,
% Version 1.3c, verteilt und/oder veraendert werden.
@@ -55,7 +55,7 @@
% Right brace \} Tilde \~}
%
% \iffalse meta-comment
-%%% From File: $Id: scrkernel-typearea.dtx 3390 2019-11-18 17:09:35Z kohm $
+%%% From File: $Id: scrkernel-typearea.dtx 3470 2020-03-24 12:12:02Z kohm $
%<identify>%%% (run: identify)
%<init>%%% (run: init)
%<options>%%% (run: options)
@@ -66,9 +66,9 @@
\ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi
\begingroup
\def\filedate$#1: #2-#3-#4 #5${\gdef\filedate{#2/#3/#4}}
- \filedate$Date: 2019-11-18 18:09:35 +0100 (Mon, 18 Nov 2019) $
+ \filedate$Date: 2020-03-24 13:12:02 +0100 (Tue, 24 Mar 2020) $
\def\filerevision$#1: #2 ${\gdef\filerevision{r#2}}
- \filerevision$Revision: 3390 $
+ \filerevision$Revision: 3470 $
\edef\reserved@a{%
\noexpand\endgroup
\noexpand\ProvidesFile{scrkernel-typearea.dtx}[%
@@ -1413,37 +1413,39 @@
% \begin{macrocode}
%<*class&body&!letter>
\if@scr@emulatestandardclasses
- \ifnum\@lastdiv=\z@
- \setlength{\textwidth}{\dimexpr \paperwidth-2in\relax}
- \ifdim \f@size\p@<10.5\p@
- \setlength{\@tempdimb}{345\p@}
- \else\ifdim \f@size\p@<11.5\p@
- \setlength{\@tempdimb}{360\p@}
- \else
- \setlength{\@tempdimb}{390\p@}
- \fi
- \fi
- \if@twocolumn
- \ifdim\@textwidth>2\@tempdimb\relax
- \setlength{\textwidth}{2\@tempdimb}
+ \Ifstr{\@lastdiv}{areaset}{}{%
+ \ifnum\@lastdiv=\z@
+ \setlength{\textwidth}{\dimexpr \paperwidth-2in\relax}
+ \ifdim \f@size\p@<10.5\p@
+ \setlength{\@tempdimb}{345\p@}
+ \else\ifdim \f@size\p@<11.5\p@
+ \setlength{\@tempdimb}{360\p@}
+ \else
+ \setlength{\@tempdimb}{390\p@}
+ \fi
\fi
- \else
- \ifdim\textwidth>\@tempdimb
- \setlength{\textwidth}{\@tempdimb}
+ \if@twocolumn
+ \ifdim\@textwidth>2\@tempdimb\relax
+ \setlength{\textwidth}{2\@tempdimb}
+ \fi
+ \else
+ \ifdim\textwidth>\@tempdimb
+ \setlength{\textwidth}{\@tempdimb}
+ \fi
\fi
+ \@settopoint\textwidth
+ \setlength{\@tempdima}{\dimexpr \paperheight-3.5in\relax}
+ \divide\@tempdima\baselineskip
+ \@tempcnta=\@tempdima
+ \setlength{\textheight}{\@tempcnta\baselineskip}
+ \addtolength{\textheight}{\topskip}
+ \edef\reserved@a{%
+ \noexpand\@areasetadvancedtrue
+ \noexpand\areaset[current]{\noexpand\textwidth}{\noexpand\textheight}%
+ \if@areasetadvanced\else\noexpand\@areasetadvancedfalse\fi
+ }\reserved@a
\fi
- \@settopoint\textwidth
- \setlength{\@tempdima}{\dimexpr \paperheight-3.5in\relax}
- \divide\@tempdima\baselineskip
- \@tempcnta=\@tempdima
- \setlength{\textheight}{\@tempcnta\baselineskip}
- \addtolength{\textheight}{\topskip}
- \edef\reserved@a{%
- \noexpand\@areasetadvancedtrue
- \noexpand\areaset[current]{\noexpand\textwidth}{\noexpand\textheight}%
- \if@areasetadvanced\else\noexpand\@areasetadvancedfalse\fi
- }\reserved@a
- \fi
+ }%
\fi
%</class&body&!letter>
% \end{macrocode}
@@ -1701,28 +1703,51 @@
% \end{option}
%
% \begin{option}{DIV}
-% \changes{v2.2a}{1995/01/25}{neue Option}%^^A
+% \changes{v2.2a}{1995/01/25}{new option}%^^A
% \changes{v2.95}{2002/12/04}{new implementation using \textsf{keyval}}%^^A
% \changes{v3.12}{2013/03/05}{status signaling using \cs{FamilyKeyState}}%^^A
% The value is written into the counter \cs{ta@div}. Several symbolic values
% are supported and have to be converted into a counter. Note, while loading
% the package symbolic values are nonsense.
+% \begin{macro}{\@lastdiv}
+% \changes{v3.30}{2020/03/24}{init the internal macro}%^^A
+% This internal macro stores the last value to option \texttt{DIV}. It is
+% initialized with \cs{relax}.
+% \begin{macrocode}
+%<package&typearea&init>\newcommand*{\@lastdiv}{\z@}\let\@lastdiv\relax
+% \end{macrocode}
+% \end{macro}%^^A \@lastdiv
% \begin{macrocode}
%<*package&typearea&options>
+\def\movet@reserved@a@to@nnil#1\@nnil{\def\reserved@a{#1}}%
\KOMA@key{DIV}[calc]{%
\edef\@tempa{#1}%
- \def\@tempb{last}\ifx\@tempa\@tempb\let\@tempa=\@lastdiv\fi
+ \def\@tempb{last}\ifx\@tempa\@tempb\let\@tempa=\@lastdiv
+ \ifx\@tempa\relax\def\@tempa{current}\fi
+ \fi
\def\@tempb{current}\ifx\@tempa\@tempb\else
\def\@tempb{default}\ifx\@tempa\@tempb\ta@div=\z@ \else
\def\@tempb{calc}\ifx\@tempa\@tempb\ta@div=\tw@ \else
\def\@tempb{classic}\ifx\@tempa\@tempb\ta@div=\thr@@ \else
- \ta@div=\@tempa
+ \expandafter\def\expandafter\@tempa\expandafter{\expandafter0\@tempa}%
+ \afterassignment\movet@reserved@a@to@nnil
+ \@tempcnta=\@tempa\relax\@nnil
+ \def\@tempb{\relax}\ifx\reserved@a\@tempb
+ \ta@div=\@tempcnta
+ \edef\@tempa{\the\ta@div}%
+ \else
+ \let\@tempa\relax
+ \fi
\fi
\fi
\fi
\fi
- \FamilyKeyStateProcessed
- \KOMA@kav@xreplacevalue{.typearea.\scr@pkgextension}{DIV}{#1}%
+ \ifx\@tempa\relax
+ \FamilyKeyStateUnknownValue
+ \else
+ \FamilyKeyStateProcessed
+ \KOMA@kav@xreplacevalue{.typearea.\scr@pkgextension}{DIV}{\@tempa}%
+ \fi
}
% \end{macrocode}
% After loading the package we have to do a little bit more, because we need
@@ -1836,6 +1861,8 @@
% the margin notes at the outer margin. But if the typing area is to narrow
% for the margin note column, the width of margin note column will be
% reduced. This can be done easily be swapping the two lengths.
+% \changes{v3.30}{2020/02/25}{orphan line break at end of warning message
+% removed}%^^A
% \begin{macrocode}
\if@mincl
\advance\textwidth by-\marginparwidth
@@ -1846,7 +1873,7 @@
marginpar (\the\marginparwidth) while using option\MessageBreak
`mpinclude'.\MessageBreak
Because of this, I'm exchanging the values.\MessageBreak
- You should increase DIV to avoid such problems.\MessageBreak
+ You should increase DIV to avoid such problems%
}%
\@tempskipa=\marginparwidth
\marginparwidth=\textwidth
@@ -2120,8 +2147,10 @@
% \changes{v2.8q}{2001/11/06}{new symbolic value \texttt{last}}%^^A
% \changes{v2.96}{2006/08/21}{warn if \cs{typearea} is used inside a
% group}%^^A
-% \changes{v3.10}{2011/09/13}{using \cs{scr@grouplevel@test}}
+% \changes{v3.10}{2011/09/13}{using \cs{scr@grouplevel@test}}%^^A
% \changes{v3.12}{2013/03/26}{page footer height configurable}%^^A
+% \changes{v3.30}{2020/03/24}{\texttt{current} after \cs{areaset} is
+% \texttt{areaset}}%^^A
%
% The symbolic values of the obligatory argument of \cs{typearea}:
% \begin{center}\begin{tabular}{lll}
@@ -2145,14 +2174,16 @@
\fi
\edef\@tempa{#2}%
\def\@tempb{last}\ifx\@tempa\@tempb\let\@tempa=\@lastdiv
- \ifx\csname @tempa\endcsname\relax
- \def\@tempa{current}%
- \fi
+ \ifx\@tempa\relax \def\@tempa{current}\fi
\fi
+ \Ifstr{\@tempa}{current}{%
+ \Ifstr{\@lastdiv}{areaset}{\let\@tempa\@lastdiv}{}%
+ }{}%
\def\@tempb{areaset}\ifx\@tempa\@tempb
\areaset[current]{\textwidth}{\textheight}%
\else
- \def\@tempb{current}\ifx\@tempa\@tempb\else
+ \def\@tempb{current}\ifx\@tempa\@tempb
+ \else
\def\@tempb{default}\ifx\@tempa\@tempb\ta@div=\z@ \else
\def\@tempb{calc}\ifx\@tempa\@tempb\ta@div=\tw@ \else
\def\@tempb{classic}\ifx\@tempa\@tempb\ta@div=\thr@@ \else
@@ -3096,6 +3127,8 @@
% \changes{v2.5}{1997/06/17}{Einzelzeichenscanner durch
% Mustererkennung ersetzt}%^^A
% \changes{v3.28}{2019/11/18}{\cs{ifstr} umbenannt in \cs{Ifstr}}%^^A
+% \changes{v3.30}{2020/03/24}{avoid error message for unknown \texttt{BCOR}
+% value to \cs{documentclass}}%^^A
% Das Makro \cs{@BCOR} wird später benötigt, um die Option
% \texttt{BCOR\emph{BCOR}} zu erkennen. Die Option wird über ihr
% Muster erkannt.
@@ -3120,7 +3153,10 @@
% \changes{v3.22}{2016/07/29}{missing deprecated option warning added}%^^A
% \changes{v3.28}{2019/11/18}{\cs{ifdimen} renamed to \cs{Ifdimen}}%^^A
% \begin{macrocode}
-%<class> \PassOptionsToPackage{BCOR#2}{typearea}%
+%<*class>
+ \Ifstrstart{#2}{=}{\OptionNotUsed}{%
+ \PassOptionsToPackage{BCOR#2}{typearea}}%
+%</class>
%<*package>
\Ifdimen{#2}{%
\KOMA@UseDeprecatedOption{%
@@ -3145,6 +3181,8 @@
% Mustererkennung ersetzt}%^^A
% \changes{v3.22}{2016/07/29}{missing deprecated option warning added}%^^A
% \changes{v3.28}{2019/11/18}{\cs{ifnumber} umbenannt in \cs{Ifnumber}}%^^A
+% \changes{v3.30}{2020/03/24}{avoid error message for unknown \texttt{DIV}
+% value to \cs{documentclass}}%^^A
% Die grundsätzliche Funktion ist die gleiche wie bei \cs{@BCOR},
% \cs{@@BCOR}.
% \begin{macrocode}
@@ -3153,7 +3191,10 @@
\def\@@DIV #1DIV#2DIV#3\@@DIV{%
\edef\@tempa{#1}\ifx\@tempa\@empty
\edef\@tempa{#3}\def\@tempb{DIV}\ifx\@tempa\@tempb
-%<class> \PassOptionsToPackage{DIV#2}{typearea}%
+%<*class>
+ \Ifstrstart{#2}{=}{\OptionNotUsed}{%
+ \PassOptionsToPackage{DIV#2}{typearea}}%
+%</class>
%<*package>
\Ifnumber{#2}{%
\KOMA@UseDeprecatedOption{%
diff --git a/macros/latex/contrib/koma-script/source/scrkernel-version.dtx b/macros/latex/contrib/koma-script/source/scrkernel-version.dtx
index f7ba649527..b3aa943e37 100644
--- a/macros/latex/contrib/koma-script/source/scrkernel-version.dtx
+++ b/macros/latex/contrib/koma-script/source/scrkernel-version.dtx
@@ -55,7 +55,7 @@
% Right brace \} Tilde \~}
%
% \iffalse
-%%% From File: $Id: scrkernel-version.dtx 3449 2020-01-24 07:28:10Z kohm $
+%%% From File: $Id: scrkernel-version.dtx 3481 2020-04-19 09:52:23Z kohm $
% \fi
%
% \iffalse
@@ -123,7 +123,7 @@
\fi
%</ignorethis>
\fi
- \@CheckKOMAScriptVersion{2020/01/24 v3.29 KOMA-Script}%
+ \@CheckKOMAScriptVersion{2020/04/19 v3.30 KOMA-Script}%
\endgroup
% \end{macrocode}
% \end{macro}
diff --git a/macros/latex/contrib/koma-script/source/scrmain.ins b/macros/latex/contrib/koma-script/source/scrmain.ins
index dbd131361e..e215e83afd 100644
--- a/macros/latex/contrib/koma-script/source/scrmain.ins
+++ b/macros/latex/contrib/koma-script/source/scrmain.ins
@@ -1,6 +1,6 @@
% ======================================================================
% scrmain.ins
-% Copyright (c) Markus Kohm, 2002-2019
+% Copyright (c) Markus Kohm, 2002-2020
%
% This file is part of the LaTeX2e KOMA-Script bundle.
%
@@ -18,7 +18,7 @@
% This work consists of all files listed in manifest.txt.
% ----------------------------------------------------------------------
% scrmain.ins
-% Copyright (c) Markus Kohm, 2002-2019
+% Copyright (c) Markus Kohm, 2002-2020
%
% Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz,
% Version 1.3c, verteilt und/oder veraendert werden.
@@ -35,7 +35,7 @@
% Dieses Werk besteht aus den in manifest.txt aufgefuehrten Dateien.
% ======================================================================
-% $Id: scrmain.ins 3353 2019-11-04 17:35:20Z kohm $
+% $Id: scrmain.ins 3478 2020-04-11 07:27:27Z kohm $
% ---------- KOMA-Script default docstrip declarations -----------------
@@ -157,7 +157,7 @@
\file{scrreprt.cls}{%
\from{scrkernel-version.dtx}{class,report}%
\from{scrkernel-basics.dtx}{class,load}%
- \from{scrkernel-listsof.dtx}{class,book,prepare}%
+ \from{scrkernel-listsof.dtx}{class,report,prepare}%
\from{scrkernel-tocstyle.dtx}{class,report,prepare}%
\from{scrkernel-sections.dtx}{class,report,prepare}%
\from{scrkernel-compatibility.dtx}{class,report,init}%
@@ -206,7 +206,7 @@
\file{scrartcl.cls}{%
\from{scrkernel-version.dtx}{class,article}%
\from{scrkernel-basics.dtx}{class,load}%
- \from{scrkernel-listsof.dtx}{class,book,prepare}%
+ \from{scrkernel-listsof.dtx}{class,article,prepare}%
\from{scrkernel-tocstyle.dtx}{class,article,prepare}%
\from{scrkernel-sections.dtx}{class,article,prepare}%
\from{scrkernel-compatibility.dtx}{class,article,init}%
@@ -493,7 +493,6 @@
\batchinput{scrtime.dtx}% scrtime.sty, scrdate.sty
\batchinput{scrlfile.dtx}% scrlfile.sty
\batchinput{scraddr.dtx}% scraddr.sty
-\batchinput{scrpage.dtx}% scrpage2.sty
\batchinput{tocbasic.dtx}% tocbasic.sty
\batchinput{scrlayer.dtx}% scrlayer.sty, scrlayer-scrpage.sty ...
\batchinput{scrwfile.dtx}% scrwfile.sty
diff --git a/macros/latex/contrib/koma-script/source/scrpage.dtx b/macros/latex/contrib/koma-script/source/scrpage.dtx
deleted file mode 100644
index 36951ba390..0000000000
--- a/macros/latex/contrib/koma-script/source/scrpage.dtx
+++ /dev/null
@@ -1,2261 +0,0 @@
-% \CheckSum{2389}
-% \iffalse
-% ======================================================================
-% scrpage.dtx
-% Copyright (c) Markus Kohm, 1995-2019
-%
-% 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.
-% ----------------------------------------------------------------------
-% scrpage.dtx
-% Copyright (c) Markus Kohm, 1995-2019
-%
-% 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: scrpage.dtx 3403 2019-11-23 15:38:36Z kohm $
-%<scrpage>\NeedsTeXFormat{LaTeX2e}[1995/06/01]
-%<*dtx>
-\ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi
-\begingroup
- \def\filedate$#1: #2-#3-#4 #5${\gdef\filedate{#2/#3/#4}}
- \filedate$Date: 2019-11-23 16:38:36 +0100 (Sat, 23 Nov 2019) $
- \def\filerevision$#1: #2 ${\gdef\filerevision{r#2}}
- \filerevision$Revision: 2631 $
- \edef\reserved@a{%
- \noexpand\endgroup
- \noexpand\ProvidesFile{scrpage.dtx}%
- [\filedate\space\filerevision\space
- KOMA-Script package source
- }%
-\reserved@a
-%</dtx>
-%<*dtx|scrpage>
-%<scrpage>\ProvidesPackage{scrpage2}[%
-%!KOMAScriptVersion
-%<scrpage> package
- (page head and foot)]
-%</dtx|scrpage>
-%<*dtx>
-\ifx\documentclass\undefined
- \input scrdocstrip.tex
- \@@input scrkernel-version.dtx
- \@@input scrstrip.inc
- \KOMAdefVariable{COPYRIGHFROM}{1995}
- \generate{\usepreamble\defaultpreamble
- \file{scrpage2.sty}{%
- \from{scrpage.dtx}{scrpage}%
- \from{scrlogo.dtx}{logo}%
- }%
- }
- \@@input scrstrop.inc
-\else
- \let\endbatchfile\relax
-\fi
-\endbatchfile
-\documentclass{scrdoc}
-\usepackage[ngerman,english]{babel}
-\CodelineIndex
-\RecordChanges
-\GetFileInfo{scrpage.dtx}
-\title{\KOMAScript{} \partname\ \texttt{\filename}\thanks{This file has
- revision number \fileversion, last revised \filedate.}}
-\date{\filedate}
-\author{Markus Kohm}
-\begin{document}
- \maketitle
- \tableofcontents
- \DocInput{\filename}
-\end{document}
-%</dtx>
-% \fi
-%
-% \section{Page Layout Package}
-%
-% This is the \KOMAScript{} package \textsf{scrpage2}. You may find the user
-% documentation of this package in the English \KOMAScript{} guide,
-% \texttt{scrguien.pdf}, and in the German \KOMAScript{} guide,
-% \texttt{scrguide.pdf}.
-%
-% \StopEventually{\PrintIndex\PrintChanges}
-%
-% \section{Implementation}
-%
-% Currently this package doesn't share any code but the \KOMAScript{} logo
-% with other packages. So all the code of this package but the implementation
-% of the \KOMAScript{} logo is at this file and their is nor more code at this
-% file.
-%
-% \changes{v3.24}{2017/05/08}{warning about obsolete package added}
-% \begin{macrocode}
-%<*scrpage>
-\PackageWarning{scrpage2}{usage of obsolete package!\MessageBreak
- Package `scrpage2' is obsolete.\MessageBreak
- You should not longer use package `scrpage2'.\MessageBreak
- You should replace usage of package `scrpage2'\MessageBreak
- by `scrlayer-scrpage'}
-% \end{macrocode}
-% \changes{v1.1}{1995/06/27}{\cs{hbox to} changed into \cs{hb@xt@}.}
-% \changes{v2.2c}{2007/07/23}{a lot of \% added and removed}
-%
-% \subsection{Options}
-% \begin{option}{headinclude}
-% \changes{v2.3}{2008/12/08}{obsolete}%
-% \begin{option}{headexclude}
-% \changes{v2.3}{2008/12/08}{obsolete}%
-% \begin{option}{footinclude}
-% \changes{v2.3}{2008/12/08}{obsolete}%
-% \begin{option}{footexclude}
-% \changes{v2.3}{2008/12/08}{obsolete}%
-% \texttt{scrpage} has known some options. They are similar to the
-% old \KOMAScript{} classes. To work with and without the \KOMAScript{}
-% classes their definitions are not quite simple.
-% \begin{macrocode}
-\newcommand*{\@Pass@Obsolete@Option@To@Typearea}[1]{%
- \@expandtwoargs\in@{,\CurrentOption,}{,\@curroptions,}%
- \ifin@
- \PackageWarningNoLine{scrpage2}{%
- deprecated passing option `\CurrentOption' to scrpage2.\MessageBreak
- If you are using package typearea or\MessageBreak
- a KOMA-Script class since version 3.00\MessageBreak
- you may use `\string\KOMAoptions{#1}' and\MessageBreak
- remove passing `\CurrentOption' to scrpage2%
- }%
- \begingroup\expandafter\expandafter\expandafter\endgroup
- \expandafter\ifx\csname KOMAoptions\endcsname\relax
- \PassOptionsToPackage{#1}{typearea}%
- \else
- \KOMAoptions{#1}\csname relcalctypearea\endcsname
- \fi
- \fi
-}
-\DeclareOption{headinclude}{%
- \@Pass@Obsolete@Option@To@Typearea{headinclude}%
-}
-\DeclareOption{headexclude}{%
- \@Pass@Obsolete@Option@To@Typearea{headinclude=false}%
-}
-\DeclareOption{footinclude}{%
- \@Pass@Obsolete@Option@To@Typearea{footinclude}%
-}
-\DeclareOption{footexclude}{%
- \@Pass@Obsolete@Option@To@Typearea{footinclude=false}%
-}
-% \end{macrocode}
-% We do so, because we want so set |headinclude|, |footinclude| by
-% default at old version (see below)!
-% \end{option}
-% \end{option}
-% \end{option}
-% \end{option}
-%
-% We have additional options designed for the additional interface.
-% \begin{option}{mpinclude}
-% \changes{v2.8q}{2002/03/28}{New option}
-% \begin{option}{mpexclude}
-% \changes{v2.8q}{2002/03/28}{New option}
-% There are documents where the head and foot should span not only the
-% text but also the marginpar. We have an option to do this at
-% initialization. This option corresponds with the option of package
-% \texttt{typearea} and the classes.
-% \begin{macro}{\if@mincl}
-% \begin{macro}{\@mincltrue}
-% \begin{macro}{\@minclfalse}
-% \changes{v2.2g}{2008/11/19}{Test fixed}
-% \begin{macrocode}
-\@ifundefined{@mincltrue}{\newif\if@mincl}{}
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \begin{macrocode}
-\DeclareOption{mpinclude}{\@mincltrue}
-\DeclareOption{mpexclude}{\@minclfalse}
-% \end{macrocode}
-% \end{option}
-% \end{option}
-%
-% Other new options redefine macros, so we have to define them first.
-% \begin{macro}{\scr@headabove@linethickness}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scr@headbelow@linethickness}
-% \changes{v2.0}{2001/03/30}{New}
-% \begin{macro}{\scr@footabove@linethickness}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scr@footbelow@linethickness}
-% \changes{v2.0}{2001/04/20}{New}
-% These macros define the thickness of the line above and below the head
-% and the foot.
-% \begin{macrocode}
-\newcommand*{\scr@headabove@linethickness}{0pt}
-\newcommand*{\scr@headbelow@linethickness}{0pt}
-\newcommand*{\scr@footabove@linethickness}{0pt}
-\newcommand*{\scr@footbelow@linethickness}{0pt}
-% \end{macrocode}
-% \begin{macro}{\scr@headabove@linelength}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scr@headbelow@linelength}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scr@footabove@linelength}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scr@footbelow@linelength}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scrplain@headabove@linelength}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scrplain@headbelow@linelength}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scrplain@footabove@linelength}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scrplain@footbelow@linelength}
-% \changes{v2.0}{2001/04/20}{New}
-% Because we want to have the ``line definitions'' at one place, we
-% also define the length of the lines here. We have own length at to
-% be used at pagestyle \texttt{scrplain}.
-% \begin{macrocode}
-\newcommand*{\scr@headabove@linelength}{\@headwidth}
-\newcommand*{\scr@headbelow@linelength}{\@headwidth}
-\newcommand*{\scr@footabove@linelength}{\@footwidth}
-\newcommand*{\scr@footbelow@linelength}{\@footwidth}
-\newcommand*{\scrplain@headabove@linelength}{0pt}
-\newcommand*{\scrplain@headbelow@linelength}{0pt}
-\newcommand*{\scrplain@footabove@linelength}{0pt}
-\newcommand*{\scrplain@footbelow@linelength}{0pt}
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-%
-% \begin{option}{headtopline}
-% \changes{v2.0}{2001/04/20}{New option}
-% \begin{option}{headsepline}
-% \changes{v2.0}{2001/04/20}{New option}
-% \begin{option}{footsepline}
-% \changes{v2.0}{2001/04/20}{New option}
-% \begin{option}{footbotline}
-% \changes{v2.0}{2001/04/20}{New option}
-% \begin{option}{plainheadtopline}
-% \changes{v2.0}{2001/04/20}{New option}
-% \begin{option}{plainheadsepline}
-% \changes{v2.0}{2001/04/20}{New option}
-% \begin{option}{plainfootsepline}
-% \changes{v2.0}{2001/04/20}{New option}
-% \begin{option}{plainfootbotline}
-% \changes{v2.0}{2001/04/20}{New option}
-% The thickness can be set by four simple options:
-% \begin{macrocode}
-\DeclareOption{headtopline}{%
- \renewcommand*{\scr@headabove@linethickness}{.4pt}
- \PassOptionsToPackage{headinclude}{typearea}}
-\DeclareOption{headsepline}{%
- \renewcommand*{\scr@headbelow@linethickness}{.4pt}
- \PassOptionsToPackage{headinclude}{typearea}}
-\DeclareOption{footsepline}{%
- \renewcommand*{\scr@footabove@linethickness}{.4pt}
- \PassOptionsToPackage{footinclude}{typearea}}
-\DeclareOption{footbotline}{
- \renewcommand*{\scr@footbelow@linethickness}{.4pt}
- \PassOptionsToPackage{footinclude}{typearea}}
-\DeclareOption{plainheadtopline}{%
- \renewcommand*{\scrplain@headabove@linelength}{\scr@headabove@linelength}
- \PassOptionsToPackage{headinclude}{typearea}}
-\DeclareOption{plainheadsepline}{%
- \renewcommand*{\scrplain@headbelow@linelength}{\scr@headbelow@linelength}
- \PassOptionsToPackage{headinclude}{typearea}}
-\DeclareOption{plainfootsepline}{%
- \renewcommand*{\scrplain@footabove@linelength}{\scr@footabove@linelength}
- \PassOptionsToPackage{footinclude}{typearea}}
-\DeclareOption{plainfootbotline}{
- \renewcommand*{\scrplain@footbelow@linelength}{\scr@footbelow@linelength}
- \PassOptionsToPackage{footinclude}{typearea}}
-% \end{macrocode}
-% \end{option}
-% \end{option}
-% \end{option}
-% \end{option}
-% \end{option}
-% \end{option}
-% \end{option}
-% \end{option}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-%
-% \begin{macro}{\hfline@adjust}
-% \changes{v2.0f}{2001/06/23}{New}
-% \begin{option}{ilines}
-% \changes{v2.0f}{2001/06/23}{New}
-% \begin{option}{clines}
-% \changes{v2.0f}{2001/06/23}{New}
-% \begin{option}{olines}
-% \changes{v2.0f}{2001/06/23}{New}
-% At Version 2 lines may be inner adjusted (0), centered (1) or outer
-% adjusted (2):
-% \begin{macrocode}
-\newcommand*{\hfline@adjust}{1}
-\DeclareOption{ilines}{\renewcommand*{\hfline@adjust}{0}}
-\DeclareOption{clines}{\renewcommand*{\hfline@adjust}{1}}
-\DeclareOption{olines}{\renewcommand*{\hfline@adjust}{2}}
-% \end{macrocode}
-% \end{option}
-% \end{option}
-% \end{option}
-% \end{macro}
-%
-% \begin{option}{automark}
-% \changes{v2.0b}{2001/05/31}{use \cs{AtEndOfPackage} to run not yet
-% defined macro}
-% \begin{option}{manualmark}
-% \changes{v2.0b}{2001/05/31}{use \cs{AtEndOfPackage} to run not yet
-% defined macro}
-% \changes{v2.0i}{2001/08/17}{don't ignore oneside any longer}
-% At version 2 we want to distinguish between running headline and
-% static headline not only using different pagestyles. We do this with
-% options and commands. But here only the options are defined.
-% \begin{macrocode}
-\DeclareOption{automark}{%
- \AtEndOfPackage{\if@twoside%
- \if@chapter\automark[section]{chapter}%
- \else\automark[subsection]{section}\fi%
- \else%
- \if@chapter\automark{chapter}\else\automark{section}\fi%
- \fi}}
-\DeclareOption{manualmark}{\AtEndOfPackage{\manualmark}}
-% \end{macrocode}
-% \end{option}
-% \end{option}
-%
-% \begin{option}{autoonesize}
-% \changes{v2.0i}{2001/08/17}{New}
-% \begin{macro}{\if@autooneside}
-% \changes{v2.0i}{2001/08/17}{New}
-% If the optional argument of \cs{automark} should be irgnored at
-% onside mode, use this option:
-% \begin{macrocode}
-\newif\if@autooneside\@autoonesidefalse
-\DeclareOption{autooneside}{\@autoonesidetrue}
-% \end{macrocode}
-% \end{macro}
-% \end{option}
-%
-% \begin{option}{markuppercase}
-% \changes{v2.0c}{2001/06/07}{New}
-% \begin{option}{markusedcase}
-% \changes{v2.0c}{2001/06/07}{New}
-% For use of running headlines there are also options to say ``class
-% uses upper case at the automatic marks'' or ``class use same case at
-% the automatic marks like used writing the heading''.
-% \begin{macrocode}
-\DeclareOption{markuppercase}{\let\MakeMarkcase\MakeUppercase}
-\DeclareOption{markusedcase}{\let\MakeMarkcase\@empty}
-% \end{macrocode}
-% \end{option}
-% \end{option}
-%
-% \begin{macro}{\scr@nouppercase}
-% \changes{v2.0j}{2001/08/18}{New}
-% \begin{option}{nouppercase}
-% \changes{v2.0j}{2001/08/18}{New}
-% Sometimes scrpage may be used with a class, which uses
-% \cs{uppercase} or \cs{MakeUppercase} at \cs{markboth} or
-% \cs{markright}. But the author does not want upper case at the
-% headlines. So we define an option, that simply deaktivates
-% \cs{uppercase} and \cs{MakeUppercase} at all heads and foots,
-% defined by scrpage2.
-% \begin{macrocode}
-\newcommand*{\scr@nouppercase}{}
-\DeclareOption{nouppercase}{\renewcommand*{\scr@nouppercase}{%
- \let\uppercase\relax\let\MakeUppercase\relax
- \expandafter\let\csname MakeUppercase \endcsname\relax}
- \ifx\MakeMarkcase\MakeUppercase
- \PackageWarning{scrpage2}{%
- Option 'markuppercase' will be ignored.\MessageBreak%
- You shouldn't use option 'markuppercase' together\MessageBreak%
- with option 'nouppercase'}
- \let\MakeMarkcase\@empty
- \fi}
-% \end{macrocode}
-% \end{option}
-% \end{macro}
-%
-% \begin{option}{komastyle}
-% \begin{option}{standardstyle}
-% At version 2 there is an predefined pagestyle ``scrheadings''. With
-% the two options you may decide, wether it has to behave like
-% ``headings'' at the standard classes or the KOMA-Script classes.
-% The macro saves the name of the style.
-% \begin{macrocode}
-\DeclareOption{komastyle}{\def\scrheadings@style{koma}
- \@ifundefined{MakeMarkcase}{\let\MakeMarkcase\relax}{}}
-\DeclareOption{standardstyle}{\def\scrheadings@style{standard}
- \@ifundefined{MakeMarkcase}{\let\MakeMarkcase\MakeUppercase}{}}
-% \end{macrocode}
-% \end{option}
-% \end{option}
-%
-%
-% We don't need default options.
-% \begin{macrocode}
-\ExecuteOptions{}
-% \end{macrocode}
-% But you may set other Options:
-% \begin{macrocode}
-\ProcessOptions\relax
-% \end{macrocode}
-%
-%
-% \subsection{Some Initialisation}
-%
-% For easier handling of the differences between article-, report- and
-% book-classes we define some more switches.
-%
-% \begin{macro}{\if@chapter}
-% \changes{v2.1b}{2003/05/31}{more save test}
-% First distinguish between article and others.
-% \begin{macrocode}
-\newif\if@chapter
-\begingroup\expandafter\expandafter\expandafter\endgroup
-\expandafter\ifx\csname chapter\endcsname\relax
- \@chapterfalse
-\else
- \@chaptertrue
-\fi
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{\if@mainmatter}
-% \changes{v1.2}{1995/07/08}{Definition changed}
-% \changes{v2.1b}{2003/05/31}{more save test}
-% \changes{v2.2d}{2007/03/13}{additional \cs{if@mainmatter} test}
-% \changes{v2.2g}{2008/11/19}{usage of \cs{if@mainmatter} at message
-% removed}
-% Next distinguish between matter- and nomatter-classes.
-% \begin{macrocode}
-\def\@tempa{\newif\if@mainmatter\@mainmattertrue}
-\begingroup\expandafter\expandafter\expandafter\endgroup
-\expandafter\ifx\csname mainmatter\endcsname\relax
-\else
- \@ifundefined{@mainmattertrue}{%
- \PackageWarningNoLine{scrpage2}{%
- \string\mainmatter\space defined without
- \expandafter\string\csname if@mainmatter\endcsname!\MessageBreak
- This switch is obligatory for scrpage2 to omit\MessageBreak
- running head chapter numbers in front and\MessageBreak
- back matter and will be defined now%
- }%
- }{%
- \let\@tempa\relax
- }%
-\fi
-\@tempa
-% \end{macrocode}
-% \end{macro}
-%
-%
-% \subsection{Predefinitions}
-% There are some commands, you can use at pagestyle-definition.
-%
-% \begin{macro}{\headmark}
-% This macro is |\rightmark| or |\leftmark|. But outside
-% pagestyle-definition it's nothing.
-% \begin{macrocode}
-\let\headmark\relax
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{\pagemark}
-% This macro is the number of the page at the pagenumberfont:
-% \begin{macrocode}
-\DeclareRobustCommand\pagemark{{\pnumfont\thepage}}
-% \end{macrocode}
-% \end{macro}
-%
-%
-% \subsection{Expert-Pagestyle-Definition-Interface}
-% The pagestyle-definition-interface for experts is not as easy as the
-% simple interface we'll define later. But it's more flexible. We'll
-% later use it to define the pagestyle-definition-interface for users.
-%
-% \begin{macro}{\if@automark}
-% \changes{v2.1}{2002/10/30}{New switch}
-% \begin{macro}{\@automarktrue}
-% \begin{macro}{\@automarkfalse}
-% We need this switch to decide to switch on or off \cs{@mkboth} at the
-% pagestyles.
-% \begin{macrocode}
-\newif\if@automark\@automarkfalse
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-%
-% \begin{macro}{\defpagestyle}
-% First we define the simple definition-interface. There's no test, if
-% the pagestyle's defined twice.
-%
-% First there has to be the definition of head and foot.
-% \begin{macrocode}
-\def\defpagestyle{%
-% \end{macrocode}
-% We have to decide, whether it is a my-version or not:
-% \begin{macrocode}
- \@ifstar
- {\@defpagestyle[-]}%
- {\@defpagestyle[+]}}
-% \end{macrocode}
-% \begin{macro}{\@defpagestyle}
-% Now the we can define the head and the foot.
-% \changes{v1.0b}{1995/05/25}{Dot deleted after number at
-% chapter- and sectionmark}
-% \changes{v1.0b}{1995/05/25}{Use CJK at \cs{chaptermark},
-% \cs{sectionmark} and \cs{subsectionmark}}
-% \changes{v1.3e}{2008/02/29}{usage of \cs{if@mainmatter} fixed}
-% \changes{v2.0}{2001/04/20}{Version 2 uses \cs{automark} and
-% \cs{manualmark}, so star and non-star version are same}
-% \changes{v2.1a}{2002/10/30}{Use \cs{if@automark}}
-% \changes{v2.2d}{2007/06/14}{Support of article-classes with
-% \cs{if@mainmatter}}
-% \changes{v2.5}{2010/04/22}{moved \cs{if@twoside} inside of definition}
-% Before version 2.5 we have distinguished one- and two-side definitions while
-% loading the package and have had all the definitions of \cs{@mkboth},
-% \cs{chaptermark}, \cs{sectionmark}, and \cs{subsectionmark} at the
-% definition of the page style.
-% Since version~2.5 the difference of one- and two-side is made at the
-% definition of the heads and foots themself and \cs{chaptermark},
-% \cs{sectionmark}, and \cs{subsectionmark} are defined by \cs{automark} and
-% \cs{manualmark}. So the code is much easier.
-% \begin{macrocode}
-\def\@defpagestyle[#1]#2#3#4{%
- \expandafter\def\csname ps@#2\endcsname{%
- \if@automark\let\@mkboth\markboth\else\let\@mkboth\@gobbletwo\fi
- \def@head#3
- \def@foot#4
- }%
-}
-% \end{macrocode}
-%
-% \begin{macro}{\def@head}
-% \changes{v2.5}{2010/04/22}{new (internal)}
-% \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by
-% \cs{kernel@ifnextchar}}%^^A
-% \begin{macro}{\def@@head}
-% \changes{v2.0}{2001/04/20}{Thickness and length of the lines are
-% optional}
-% \changes{v2.0j}{2001/08/18}{Use of \cs{scr@nouppercase}}
-% \changes{v2.5}{2010/04/22}{new (internal)}
-% \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by
-% \cs{kernel@ifnextchar}}%^^A
-% This was real simple, but we already have to do the real definition
-% of the heads and foots. First the head:
-% \begin{macrocode}
-\def\def@head{%
- \kernel@ifnextchar(%)
- {\def@@head}%
- {\def@@head(\scr@headabove@linelength,%
- \scr@headabove@linethickness)}}
-\def\def@@head(#1,#2)#3#4#5{%
- \kernel@ifnextchar(%)
- {\def@@@head({#1},{#2}){#3}{#4}{#5}}%
- {\def@@@head({#1},{#2}){#3}{#4}{#5}%
- (\scr@headbelow@linelength,%
- \scr@headbelow@linethickness)}}
-\def\def@@@head(#1,#2)#3#4#5(#6,#7){%
- \def\@evenhead{%
- \if@twoside
- \let\headmark\leftmark%
- \hss\hskip\@evenheadshift\vbox{\hsize=\@headwidth\relax%
- \hf@rule{#1}{#2}{\@headwidth}{headabove}%
- \vskip#2
- \vskip\baselineskip
- \hb@xt@\@headwidth{{%
- \scr@nouppercase
- \headfont\strut #3}}%
- \hf@rule{#6}{#7}{\@headwidth}{headbelow}%
- }\hskip\@oddheadshift\hss
- \fi
- }%
- \def\@oddhead{\let\headmark\rightmark
- \hss\hskip\@oddheadshift\vbox{\hsize=\@headwidth\relax
- \hf@rule{#1}{#2}{\@headwidth}{headabove}%
- \vskip#2%
- \vskip\baselineskip
- \hb@xt@\@headwidth{{%
- \scr@nouppercase
- \headfont\strut \if@twoside #4\else #5\fi}}%
- \hf@rule{#6}{#7}{\@headwidth}{headbelow}%
- }\hskip\@evenheadshift\hss}%
-}
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-% \begin{macro}{\def@foot}
-% \changes{v2.0}{2001/04/20}{Thickness and length of the lines are
-% optional}
-% \changes{v1.3}{2001/03/30}{Use of \cmd\@footwidth instead of
-% \cs{textwidth}}
-% \changes{v2.5}{2010/04/22}{new (internal)}
-% \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by
-% \cs{kernel@ifnextchar}}%^^A
-% \begin{macro}{\def@@foot}
-% \changes{v2.5}{2010/04/22}{new (internal)}
-% \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by
-% \cs{kernel@ifnextchar}}%^^A
-% \begin{macro}{\def@@@foot}
-% \changes{v2.0j}{2001/08/18}{Use of \cs{scr@nouppercase}}
-% \changes{v2.2f}{2008/02/14}{Use of \cs{footfont}}
-% \changes{v2.5}{2010/04/22}{new (internal)}
-% And last twosided and onesided foot:
-% \begin{macrocode}
-\def\def@foot{%
- \kernel@ifnextchar(%)
- {\def@@foot}
- {\def@@foot(\scr@footabove@linelength,%
- \scr@footabove@linethickness)}}
-\def\def@@foot(#1,#2)#3#4#5{%
- \kernel@ifnextchar(%)
- {\def@@@foot({#1},{#2}){#3}{#4}{#5}}%
- {\def@@@foot({#1},{#2}){#3}{#4}{#5}%
- (\scr@footbelow@linelength,%
- \scr@footbelow@linethickness)}}
-\def\def@@@foot(#1,#2)#3#4#5(#6,#7){%
- \def\@evenfoot{%
- \if@twoside
- \let\headmark\leftmark
- \hss\hskip\@evenfootshift\vbox{\hsize=\@footwidth\relax
- \topfoot@rule{#1}{#2}\hb@xt@\@footwidth{{%
- \scr@nouppercase
- \headfont\footfont\strut #3}}%
- \botfoot@rule{#6}{#7}}\hskip\@oddfootshift\hss
- \fi
- }%
- \def\@oddfoot{\let\headmark\rightmark
- \hss\hskip\@oddfootshift\vbox{\hsize=\@footwidth\relax
- \topfoot@rule{#1}{#2}\hb@xt@\@footwidth{{%
- \scr@nouppercase
- \headfont\footfont\strut \if@twoside #4\else #5\fi}}%
- \botfoot@rule{#6}{#7}}\hskip\@evenfootshift\hss}%
-}
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-%
-% We now define the rules used at head and foot.
-% \begin{macro}{\topfoot@rule}
-% \begin{macrocode}
-\newcommand\topfoot@rule[2]{%
- \@tempdima\baselineskip\advance\@tempdima by-.7\normalbaselineskip
- \advance\@tempdima by -#2
- \vskip\@tempdima\hf@rule{#1}{#2}{\@footwidth}{footabove}%
- \vskip-\@tempdima}
-% \end{macrocode}
-% \end{macro}
-% \begin{macro}{\botfoot@rule}
-% \begin{macrocode}
-\newcommand\botfoot@rule[2]{%
- \@tempdima-\baselineskip\advance\@tempdima by .3\normalbaselineskip
- \advance\@tempdima by #2
- \vskip\@tempdima\hf@rule{#1}{#2}{\@footwidth}{footbelow}%
-}
-% \end{macrocode}
-% \end{macro}
-% \begin{macro}{\hf@rule}
-% \changes{v1.3}{2001/03/30}{New, third parameter ``boxwidth''}
-% \changes{v2.0f}{2001/06/23}{Rule can be adjusted at inner margine,
-% centered or adjusted at outer margine}
-% \changes{v2.2}{2004/07/05}{Last parameter of the rule tells, if it is a
-% headabove, headbelow, footabove or footbelow rule}
-% \changes{v2.2}{2005/07/05}{Precommands before the rules are allowed}
-% \changes{v2.2}{2005/07/05}{Macro is not longer long}
-% \changes{v2.2b}{2005/08/31}{No even alignment at oneside}
-% \begin{macrocode}
-\newcommand*{\hf@rule}[4]{%
- \setlength{\@tempdimb}{#1}
- \begingroup
- \csname scr@pre@#4@line\endcsname
- \if@twoside
- \ifodd\c@page
- \edef\@tempa{\hfline@adjust}%
- \else
- \@tempcnta=2\advance\@tempcnta -\hfline@adjust
- \edef\@tempa{\the\@tempcnta}%
- \fi
- \else
- \edef\@tempa{\hfline@adjust}%
- \fi
- \ifnum\@tempa=1
- \setlength{\@tempdimb}{.5\@tempdimb}%
- \fi
- \hb@xt@#3{%
- \ifnum\@tempa>0
- \hfill%
- \llap{\vrule\@depth#2\@height\z@\@width\@tempdimb}%
- \fi
- \ifnum\@tempa<2
- \rlap{\vrule\@depth#2\@height\z@\@width\@tempdimb}%
- \hfill%
- \fi
- }%
- \endgroup
-}
-% \end{macrocode}
-% \begin{macro}{\scr@pre@headabove@line}
-% \changes{v2.2}{2004/07/05}{New internal}
-% \begin{macro}{\scr@fnt@headtopline}
-% \changes{v2.2}{2004/07/05}{New KOMA-Script font command}
-% \begin{macro}{\scr@pre@headbelow@line}
-% \changes{v2.2}{2004/07/05}{New internal}
-% \begin{macro}{\scr@fnt@headsepline}
-% \changes{v2.2}{2004/07/05}{New KOMA-Script font command}
-% \begin{macro}{\scr@pre@footabove@line}
-% \changes{v2.2}{2004/07/05}{New internal}
-% \begin{macro}{\scr@fnt@footsepline}
-% \changes{v2.2}{2004/07/05}{New KOMA-Script font command}
-% \begin{macro}{\scr@pre@footbelow@line}
-% \changes{v2.2}{2004/07/05}{New internal}
-% \begin{macro}{\scr@fnt@footbottomrule}
-% \changes{v2.2}{2004/07/05}{New KOMA-Script font command}
-% \begin{macro}{\scr@fnt@instead@footbotline}
-% \changes{v2.2}{2004/07/05}{New KOMA-Script font command}
-% \begin{macrocode}
-\newcommand*{\scr@pre@headabove@line}{}
-\newcommand*{\scr@fnt@headtopline}{\scr@pre@headabove@line}
-\newcommand*{\scr@pre@headbelow@line}{}
-\newcommand*{\scr@fnt@headsepline}{\scr@pre@headbelow@line}
-\newcommand*{\scr@pre@footabove@line}{}
-\newcommand*{\scr@fnt@footsepline}{\scr@pre@footabove@line}
-\newcommand*{\scr@pre@footbelow@line}{}
-\newcommand*{\scr@fnt@footbottomline}{\scr@pre@footbelow@line}
-\newcommand*{\scr@fnt@instead@footbotline}{footbottomline}
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-%
-% Using these definitions, we can define the testing macros.
-%
-% \begin{macro}{\newpagestyle}
-% First the simple star/starless-selection:
-% \begin{macrocode}
-\def\newpagestyle{%
-% \end{macrocode}
-% We have to decide, whether it is a my-version or not:
-% \begin{macrocode}
- \@ifstar
- {\@newpagestyle[-]}%
- {\@newpagestyle[+]}}
-% \end{macrocode}
-% \begin{macro}{\@newpagestyle}
-% There we have to distinguish, whether the pagestyle is already
-% defined or not.
-% \begin{macrocode}
-\def\@newpagestyle[#1]#2#3#4{%
- \expandafter\ifx\csname ps@#2\endcsname\relax
-% \end{macrocode}
-% Then we can use the already defined |\@defpagestyle|.
-% \begin{macrocode}
- \@defpagestyle[#1]{#2}{#3}{#4}%
- \else
- \PackageError
- {scrpage2}%
- {Your command was ignored}%
- {There is already a pagestyle named ``#1''.\MessageBreak%
- Use \protect\defpagestyle\space, \protect\renewpagestyle or
- \protect\providepagestyle.}%
- \fi
-}
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
-% \begin{macro}{\renewpagestyle}
-% First the simple star/starless-selection:
-% \begin{macrocode}
-\def\renewpagestyle{%
-% \end{macrocode}
-% We have to decide, whether it is a my-version or not:
-% \begin{macrocode}
- \@ifstar
- {\@renewpagestyle[-]}%
- {\@renewpagestyle[+]}}
-% \end{macrocode}
-% \begin{macro}{\@renewpagestyle}
-% \changes{v1.2a}{1996/12/07}{Avoid to define pagestyle as \cs{relax}
-% if it wasn't defined (Thanks to Bernd).}
-% There we have to distinguish, whether the pagestyle is already
-% defined or not.
-% \begin{macrocode}
-\def\@renewpagestyle[#1]#2#3#4{%
- \begingroup\expandafter\expandafter\expandafter\endgroup
- \expandafter\ifx\csname ps@#2\endcsname\relax
- \PackageError
- {scrpage2}%
- {Your command was ignored}%
- {There is no pagestyle named ``#1''.\MessageBreak%
- Use \protect\defpagestyle, \protect\newpagestyle or
- \protect\providepagestyle.}%
- \else
-% \end{macrocode}
-% Then we can use the already defined |\@defpagestyle|.
-% \begin{macrocode}
- \@defpagestyle[#1]{#2}{#3}{#4}%
- \fi
-}
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
-% \begin{macro}{\providepagestyle}
-% First the simple star/starless-selection:
-% \begin{macrocode}
-\def\providepagestyle{%
-% \end{macrocode}
-% We have to decide, whether it is a my-version or not:
-% \begin{macrocode}
- \@ifstar
- {\@providepagestyle[-]}%
- {\@providepagestyle[+]}}
-% \end{macrocode}
-% \begin{macro}{\@providepagestyle}
-% There we have to distinguish, whether the pagestyle is already
-% defined or not.
-% \begin{macrocode}
-\def\@providepagestyle[#1]#2#3#4{%
- \expandafter\ifx\csname ps@#2\endcsname\relax
-% \end{macrocode}
-% Then we can use the already defined |\@defpagestyle|.
-% \begin{macrocode}
- \@defpagestyle[#1]{#2}{#3}{#4}%
- \else
- \PackageInfo
- {scrpage2}%
- {\protect\providepagestyle\protect{#1\protect} ignored.}%
- \fi
-}
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
-%
-% \subsection{User-Pagestyle-Definition-Interface}
-% The pagestyle-definition-interface for users is much easier than the
-% expert-version. Using the expert-macros, the definition is easy, too.
-%
-% \begin{macro}{\deftripstyle}
-% \begin{macrocode}
-% \end{macrocode}
-% At version 1 we define the selection of star- or starless-version first:
-% \begin{macrocode}
-\def\deftripstyle{%
- \@ifstar
- {\@deftripstyle[-]}%
- {\@deftripstyle[+]}}
-% \end{macrocode}
-% \end{macro}
-% Next we check, if there is an optional argument:
-% \begin{macro}{\@deftripstyle}
-% \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by
-% \cs{kernel@ifnextchar}}%^^A
-% \begin{macrocode}
-\def\@deftripstyle[#1]#2{%
- \kernel@ifnextchar[%]
- {\@@deftripstyle[#1]{#2}}%
- {\@@deftripstyle[#1]{#2}[\z@]}}
-% \end{macrocode}
-% \end{macro}
-% or perhaps two optional arguments:
-% \begin{macro}{\@@deftripstyle}
-% \begin{macrocode}
-\def\@@deftripstyle[#1]#2[#3]{%
-% \end{macrocode}
-% \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by
-% \cs{kernel@ifnextchar}}%^^A
-% Ok, now we have the problem, that there can be only 9 arguments. So we
-% have to distinguish the star-versions by a macro:
-% \begin{macrocode}
- \def\@tempa{#1}%
- \kernel@ifnextchar[%]
- {\@@@deftripstyle#2[#3]}%
- {\@@@deftripstyle#2[\z@][#3]}}
-% \end{macrocode}
-% \end{macro}
-% Now the main-definition:
-% \begin{macro}{\@@@deftripstyle}
-% \begin{macrocode}
-\def\@@@deftripstyle#1[#2][#3]#4#5#6#7#8#9{%
- \def\@tempb{+}%
- \ifx\@tempa\@tempb
- \defpagestyle{#1}%
- {(\@headwidth,#2)%
- {\rlap{#6}\hfill{#5}\hfill\llap{#4}}%
- {\rlap{#4}\hfill{#5}\hfill\llap{#6}}%
- {\rlap{#4}\hfill{#5}\hfill\llap{#6}}%
- (\@headwidth,#3)}%
- {(\@footwidth,#3)%
- {\rlap{#9}\hfill{#8}\hfill\llap{#7}}%
- {\rlap{#7}\hfill{#8}\hfill\llap{#9}}%
- {\rlap{#7}\hfill{#8}\hfill\llap{#9}}%
- (\@footwidth,#2)}%
- \else
- \defpagestyle*{#1}%
- {(\@headwidth,#2)%
- {\rlap{#6}\hfill{#5}\hfill\llap{#4}}%
- {\rlap{#4}\hfill{#5}\hfill\llap{#6}}%
- {\rlap{#4}\hfill{#5}\hfill\llap{#6}}%
- (\@headwidth,#3)}%
- {(\@footwidth,#3)%
- {\rlap{#9}\hfill{#8}\hfill\llap{#7}}%
- {\rlap{#7}\hfill{#8}\hfill\llap{#9}}%
- {\rlap{#7}\hfill{#8}\hfill\llap{#9}}%
- (\@footwidth,#2)}%
- \fi
-}
-% \end{macrocode}
-% \end{macro}
-%
-%
-% \subsection{Automark or not}
-% This is new since version 2.
-% \begin{macro}{\automark}
-% \changes{v2.0}{2001/04/20}{New}
-% \changes{v2.0c}{2001/06/07}{Use of \cs{MakeMarkcase}}
-% \changes{v2.0g}{2001/06/25}{Use of \cs{manualmark}}
-% \changes{v2.0i}{2001/08/17}{Warning, if arguments are mixed up}
-% \changes{v2.0i}{2001/08/17}{\cs{markboth} behavior fixed}
-% \changes{v2.0i}{2001/08/17}{Use of \cs{if@autooneside}}
-% \changes{v2.1a}{2002/10/30}{Switch on \cs{if@automark}}
-% This macro activates automatic mark. Is has two arguments. The
-% first, optional argument is the sectioning level name of the mark at
-% left pages, the second, not optional argument is the same at right
-% pages. At oneside mode all pages are right.
-% \begin{macro}{\@iflevelok}
-% \changes{v2.0i}{2001/08/17}{New}
-% \begin{macro}{\markleft}
-% \changes{v2.0i}{2001/08/17}{New}
-% \begin{macro}{\@markleft}
-% \changes{v2.0i}{2001/08/17}{New}
-% To define \cs{automark} we also need these three makros. The first
-% one decides, if level of second parameter is less than level of
-% first parameter and does then third or fourth parameter.
-% \cs{markleft} and \cs{@markleft} are similar to \cs{markright} and
-% \cs{@markright} at \LaTeX{} kernel.
-% \begin{macrocode}
-\newcommand*{\@iflevelok}[4]{%
- \begingroup
- \edef\@tempa{#1}\ifx\@tempa\@empty\def\@tempa{\endgroup #3}\else
- \def\@tempa{\csname #1level\endcsname}%
- \def\@tempb{\csname #2level\endcsname}%
- \ifnum \@tempa>\@tempb
- \def\@tempa{\endgroup#3}%
- \else
- \def\@tempa{\endgroup#4}%
- \fi\fi\@tempa}
-\providecommand{\markleft}[1]{%
- \begingroup
- \let\label\relax \let\index\relax \let\glossary\relax
- \expandafter\@markleft\@themark {#1}%
- \@temptokena \expandafter{\@themark}%
- \mark{\the\@temptokena}%
- \endgroup
- \if@nobreak\ifvmode\nobreak\fi\fi}
-\providecommand{\@markleft}[3]{\@temptokena {#2}%
- \unrestored@protected@xdef\@themark{{#3}{\the\@temptokena}}}
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \changes{v2.2a}{2004/09/05}{all changes of helper macros and switches are
-% local to fix e.g.\ twocolumn problem with \cs{part}}
-% \begin{macrocode}
-\newcommand*{\automark}[2][\@empty]{%
- \manualmark
- \@automarktrue
- \begingroup
- \edef\@tempa{#2}\ifx\@tempa\@empty
- \endgroup
- \PackageWarning{scrpage2}%
- {\string\automark\space with empty obligatory argument}%
- \else
- \endgroup
- \expandafter\def\csname #2mark\endcsname##1{%
- \begingroup
- \def\@tempa{\csname #2level\endcsname}%
- \@tempswafalse
- \ifnum \c@secnumdepth <\@tempa\else\if@mainmatter
- \@tempswatrue
- \fi\fi
- \edef\@tempa{#1}%
- \if@twoside\edef\@tempb{#2}\else\let\@tempb\@tempa\fi
- \ifx\@tempa\@tempb
- \if@tempswa
- \@mkboth{\MakeMarkcase{\csname #2markformat\endcsname ##1}}%
- {\MakeMarkcase{\csname #2markformat\endcsname ##1}}%
- \else%
- \@mkboth{\MakeMarkcase{##1}}{\MakeMarkcase{##1}}%
- \fi
- \else
- \if@tempswa
- \@iflevelok{#1}{#2}{%
- \@mkboth{\MakeMarkcase{\csname #2markformat\endcsname
- ##1}}{}}{%
- \ifx\@mkboth\markboth\markleft{\MakeMarkcase{\csname
- #2markformat\endcsname ##1}}%
- \fi}
- \else
- \@iflevelok{#1}{#2}{%
- \@mkboth{\MakeMarkcase{##1}}{}}{%
- \ifx\@mkboth\markboth\markleft{\MakeMarkcase{##1}}\fi}%
- \fi
- \fi
- \endgroup
- }
- \fi
- \begingroup
- \edef\@tempa{#1}\edef\@tempb{#2}%
- \if@autooneside\if@twoside\else\let\@tempa\@empty\fi\fi
- \ifx\@tempa\@empty
- \endgroup
- \else
- \ifx\@tempa\@tempb
- \endgroup
- \else
- \endgroup
- \expandafter\def\csname #1mark\endcsname##1{%
- \begingroup
- \def\@tempa{\csname #1level\endcsname}%
- \@tempswafalse
- \ifnum \c@secnumdepth <\@tempa\else\if@mainmatter
- \@tempswatrue
- \fi\fi
- \if@tempswa
- \@iflevelok{#1}{#2}{%
- \ifx\@mkboth\markboth
- \markright{\MakeMarkcase{\csname #1markformat\endcsname
- ##1}}%
- \fi}{%
- \@mkboth{}{\MakeMarkcase{\csname #1markformat\endcsname
- ##1}}}%
- \else
- \@iflevelok{#1}{#2}{%
- \ifx\@mkboth\markboth
- \markright{\MakeMarkcase{##1}}%
- \fi}{%
- \@mkboth{}{\MakeMarkcase{##1}}}%
- \fi
- \endgroup
- }
- \fi\fi%
- \let\@mkboth\markboth
-}
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{\manualmark}
-% \changes{v2.0}{2001/04/20}{New}
-% \changes{v2.0g}{2001/06/25}{also deactivating \cs{...mark}}
-% \changes{v2.1a}{2002/10/30}{Switch off \cs{if@automark}}
-% This macro switchs to the manual set of marks (using \cs{markboth}
-% and \cs{markright}. This is very simple, we only have to deaktivate
-% the mark macros.
-% \begin{macrocode}
-\newcommand*{\manualmark}{%
- \if@chapter\let\chaptermark\@gobble\fi
- \let\sectionmark\@gobble
- \let\subsectionmark\@gobble
- \let\subsubsectionmark\@gobble
- \let\paragraphmark\@gobble
- \let\subparagraphmark\@gobble
- \let\@mkboth\@gobbletwo
- \@automarkfalse
-}
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{\partlevel}
-% \changes{v2.2}{2004/07/05}{New}
-% \changes{v2.4}{2009/11/11}{part level is always -1}
-% \begin{macro}{\chapterlevel}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\sectionlevel}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\subsectionlevel}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\subsubsectionlevel}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\paragraphlevel}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\subparagraphlevel}
-% \changes{v2.0}{2001/04/20}{New}
-% At \cs{automark} we use some macros to get the numeric level of a
-% sectioning name. We simply define these:
-% \begin{macrocode}
-\newcommand*{\partlevel}{-1}
-\newcommand*{\chapterlevel}{0}
-\newcommand*{\sectionlevel}{1}
-\newcommand*{\subsectionlevel}{2}
-\newcommand*{\subsubsectionlevel}{3}
-\newcommand*{\paragraphlevel}{4}
-\newcommand*{\subparagraphlevel}{5}
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-%
-% \begin{macro}{\MakeMarkcase}
-% \changes{v2.0m}{2002/02/05}{\texttt{scrlttr2} is a known class}
-% At \cs{automark} we use a new macro to enable usability of
-% \cs{MakeUppercase} at the head-marks. We set this macro to
-% \cs{MakeUppercase} if one of the standard-classes was loaded:
-% \begin{macrocode}
-\@ifundefined{MakeMarkcase}{%
- \@ifclassloaded{scrbook}{\let\MakeMarkcase\relax}{%
- \@ifclassloaded{scrreprt}{\let\MakeMarkcase\relax}{%
- \@ifclassloaded{scrartcl}{\let\MakeMarkcase\relax}{%
- \@ifclassloaded{scrlttr2}{\let\MakeMarkcase\relax}{%
- \@ifclassloaded{book}{}{%
- \@ifclassloaded{report}{}{%
- \@ifclassloaded{article}{}{%
- \PackageWarningNoLine{scrpage2}{%
- use of scrpage2 with unknown class.\MessageBreak
- Please mail to markus.kohm@gmx.de, if
- headmarks\MessageBreak
- are lower case without use of scrpage2}}}}%
- \let\MakeMarkcase\MakeUppercase}}}}}{}
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{\scrheadings@style}
-% \changes{v2.0g}{2001/06/25}{New}
-% \changes{v2.0m}{2002/02/05}{Take care of class \texttt{scrlttr2}}
-% This macro defines, which style for scrheadings should be used. If
-% it is not defined, we have to define it in a propper way.
-% \begin{macrocode}
-\@ifundefined{scrheadings@style}{%
- \@ifclassloaded{scrbook}{\def\scrheadings@style{koma}}{%
- \@ifclassloaded{scrreprt}{\def\scrheadings@style{koma}}{%
- \@ifclassloaded{scrartcl}{\def\scrheadings@style{koma}}{%
- \@ifclassloaded{scrlttr2}{\def\scrheadings@style{koma}}{%
- \def\scrheadings@style{standard}}}}}}{}
-% \end{macrocode}
-% \end{macro}
-%
-%
-% \subsection{Width of head and foot}
-% \begin{macro}{\setheadwidth}
-% \changes{v1.3}{2001/03/30}{New}
-% \begin{macro}{\setfootwidth}
-% \changes{v1.3}{2001/03/30}{New}
-% \begin{macro}{\set@hf@width}
-% \changes{v1.3}{2001/03/30}{New}
-% \changes{v1.3a}{2001/05/31}{symbolic values ``paper'', ``text'',
-% ``textwidthmarginpar''}
-% \changes{v2.0b}{2001/05/31}{symbolic values ``paper'', ``text'',
-% ``textwidthmarginpar''}
-% \changes{v2.0c}{2001/06/07}{error fix at warning}
-% \begin{macro}{\settowidthof}
-% \changes{v2.0e}{2001/06/22}{New}
-% \begin{macro}{\deftowidthof}
-% \changes{v2.0e}{2001/06/22}{New}
-% \changes{v2.0f}{2001/06/23}{new symbolic values ``autohead'' and
-% ``autofoot''}
-% \changes{v2.0i}{2001/08/17}{new symbolic value ``page''}
-% \changes{v2.0k}{2001/09/28}{\cs{pagewidth} korrigiert}
-% \changes{v2.1b}{2003/05/31}{more save existance test}
-% \changes{v2.2}{2004/07/05}{value ``foot'' fixed}
-% Until version 1.3, head and foot of a page had same width like the
-% text block. Since version 1.3 this was changed. Now the head and
-% foot have their own width and an optional shift relative to the text
-% part of the page. This shift can be positive or negative. We set
-% the width and shift with one macro and save them at macros. The set
-% macros have an optional argument: the shift.
-%
-% For definition of symbolic length values there is the macro
-% \cs{settowidthof}. And to define a macro with this value, there
-% is \cs{deftowidthof}.
-% \begin{macrocode}
-\newcommand*{\settowidthof}[2]{%
- \edef\@tempa{#2}%
- \edef\@tempb{paper}\ifx\@tempa\@tempb
- \setlength{#1}{\paperwidth}%
- \else\edef\@tempb{text}\ifx\@tempa\@tempb
- \setlength{#1}{\textwidth}%
- \else\edef\@tempb{textwithmarginpar}\ifx\@tempa\@tempb
- \setlength{#1}{\textwidth}%
- \addtolength{#1}{\marginparwidth}%
- \addtolength{#1}{\marginparsep}%
- \else\edef\@tempb{head}\ifx\@tempa\@tempb
- \setlength{#1}{\@headwidth}%
- \else\edef\@tempb{foot}\ifx\@tempa\@tempb
- \setlength{#1}{\@footwidth}%
- \else\edef\@tempb{headtopline}\ifx\@tempa\@tempb
- \setlength{#1}{\scr@headabove@linelength}%
- \else\edef\@tempb{headsepline}\ifx\@tempa\@tempb
- \setlength{#1}{\scr@headbelow@linelength}%
- \else\edef\@tempb{footsepline}\ifx\@tempa\@tempb
- \setlength{#1}{\scr@footabove@linelength}%
- \else\edef\@tempb{footbotline}\ifx\@tempa\@tempb
- \setlength{#1}{\scr@footbelow@linelength}%
- \else\edef\@tempb{page}\ifx\@tempa\@tempb
- \setlength{#1}{\paperwidth}%
- \begingroup\expandafter\expandafter\expandafter\endgroup
- \expandafter\ifx\csname ta@bcor\endcsname\relax\else
- \addtolength{#1}{-\ta@bcor}%
- \fi
- \else
- \setlength{#1}{#2}%
- \fi
- \fi
- \fi
- \fi
- \fi
- \fi
- \fi
- \fi
- \fi
- \fi
-}
-\newcommand*{\deftowidthof}[2]{%
- \edef\@tempa{#2}\edef\@tempb{autohead}\ifx\@tempa\@tempb
- \expandafter\def\csname #1\endcsname{\@headwidth}%
- \else\edef\@tempb{autofoot}\ifx\@tempa\@tempb
- \expandafter\def\csname #1\endcsname{\@footwidth}%
- \else
- \settowidthof{\@tempdima}{#2}%
- \expandafter\edef\csname #1\endcsname{\the\@tempdima}%
- \fi
- \fi
-}
-\newcommand*{\setheadwidth}[2][\@empty]{%
- \set@hf@width{head}{#1}{#2} %
-}
-\newcommand*{\setfootwidth}[2][\@empty]{%
- \set@hf@width{foot}{#1}{#2}%
-}
-\newcommand*{\set@hf@width}[3]{%
- \settowidthof{\@tempdima}{#3}%
- \ifdim\@tempdima>\paperwidth
- \PackageWarning
- {scrpage2}%
- {You've set width of #1 to a value\MessageBreak
- greater than width of page!\MessageBreak%
- I`ll reduce width of #1 to width of page}%
- \setlength{\@tempdima}{\paperwidth}%
- \else
- \ifdim\@tempdima<\z@
- \PackageWarning
- {scrpage2}%
- {You've set width of #1 to negative value!\MessageBreak%
- I'll set it to 0pt}%
- \setlength{\@tempdima}{\z@}%
- \fi
- \fi
- \expandafter\edef\csname @#1width\endcsname{\the\@tempdima}%
- \edef\@tempa{#2}%
- \setlength{\@tempdima}{\textwidth}%
- \addtolength{\@tempdima}{-\csname @#1width\endcsname}%
- \ifx\@tempa\@empty
- \if@twoside
- \setlength{\@tempdimb}{.3333333333\@tempdima}%
- \else
- \setlength{\@tempdimb}{.5\@tempdima}%
- \fi
- \else
- \setlength{\@tempdimb}{#2}%
- \fi
- \addtolength{\@tempdima}{-\@tempdimb}%
- \ifdim\@tempdimb<\z@
- \setlength{\@tempdimb}{-\@tempdimb}%
- \expandafter\edef\csname @odd#1shift\endcsname{-\the\@tempdimb}%
- \else
- \expandafter\edef\csname @odd#1shift\endcsname{\the\@tempdimb}%
- \fi
- \ifdim\@tempdima<\z@
- \setlength{\@tempdima}{-\@tempdima}%
- \expandafter\edef\csname @even#1shift\endcsname{-\the\@tempdima}%
- \else
- \expandafter\edef\csname @even#1shift\endcsname{\the\@tempdima}%
- \fi
-}
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-%
-% \begin{macro}{\@headwidth}
-% \changes{v1.3}{2001/03/30}{New}
-% \changes{v2.1}{2002/03/28}{use of option \texttt{mpinclude}}
-% \begin{macro}{\@footwidth}
-% \changes{v1.3}{2001/03/30}{New}
-% \changes{v2.1}{2002/03/28}{use of option \texttt{mpinclude}}
-% \begin{macro}{\@oddheadshift}
-% \changes{v1.3}{2001/03/30}{New}
-% \begin{macro}{\@evenheadshift}
-% \changes{v1.3}{2001/03/30}{New}
-% \begin{macro}{\@oddfootshift}
-% \changes{v1.3}{2001/03/30}{New}
-% \begin{macro}{\@evenfootshift}
-% \changes{v1.3}{2001/03/30}{New}
-% The values of width and shift of head and foot are saved at internal
-% macros.
-% \begin{macrocode}
-\newcommand*{\@headwidth}{\textwidth}%
-\newcommand*{\@oddheadshift}{\z@}%
-\newcommand*{\@evenheadshift}{\z@}%
-\newcommand*{\@footwidth}{\textwidth}%
-\newcommand*{\@oddfootshift}{\z@}%
-\newcommand*{\@evenfootshift}{\z@}%
-% \end{macrocode}
-% If option \texttt{mpinclude} was used, we use a special trick to set
-% width of head and foot but only if the user doesn't:
-% \begin{macrocode}
-\if@mincl
- \renewcommand*{\@headwidth}{}%
- \renewcommand*{\@footwidth}{}%
- \AtBeginDocument{%
- \ifx\@headwidth\@empty
- \setheadwidth[0pt]{textwithmarginpar}%
- \fi
- \ifx\@footwidth\@empty
- \setfootwidth[0pt]{textwithmarginpar}%
- \fi
- }
-\fi
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-%
-%
-% \subsection{Fonts}
-% \begin{macro}{\pnumfont}
-% We have to define a macro defining the font, used by |\pagemark|. Because
-% of this macro may already be defined by a \textsf{KOMA}-script-class, we
-% have to do this, using |\providecommand|
-% \begin{macrocode}
-\providecommand*{\pnumfont}{\normalfont}
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{\headfont}
-% There is also a macro used by |\@evenhead|, |\@oddhead| and |\@evenfoot|,
-% |\@oddfoot|:
-% \begin{macrocode}
-\providecommand*{\headfont}{\normalfont\slshape}
-\def\scr@fnt@wrn@pagehead#1{%
- `pagehead' is only an alias of `pageheadfoot'.\MessageBreak
- Font of page foot may also be changed%
-}
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{\footfont}
-% \changes{v2.2f}{2008/02/14}{New}
-% \begin{macro}{\scr@fnt@pagefoot}
-% \changes{v2.2f}{2008/02/14}{New (internal)}
-% \begin{macro}{\scr@fnt@wrn@pagefoot}
-% \changes{v2.2f}{2008/02/14}{deactivated}
-% There is also a macro used by |\@evenfoot|, |\@oddfoot| after |\headfont|:
-% \begin{macrocode}
-\providecommand*{\footfont}{\normalfont}
-\providecommand*{\scr@fnt@pagefoot}{\footfont}
-\let\scr@fnt@wrn@pagefoot\relax
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-%
-%
-% \subsection{Length and thickness of lines at head and foot}
-% \begin{macro}{\setheadtopline}
-% \changes{v2.0}{2001/04/20}{New}
-% \changes{v2.0d}{2001/06/19}{\texttt{headtop} changed into
-% \texttt{headabove}}
-% \changes{v2.0f}{2001/06/23}{new symbolic value ``auto''}
-% \begin{macro}{\setheadsepline}
-% \changes{v2.0}{2001/04/20}{New}
-% \changes{v2.0d}{2001/06/19}{\texttt{headbot} changed into
-% \texttt{headbelow}}
-% \changes{v2.0f}{2001/06/23}{new symbolic value ``auto''}
-% \begin{macro}{\setfootsepline}
-% \changes{v2.0}{2001/04/20}{New}
-% \changes{v2.0d}{2001/06/19}{\texttt{foottop} changed into
-% \texttt{footabove}}
-% \changes{v2.0f}{2001/06/23}{new symbolic value ``auto''}
-% \begin{macro}{\setfootbotline}
-% \changes{v2.0}{2001/04/20}{New}
-% \changes{v2.0d}{2001/06/19}{\texttt{footbot} changed into
-% \texttt{footbelow}}
-% \changes{v2.0f}{2001/06/23}{new symbolic value ``auto''}
-% Since version 2 there are new macros to set the length and
-% thickness of the lines at head and foot. Wie use macros not
-% dimensions, because the amount of dimensions is very small at \TeX.
-% \begin{macrocode}
-\newcommand*{\setheadtopline}{\scr@setline{head}{above}}
-\newcommand*{\setheadsepline}{\scr@setline{head}{below}}
-\newcommand*{\setfootsepline}{\scr@setline{foot}{above}}
-\newcommand*{\setfootbotline}{\scr@setline{foot}{below}}
-% \end{macrocode}
-% \begin{macro}{\scr@setline}
-% \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by
-% \cs{kernel@ifnextchar}}%^^A
-% \begin{macro}{\@scr@setline}
-% \changes{v2.0d}{2001/06/19}{symbolic values implemented}
-% \begin{macro}{\@@scr@setline}
-% \changes{v2.0d}{2001/06/18}{macro name fixed}
-% \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by
-% \cs{kernel@ifnextchar}}%^^A
-% \begin{macro}{\@scr@set@pre@line}
-% \changes{v2.2}{2004/07/05}{New internal}
-% The real change of the lines is done with the macros
-% \cs{scr@setline}, \cs{@scr@setline} and \cs{@@scr@setline}:
-% \begin{macrocode}
-\def\scr@setline#1#2{%
- \kernel@ifnextchar[%]
- {\@scr@setline{#1}{#2}}{\@@scr@setline{#1#2}}%
-}
-\def\@scr@setline#1#2[#3]{%
- \edef\@tempa{#3}\edef\@tempa{auto}\ifx\@tempa\@tempb
- \deftowidthof{scr@#1#2@linelength}{#3#1}%
- \else
- \deftowidthof{scr@#1#2@linelength}{#3}%
- \fi
- \@@scr@setline{#1#2}%
-}
-\def\@@scr@setline#1#2{%
- \edef\@tempa{#2}\edef\@tempb{current}\ifx\@tempa\@empty\else
- \ifx\@tempa\@tempb\else
- \setlength{\@tempdima}{#2}%
- \expandafter\edef\csname scr@#1@linethickness\endcsname%
- {\the\@tempdima}%
- \fi\fi
- \kernel@ifnextchar[%]
- {\@src@set@pre@line{#1}}{}%
-}
-\def\@src@set@pre@line#1[#2]{%
- \expandafter\def\csname scr@pre@#1@line\endcsname{#2}%
-}
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-%
-%
-% \subsection{Extended multilanguage formats}
-% \begin{macro}{\partmarkformat}
-% \changes{v2.2}{2004/07/05}{New}
-% \begin{macro}{\chaptermarkformat}
-% \changes{v1.1}{1995/06/27}{Space after chapternumber increased.}
-% \begin{macro}{\sectionmarkformat}
-% \changes{v1.1}{1995/06/27}{Space after sectionnumber increased.}
-% \begin{macro}{\subsectionmarkformat}
-% \changes{v1.1}{1995/06/27}{Space after subsectionnumber increased.}
-% \begin{macro}{\subsubsectionmarkformat}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\paragraphmarkformat}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\subparagraphmarkformat}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\@seccntmarkformat}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\@seccntformat}
-% \changes{v2.0}{2001/04/20}{New}
-% There are some macros to handle languages like Chinese, Japanese or Korean.
-% These macros were defined first by Werner Lemberg at his CJK-bundle. See
-% |scrclass.dtx| for further information.
-% \begin{macrocode}
-\providecommand{\partmarkformat} {\partname\ \thepart. \ }
-\if@chapter
- \providecommand{\chaptermarkformat} {\@chapapp\ \thechapter. \ }
- \providecommand{\sectionmarkformat} {\thesection. \ }
- \providecommand{\subsectionmarkformat} {\@seccntmarkformat{subsection}}
-\else
- \providecommand{\sectionmarkformat} {\thesection\quad}
- \providecommand{\subsectionmarkformat} {\thesubsection\quad}
-\fi
-\providecommand{\subsubsectionmarkformat}{\@seccntmarkformat{subsubsection}}
-\providecommand{\paragraphmarkformat} {\@seccntmarkformat{paragraph}}
-\providecommand{\subparagraphmarkformat} {\@seccntmarkformat{subparagraph}}
-\providecommand{\@seccntmarkformat}[1] {\@seccntformat{#1}}
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-%
-%
-% \subsection{Definition of default pagestyles}
-%
-% \begin{macro}{\ps@save@plain}
-% \changes{v2.0}{2001/04/20}{New}
-% \changes{v2.0b}{2001/05/31}{use this instead of
-% \cs{ps@standardplain}}
-% We define two default pagestyles, which can be used instead of the
-% standard pagestyles. The two pagestyles are something like a
-% family. A pagestyle for \emph{normal} pages with head and foot and a
-% pagestyle for \emph{plain} pages with not so much head and foot. So
-% we have to redefine the standard pagestyle \texttt{plain}. But maybe
-% someone want to use the old standard pagestyle. So we first define
-% new names for old pagestyles.
-% \begin{macrocode}
-\newcommand*{\ps@save@plain}{}
-\let\ps@save@plain\ps@plain
-\newcommand*{\ps@use@plain}{\let\save@@mkboth\@mkboth
- \ps@save@plain
- \let\@mkboth\save@@mkboth}
-\let\ps@plain\ps@use@plain
-% \end{macrocode}
-% \begin{macro}{\ps@save@headings}
-% \changes{v2.0}{2001/04/20}{New}
-% \changes{v2.0b}{2001/05/31}{use this instead of
-% \cs{ps@standardheadings}}
-% \begin{macro}{\ps@save@myheadings}
-% \changes{v2.0}{2001/04/20}{New}
-% \changes{v2.0b}{2001/05/31}{use this instead of
-% \cs{ps@standardmyheadings}}
-% \begin{macro}{\ps@headings}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\ps@myheadings}
-% \changes{v2.0}{2001/04/20}{New}
-% If standard pagestyle \texttt{headings} or \texttt{myheadings} is
-% used, also standard pagestyle \texttt{use@plain} should be
-% used. So we also define new names for the other old pagestyles and
-% new pagestyles with the old names, doing the switch back for the
-% plain pagestyle. These are defined even if the pagestyles are
-% unknown.
-% \begin{macrocode}
-\newcommand*{\ps@save@headings}{}
-\let\ps@save@headings\ps@headings
-\newcommand*{\ps@save@myheadings}{}
-\let\ps@save@myheadings\ps@myheadings
-\def\ps@headings{%
- \PackageWarning{scrpage2}%
- {you've used pagestyle ``headings''.\MessageBreak
- You should not use this pagestyle with a\MessageBreak
- scrpage2-pagestyle!\MessageBreak
- You should use pagestyle ``useheadings'' instead\MessageBreak}%
- \let\ps@plain\ps@save@plain%
- \ps@save@headings\@automarktrue}
-\def\ps@myheadings{%
- \PackageWarning{scrpage2}%
- {you've used pagestyle ``myheadings''.\MessageBreak
- You should not use this pagestyle with a\MessageBreak
- scrpage2-pagestyle!\MessageBreak
- You should use pagestyle ``useheadings'' instead\MessageBreak}%
- \let\ps@plain\ps@save@plain%
- \ps@save@myheadings\@automarkfalse}
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-%
-%
-% \begin{macro}{\ps@useheadings}
-% \changes{v2.0b}{2001/05/31}{New}
-% \changes{v2.0m}{2002/02/05}{Fatal bug (\cs{mkboth} instead of
-% \cs{@mkboth}) fixed}
-% \changes{v2.1a}{2002/10/30}{Use of switch \cs{if@automark}}
-% This is the pagestyle, you should use instead of \texttt{headings}
-% or \texttt{myheadings}. If you are using manual marks, this behaves
-% like pagestyle \texttt{myheadings}. If you are using automatic
-% marks, this behaves like headings, but without changing
-% \cs{chaptermark}, \cs{sectionmark} or \cs{subsectionmark}.
-% \begin{macrocode}
-\newcommand*{\ps@useheadings}{%
- \if@automark\let\@mkboth\markboth\else\let\@mkboth\@gobbletwo\fi
- \let\ps@plain\ps@use@plain
- \let\save@@mkboth\@mkboth
- \let\save@chaptermark\chaptermark
- \let\save@sectionmark\sectionmark
- \let\save@subsectionmark\subsectionmark
- \ifx\@mkboth\markboth\ps@save@headings\else\ps@save@myheadings\fi
- \let\@mkboth\save@@mkboth
- \let\chaptermark\save@chaptermark
- \let\sectionmark\save@sectionmark
- \let\subsectionmark\save@subsectionmark
-}
-% \end{macrocode}
-% Note: Because of saving \cs{@mkboth}, \cs{chaptermark},
-% \cs{sectionmark} and \cs{subsection} before changing the pagestyle
-% and restore them after changing the pagestyle it does not matter, if
-% we set pagestyle \texttt{headings} or \texttt{myheadings}. So it
-% would be possible to remove the \cs{ifx}\dots\cs{fi}-line above and
-% simply use \cs{ps@save@headings} or \cs{ps@save@myheadings} instead
-% of.
-% \end{macro}
-%
-%
-% \begin{macro}{\ps@scrplain}
-% \changes{v2.0}{2001/04/20}{New}
-% \changes{v2.0a}{2001/04/24}{\cs{strut} inserted}
-% \changes{v2.0f}{2001/06/23}{\cs{strut} inserted}
-% \changes{v2.1c}{2004/02/07}{thickness of footbelow line fixed}
-% \begin{macro}{\scrplain@even@left@head}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scrplain@even@middle@head}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scrplain@even@right@head}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scrplain@odd@left@head}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scrplain@odd@middle@head}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scrplain@odd@right@head}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scrplain@even@left@foot}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scrplain@even@middle@foot}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scrplain@even@right@foot}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scrplain@odd@left@foot}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scrplain@odd@middle@foot}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scrplain@odd@right@foot}
-% \changes{v2.0}{2001/04/20}{New}
-% After this, we can define the new pagestyles, first a new plain
-% one. It sould be variable and so we use macros to define the parts.
-% \begin{macrocode}
-\newcommand*{\ps@scrplain}{\let\ps@plain\ps@@scrplain\ps@plain}
-\newpagestyle{@scrplain}
-{%
- (\scrplain@headabove@linelength,\scr@headabove@linethickness)%
- {%
- \rlap{\parbox{\@headwidth}{\raggedright
- \strut\scrplain@even@left@head\strut}}%
- \hfill
- \parbox{\@headwidth}{\centering\strut
- \scrplain@even@middle@head\strut}%
- \hfill
- \llap{\parbox{\@headwidth}{\raggedleft
- \strut\scrplain@even@right@head\strut}}}%
- {%
- \rlap{\parbox{\@headwidth}{\raggedright
- \strut\scrplain@odd@left@head\strut}}%
- \hfill
- \parbox{\@headwidth}{\centering
- \strut\scrplain@odd@middle@head\strut}%
- \hfill
- \llap{\parbox{\@headwidth}{\raggedleft
- \strut\scrplain@odd@right@head\strut}}}%
- {%
- \rlap{\parbox{\@headwidth}{\raggedright
- \strut\scrplain@odd@left@head\strut}}%
- \hfill
- \parbox{\@headwidth}{\centering
- \strut\scrplain@odd@middle@head\strut}%
- \hfill
- \llap{\parbox{\@headwidth}{\raggedleft
- \strut\scrplain@odd@right@head\strut}}}%
- (\scrplain@headbelow@linelength,\scr@headbelow@linethickness)
-}{%
- (\scrplain@footabove@linelength,\scr@footabove@linethickness)
- {%
- \rlap{\parbox{\@footwidth}{\raggedright
- \strut\scrplain@even@left@foot\strut}}%
- \hfill
- \parbox{\@footwidth}{\centering
- \strut\scrplain@even@middle@foot\strut}%
- \hfill
- \llap{\parbox{\@footwidth}{\raggedleft
- \strut\scrplain@even@right@foot\strut}}}%
- {%
- \rlap{\parbox{\@footwidth}{\raggedright
- \strut\scrplain@odd@left@foot\strut}}%
- \hfill
- \parbox{\@footwidth}{\centering
- \strut\scrplain@odd@middle@foot\strut}%
- \hfill
- \llap{\parbox{\@footwidth}{\raggedleft
- \strut\scrplain@odd@right@foot\strut}}}%
- {%
- \rlap{\parbox{\@footwidth}{\raggedright
- \strut\scrplain@odd@left@foot\strut}}%
- \hfill
- \parbox{\@footwidth}{\centering
- \strut\scrplain@odd@middle@foot\strut}%
- \hfill
- \llap{\parbox{\@footwidth}{\raggedleft
- \strut\scrplain@odd@right@foot\strut}}}%
- (\scrplain@footbelow@linelength,\scr@footbelow@linethickness)
-}
-\newcommand*{\scrplain@even@left@head}{}
-\newcommand*{\scrplain@even@middle@head}{}
-\newcommand*{\scrplain@even@right@head}{}
-\newcommand*{\scrplain@odd@left@head}{}
-\newcommand*{\scrplain@odd@middle@head}{}
-\newcommand*{\scrplain@odd@right@head}{}
-\newcommand*{\scrplain@even@left@foot}{}
-\newcommand*{\scrplain@even@middle@foot}{}
-\newcommand*{\scrplain@even@right@foot}{}
-\newcommand*{\scrplain@odd@left@foot}{}
-\newcommand*{\scrplain@odd@middle@foot}{}
-\newcommand*{\scrplain@odd@right@foot}{}
-% \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}
-% \begin{macro}{\ps@scrheadings}
-% \changes{v2.0}{2001/04/20}{New}
-% \changes{v2.0a}{2001/04/24}{\cs{strut} inserted}
-% \changes{v2.0f}{2001/06/23}{\cs{strut} inserted}
-% \begin{macro}{\scrheadings@even@left@head}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scrheadings@even@middle@head}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scrheadings@even@right@head}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scrheadings@odd@left@head}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scrheadings@odd@middle@head}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scrheadings@odd@right@head}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scrheadings@even@left@foot}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scrheadings@even@middle@foot}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scrheadings@even@right@foot}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scrheadings@odd@left@foot}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scrheadings@odd@middle@foot}
-% \changes{v2.0}{2001/04/20}{New}
-% \begin{macro}{\scrheadings@odd@right@foot}
-% \changes{v2.0}{2001/04/20}{New}
-% We also define define a new headings one. It sould be variable and
-% so we use macros to define the parts. But we need an \emph{also
-% action}, so we first define a inner pagestyle and then use this at a
-% outer one (definition is done in reverse order):
-% \begin{macrocode}
-\newcommand*{\ps@scrheadings}{\let\ps@plain\ps@scrplain\ps@@scrheadings}
-\newpagestyle{@scrheadings}
-{%
- {%
- \rlap{\parbox{\@headwidth}{\raggedright
- \strut\scrheadings@even@left@head\strut}}%
- \hfill
- \parbox{\@headwidth}{\centering
- \strut\scrheadings@even@middle@head\strut}%
- \hfill
- \llap{\parbox{\@headwidth}{\raggedleft%
- \strut\scrheadings@even@right@head\strut}}}%
- {%
- \rlap{\parbox{\@headwidth}{\raggedright
- \strut\scrheadings@odd@left@head\strut}}%
- \hfill
- \parbox{\@headwidth}{\centering
- \strut\scrheadings@odd@middle@head\strut}%
- \hfill
- \llap{\parbox{\@headwidth}{\raggedleft%
- \strut\scrheadings@odd@right@head\strut}}}%
- {%
- \rlap{\parbox{\@headwidth}{\raggedright
- \strut\scrheadings@odd@left@head\strut}}%
- \hfill
- \parbox{\@headwidth}{\centering
- \strut\scrheadings@odd@middle@head\strut}%
- \hfill
- \llap{\parbox{\@headwidth}{\raggedleft
- \strut\scrheadings@odd@right@head\strut}}}}%
-{%
- {%
- \rlap{\parbox{\@footwidth}{\raggedright
- \strut\scrheadings@even@left@foot\strut}}%
- \hfill
- \parbox{\@footwidth}{\centering
- \strut\scrheadings@even@middle@foot\strut}%
- \hfill
- \llap{\parbox{\@footwidth}{\raggedleft
- \strut\scrheadings@even@right@foot\strut}}}%
- {%
- \rlap{\parbox{\@footwidth}{\raggedright
- \strut\scrheadings@odd@left@foot\strut}}%
- \hfill
- \parbox{\@footwidth}{\centering
- \strut\scrheadings@odd@middle@foot\strut}%
- \hfill
- \llap{\parbox{\@footwidth}{\raggedleft
- \strut\scrheadings@odd@right@foot\strut}}}%
- {%
- \rlap{\parbox{\@footwidth}{\raggedright
- \strut\scrheadings@odd@left@foot\strut}}%
- \hfill
- \parbox{\@footwidth}{\centering
- \strut\scrheadings@odd@middle@foot\strut}%
- \hfill
- \llap{\parbox{\@footwidth}{\raggedleft
- \strut\scrheadings@odd@right@foot\strut}}%
- }%
-}
-\newcommand*{\scrheadings@even@left@head}{}
-\newcommand*{\scrheadings@even@middle@head}{}
-\newcommand*{\scrheadings@even@right@head}{}
-\newcommand*{\scrheadings@odd@left@head}{}
-\newcommand*{\scrheadings@odd@middle@head}{}
-\newcommand*{\scrheadings@odd@right@head}{}
-\newcommand*{\scrheadings@even@left@foot}{}
-\newcommand*{\scrheadings@even@middle@foot}{}
-\newcommand*{\scrheadings@even@right@foot}{}
-\newcommand*{\scrheadings@odd@left@foot}{}
-\newcommand*{\scrheadings@odd@middle@foot}{}
-\newcommand*{\scrheadings@odd@right@foot}{}
-% \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}
-%
-%
-% \begin{macro}{\ihead}
-% \changes{v2.0}{2001/04/20}{New}
-% \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by
-% \cs{kernel@ifnextchar}}%^^A
-% \begin{macro}{\ohead}
-% \changes{v2.0}{2001/04/20}{New}
-% \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by
-% \cs{kernel@ifnextchar}}%^^A
-% \begin{macro}{\chead}
-% \changes{v2.0}{2001/04/20}{New}
-% \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by
-% \cs{kernel@ifnextchar}}%^^A
-% \begin{macro}{\lehead}
-% \changes{v2.0}{2001/04/20}{New}
-% \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by
-% \cs{kernel@ifnextchar}}%^^A
-% \begin{macro}{\lohead}
-% \changes{v2.0}{2001/04/20}{New}
-% \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by
-% \cs{kernel@ifnextchar}}%^^A
-% \begin{macro}{\rehead}
-% \changes{v2.0}{2001/04/20}{New}
-% \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by
-% \cs{kernel@ifnextchar}}%^^A
-% \begin{macro}{\rohead}
-% \changes{v2.0}{2001/04/20}{New}
-% \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by
-% \cs{kernel@ifnextchar}}%^^A
-% \begin{macro}{\cehead}
-% \changes{v2.0}{2001/04/20}{New}
-% \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by
-% \cs{kernel@ifnextchar}}%^^A
-% \begin{macro}{\cohead}
-% \changes{v2.0}{2001/04/20}{New}
-% \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by
-% \cs{kernel@ifnextchar}}%^^A
-% \begin{macro}{\ifoot}
-% \changes{v2.0}{2001/04/20}{New}
-% \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by
-% \cs{kernel@ifnextchar}}%^^A
-% \begin{macro}{\ofoot}
-% \changes{v2.0}{2001/04/20}{New}
-% \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by
-% \cs{kernel@ifnextchar}}%^^A
-% \begin{macro}{\cfoot}
-% \changes{v2.0}{2001/04/20}{New}
-% \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by
-% \cs{kernel@ifnextchar}}%^^A
-% \begin{macro}{\lefoot}
-% \changes{v2.0}{2001/04/20}{New}
-% \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by
-% \cs{kernel@ifnextchar}}%^^A
-% \begin{macro}{\lofoot}
-% \changes{v2.0}{2001/04/20}{New}
-% \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by
-% \cs{kernel@ifnextchar}}%^^A
-% \begin{macro}{\refoot}
-% \changes{v2.0}{2001/04/20}{New}
-% \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by
-% \cs{kernel@ifnextchar}}%^^A
-% \begin{macro}{\rofoot}
-% \changes{v2.0}{2001/04/20}{New}
-% \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by
-% \cs{kernel@ifnextchar}}%^^A
-% \begin{macro}{\cefoot}
-% \changes{v2.0}{2001/04/20}{New}
-% \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by
-% \cs{kernel@ifnextchar}}%^^A
-% \begin{macro}{\cofoot}
-% \changes{v2.0}{2001/04/20}{New}
-% \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by
-% \cs{kernel@ifnextchar}}%^^A
-% We also need macros to define the contents of the three part head
-% and foot. Each macro defines one of the part of head or foot of the
-% scrheadings pagestyle and optional of the scrplain pagestyle.
-% \begin{macrocode}
-\newcommand{\ihead}{\kernel@ifnextchar[{\@@lhead}{\@lhead}}
-\newcommand{\@lhead}[1]{\@rehead{#1}\@lohead{#1}}
-\newcommand{\@@lhead}[2][]{\@@rehead[{#1}]{#2}\@@lohead[{#1}]{#2}}
-\newcommand{\ohead}{\kernel@ifnextchar[{\@@rhead}{\@rhead}}
-\newcommand{\@rhead}[1]{\@lehead{#1}\@rohead{#1}}
-\newcommand{\@@rhead}[2][]{\@@lehead[{#1}]{#2}\@@rohead[{#1}]{#2}}
-\newcommand{\chead}{\kernel@ifnextchar[{\@@chead}{\@chead}}
-\newcommand{\@chead}[1]{\@cehead{#1}\@cohead{#1}}
-\newcommand{\@@chead}[2][]{\@@cehead[{#1}]{#2}\@@cohead[{#1}]{#2}}
-\newcommand{\lehead}{\kernel@ifnextchar[{\@@lehead}{\@lehead}}
-\newcommand{\@lehead}[1]{\renewcommand*{\scrheadings@even@left@head}{#1}}
-\newcommand{\@@lehead}[2][]{%
- \renewcommand*{\scrplain@even@left@head}{#1}%
- \renewcommand*{\scrheadings@even@left@head}{#2}}
-\newcommand{\lohead}{\kernel@ifnextchar[{\@@lohead}{\@lohead}}
-\newcommand{\@lohead}[1]{\renewcommand*{\scrheadings@odd@left@head}{#1}}
-\newcommand{\@@lohead}[2][]{%
- \renewcommand*{\scrplain@odd@left@head}{#1}%
- \renewcommand*{\scrheadings@odd@left@head}{#2}}
-\newcommand{\rehead}{\kernel@ifnextchar[{\@@rehead}{\@rehead}}
-\newcommand{\@rehead}[1]{\renewcommand*{\scrheadings@even@right@head}{#1}}
-\newcommand{\@@rehead}[2][]{%
- \renewcommand*{\scrplain@even@right@head}{#1}%
- \renewcommand*{\scrheadings@even@right@head}{#2}}
-\newcommand{\rohead}{\kernel@ifnextchar[{\@@rohead}{\@rohead}}
-\newcommand{\@rohead}[1]{\renewcommand*{\scrheadings@odd@right@head}{#1}}
-\newcommand{\@@rohead}[2][]{%
- \renewcommand*{\scrplain@odd@right@head}{#1}%
- \renewcommand*{\scrheadings@odd@right@head}{#2}}
-\newcommand{\cehead}{\kernel@ifnextchar[{\@@cehead}{\@cehead}}
-\newcommand{\@cehead}[1]{\renewcommand*{\scrheadings@even@middle@head}{#1}}
-\newcommand{\@@cehead}[2][]{%
- \renewcommand*{\scrplain@even@middle@head}{#1}%
- \renewcommand*{\scrheadings@even@middle@head}{#2}}
-\newcommand{\cohead}{\kernel@ifnextchar[{\@@cohead}{\@cohead}}
-\newcommand{\@cohead}[1]{\renewcommand*{\scrheadings@odd@middle@head}{#1}}
-\newcommand{\@@cohead}[2][]{%
- \renewcommand*{\scrplain@odd@middle@head}{#1}%
- \renewcommand*{\scrheadings@odd@middle@head}{#2}}
-\newcommand{\ifoot}{\kernel@ifnextchar[{\@@lfoot}{\@lfoot}}
-\newcommand{\@lfoot}[1]{\@refoot{#1}\@lofoot{#1}}
-\newcommand{\@@lfoot}[2][]{\@@refoot[{#1}]{#2}\@@lofoot[{#1}]{#2}}
-\newcommand{\ofoot}{\kernel@ifnextchar[{\@@rfoot}{\@rfoot}}
-\newcommand{\@rfoot}[1]{\@lefoot{#1}\@rofoot{#1}}
-\newcommand{\@@rfoot}[2][]{\@@lefoot[{#1}]{#2}\@@rofoot[{#1}]{#2}}
-\newcommand{\cfoot}{\kernel@ifnextchar[{\@@cfoot}{\@cfoot}}
-\newcommand{\@cfoot}[1]{\@cefoot{#1}\@cofoot{#1}}
-\newcommand{\@@cfoot}[2][]{\@@cefoot[{#1}]{#2}\@@cofoot[{#1}]{#2}}
-\newcommand{\lefoot}{\kernel@ifnextchar[{\@@lefoot}{\@lefoot}}
-\newcommand{\@lefoot}[1]{\renewcommand*{\scrheadings@even@left@foot}{#1}}
-\newcommand{\@@lefoot}[2][]{%
- \renewcommand*{\scrplain@even@left@foot}{#1}%
- \renewcommand*{\scrheadings@even@left@foot}{#2}}
-\newcommand{\lofoot}{\kernel@ifnextchar[{\@@lofoot}{\@lofoot}}
-\newcommand{\@lofoot}[1]{\renewcommand*{\scrheadings@odd@left@foot}{#1}}
-\newcommand{\@@lofoot}[2][]{%
- \renewcommand*{\scrplain@odd@left@foot}{#1}%
- \renewcommand*{\scrheadings@odd@left@foot}{#2}}
-\newcommand{\refoot}{\kernel@ifnextchar[{\@@refoot}{\@refoot}}
-\newcommand{\@refoot}[1]{\renewcommand*{\scrheadings@even@right@foot}{#1}}
-\newcommand{\@@refoot}[2][]{%
- \renewcommand*{\scrplain@even@right@foot}{#1}%
- \renewcommand*{\scrheadings@even@right@foot}{#2}}
-\newcommand{\rofoot}{\kernel@ifnextchar[{\@@rofoot}{\@rofoot}}
-\newcommand{\@rofoot}[1]{\renewcommand*{\scrheadings@odd@right@foot}{#1}}
-\newcommand{\@@rofoot}[2][]{%
- \renewcommand*{\scrplain@odd@right@foot}{#1}%
- \renewcommand*{\scrheadings@odd@right@foot}{#2}}
-\newcommand{\cefoot}{\kernel@ifnextchar[{\@@cefoot}{\@cefoot}}
-\newcommand{\@cefoot}[1]{\renewcommand*{\scrheadings@even@middle@foot}{#1}}
-\newcommand{\@@cefoot}[2][]{%
- \renewcommand*{\scrplain@even@middle@foot}{#1}%
- \renewcommand*{\scrheadings@even@middle@foot}{#2}}
-\newcommand{\cofoot}{\kernel@ifnextchar[{\@@cofoot}{\@cofoot}}
-\newcommand{\@cofoot}[1]{\renewcommand*{\scrheadings@odd@middle@foot}{#1}}
-\newcommand{\@@cofoot}[2][]{%
- \renewcommand*{\scrplain@odd@middle@foot}{#1}%
- \renewcommand*{\scrheadings@odd@middle@foot}{#2}}
-% \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{macro}
-% \end{macro}
-% \end{macro}
-%
-% \begin{macro}{\clearscrheadings}
-% \changes{v2.0j}{2001/08/18}{New}
-% \begin{macro}{\clearscrheadfoot}
-% \changes{v2.0j}{2001/08/18}{New}
-% \begin{macro}{\clearscrpain}
-% \changes{v2.0j}{2001/08/18}{New}
-% Maybe you want to clear the currently defined head and foot. First
-% let's clear only scrheadings pagestyle but not scrplain pagestyle.
-% We do this simply using the already known command:
-% \begin{macrocode}
-\newcommand*{\clearscrheadings}{%
- \ihead{}\chead{}\ohead{}\ifoot{}\cfoot{}\ofoot{}}
-% \end{macrocode}
-% We can do almost the same to clear scrheadings pagestyle and
-% scrplain pagestyle together:
-% \begin{macrocode}
-\newcommand*{\clearscrheadfoot}{%
- \ihead[]{}\chead[]{}\ohead[]{}\ifoot[]{}\cfoot[]{}\ofoot[]{}}
-% \end{macrocode}
-% But, for only clearing the scrplain pagestyle, we have to do the
-% redefinition directly:
-% \begin{macrocode}
-\newcommand*{\clearscrplain}{%
- \renewcommand*{\scrplain@even@left@head}{}%
- \renewcommand*{\scrplain@even@middle@head}{}%
- \renewcommand*{\scrplain@even@right@head}{}%
- \renewcommand*{\scrplain@odd@left@head}{}%
- \renewcommand*{\scrplain@odd@middle@head}{}%
- \renewcommand*{\scrplain@odd@right@head}{}%
- \renewcommand*{\scrplain@even@left@foot}{}%
- \renewcommand*{\scrplain@even@middle@foot}{}%
- \renewcommand*{\scrplain@even@right@foot}{}%
- \renewcommand*{\scrplain@odd@left@foot}{}%
- \renewcommand*{\scrplain@odd@middle@foot}{}%
- \renewcommand*{\scrplain@odd@right@foot}{}%
-}
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-%
-%
-% Let's do the default setting:
-% \changes{v2.0m}{2002/02/05}{Active support for new letter class
-% \texttt{scrlttr2}}%^^A
-% \changes{v3.12}{2013/12/14}{fix \cs{rohead} if page number left at head}%^^A
-% \changes{v3.28}{2019/11/23}{\cs{PackageErrorNoLine} durch \cs{PackageError}
-% ersetzt}%^^A
-% \begin{macrocode}
-\def\@tempa{koma}\ifx\scrheadings@style\@tempa
- \@ifclassloaded{scrlttr2}{%
- \ifcase\@pageat
- \lehead[\pagemark]{\pagemark}\lohead[\pagemark]{\pagemark}%
- \chead{\rightmark}%
- \rehead{\leftmark}\rohead{\leftmark}%
- \or
- \lehead{\leftmark}\lohead{\leftmark}%
- \chead[\pagemark]{\pagemark}%
- \rehead{\rightmark}\rohead{\rightmark}%
- \or
- \lehead{\leftmark}\lohead{\leftmark}%
- \chead{\rightmark}%
- \rehead[\pagemark]{\pagemark}\rohead[\pagemark]{\pagemark}%
- \or
- \lehead{\leftmark}\lohead{\leftmark}%
- \rehead{\rightmark}\rohead{\rightmark}%
- \lefoot[\pagemark]{\pagemark}\lofoot[\pagemark]{\pagemark}%
- \or
- \lehead{\leftmark}\lohead{\leftmark}%
- \rehead{\rightmark}\rohead{\rightmark}%
- \cfoot[\pagemark]{\pagemark}%
- \or
- \lehead{\leftmark}\lohead{\leftmark}%
- \rehead{\rightmark}\rohead{\rightmark}%
- \refoot[\pagemark]{\pagemark}\rofoot[\pagemark]{\pagemark}%
- \fi
- \let\ps@save@myheadings=\ps@save@headings
- }{%
- \ohead{\if@twoside\headmark\fi}%
- \chead{\if@twoside\else\headmark\fi}%
- \cfoot[\if@twoside\else\pagemark\fi]{\if@twoside\else\pagemark\fi}%
- \ofoot[\if@twoside\pagemark\fi]{\if@twoside\pagemark\fi}%
- }%
-\else\def\@tempa{standard}\ifx\scrheadings@style\@tempa
- \ihead{\headmark}
- \ohead{\pagemark}
- \cfoot[\pagemark]{}
- \else\PackageError{scrpage2}{unknown scrheadings style}%
- {Somehow \string\scrheadings@style was
- defined\MessageBreak
- as ``\scrheadings@style''.\MessageBreak
- scrpage2 doesn't know what to do.
- If you'll continue, pagestyle
- ``scrheadings''\MessageBreak
- will be predefined empty.}
-\fi\fi
-\begingroup\expandafter\expandafter\expandafter\endgroup\expandafter
-\ifx\csname chaptermark\endcsname\relax
- \begingroup\expandafter\expandafter\expandafter\endgroup\expandafter
- \ifx\csname sectionmark\endcsname\relax
- \ifx\@mkboth\markboth\@automarktrue\fi
- \else
-% \end{macrocode}
-% \changes{v2.5a}{2012/11/02}{\cs{@gobble} is long, but \cs{sectionmark} and
-% \cs{chaptermark} may be short}
-% \begin{macrocode}
- \ifx\sectionmark\@gobble\else
- \begingroup
- \def\@gobble#1{}\ifx\sectionmark\@gobble\else
- \aftergroup\@automarktrue
- \fi
- \endgroup
- \fi
- \fi
-\else
- \ifx\chaptermark\@gobble\else
- \begingroup
- \def\@gobble#1{}\ifx\chaptermark\@gobble\else
- \aftergroup\@automarktrue
- \fi
- \endgroup
- \fi
-\fi
-% \end{macrocode}
-%
-%
-% \subsection{Configurationfile}
-% Not last and not least we include the local configuration-file
-% \texttt{scrpage.cfg}, if it exists.
-% \begin{macrocode}
-\InputIfFileExists{scrpage.cfg}
- {\typeout{*************************************^^J%
- * Local config file scrpage.cfg used^^J%
- *************************************}}
- {}
-% \end{macrocode}
-%
-%
-% \subsection{Some checks}
-% \changes{v2.0}{2001/04/20}{\cs{headheight}-check}
-% Last but not least we do some checks at version 2. Some means one at
-% the moment. And the one is a check, if the \cs{headheight} should be
-% increased.
-% \begin{macrocode}
-\AtBeginDocument{%
- \ifdim\headheight=12pt
- \PackageWarningNoLine{scrpage2}%
- {seems you are using a constant headheight.\MessageBreak
- If you get overfull \string\vbox\space warnings at almost every%
- \MessageBreak
- page, you should increase headheight e.g. writing\MessageBreak
- \space\string\setlength{\string\headheight}{%
- 1.1\string\baselineskip}\MessageBreak
- into the preamble of your document.\MessageBreak
- A better solution would be to use typearea package}%
- \else\ifdim\headheight<1.07\baselineskip
- \PackageWarningNoLine{scrpage2}%
- {seems you are using a very small headheight.\MessageBreak
- If you get overfull \string\vbox\space warnings at almost every%
- \MessageBreak
- page, you should increase headheight e.g. writing\MessageBreak
- \space\string\setlength{\string\headheight}{%
- 1.1\string\baselineskip}\MessageBreak
- into the preamble of your document.\MessageBreak
- A better solution would be to use typearea package}%
- \fi\fi}
-% \end{macrocode}
-%
-% \subsection{End}
-% \begin{macrocode}
-%</scrpage>
-% \end{macrocode}
-%
-% \Finale
-%
-\endinput
-%
-% end of file `scrpage.dtx'
-%%% Local Variables:
-%%% mode: doctex
-%%% TeX-master: t
-%%% End:
diff --git a/macros/latex/contrib/koma-script/source/scrwfile.dtx b/macros/latex/contrib/koma-script/source/scrwfile.dtx
index 25fa71ad3f..26e3b0af9e 100644
--- a/macros/latex/contrib/koma-script/source/scrwfile.dtx
+++ b/macros/latex/contrib/koma-script/source/scrwfile.dtx
@@ -2,7 +2,7 @@
% \iffalse meta-comment
% ======================================================================
% scrwfile.dtx
-% Copyright (c) Markus Kohm, 2010-2019
+% Copyright (c) Markus Kohm, 2010-2020
%
% This file is part of the LaTeX2e KOMA-Script bundle.
%
@@ -29,7 +29,7 @@
% at least three times.
% ----------------------------------------------------------------------
% scrwfile.dtx
-% Copyright (c) Markus Kohm, 2010-2019
+% Copyright (c) Markus Kohm, 2010-2020
%
% Diese Datei ist Teil des LaTeX2e KOMA-Script-Pakets.
%
@@ -75,7 +75,7 @@
% Right brace \} Tilde \~}
%
% \iffalse
-%%% From File: $Id: scrwfile.dtx 3392 2019-11-19 09:37:46Z kohm $
+%%% From File: $Id: scrwfile.dtx 3453 2020-02-25 07:33:30Z kohm $
%<*dtx>
\ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi
\ProvidesFile{scrwfile.dtx}
@@ -454,6 +454,7 @@
% \cs{Ifattoclist}}%^^A
% \changes{v3.28}{2019/11/19}{\cs{iftocfeature} replaced by
% \cs{Iftocfeature}}%^^A
+% \changes{v3.30}{2020/02/25}{spurious space in warning message removed}%^^A
% Clone the entries from the second (first mandatory) argument TOC to the
% third (second mandatory) argument TOC. If the first (optional) argument was
% given, define |\listof#3name| to this and also define |\listof#3| and clone
@@ -482,7 +483,7 @@
\Ifattoclist{#3}{%
\PackageWarning{scrwfile}{`#3' already under control of
tocbasic.\MessageBreak
- Nevertheless features will be set
+ Nevertheless features will be set%
}%
}{%
\addtotoclist[TOCclone]{#3}%
diff --git a/macros/latex/contrib/koma-script/source/tocbasic.dtx b/macros/latex/contrib/koma-script/source/tocbasic.dtx
index 4f42a82726..8f25f2cd75 100644
--- a/macros/latex/contrib/koma-script/source/tocbasic.dtx
+++ b/macros/latex/contrib/koma-script/source/tocbasic.dtx
@@ -2,7 +2,7 @@
% \iffalse meta-comment
% ======================================================================
% tocbasic.dtx
-% Copyright (c) Markus Kohm, 2008-2019
+% Copyright (c) Markus Kohm, 2008-2020
%
% This file is part of the LaTeX2e KOMA-Script bundle.
%
@@ -20,7 +20,7 @@
% This work consists of all files listed in manifest.txt.
% ----------------------------------------------------------------------
% tocbasic.dtx
-% Copyright (c) Markus Kohm, 2008-2019
+% Copyright (c) Markus Kohm, 2008-2020
%
% Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz,
% Version 1.3c, verteilt und/oder veraendert werden.
@@ -55,7 +55,7 @@
% Right brace \} Tilde \~}
%
% \iffalse
-%%% From File: $Id: tocbasic.dtx 3401 2019-11-22 07:30:48Z kohm $
+%%% From File: $Id: tocbasic.dtx 3453 2020-02-25 07:33:30Z kohm $
%<identify>%%% (run: identify)
%<prepare>%%% (run: prepare)
%<option>%%% (run: option)
@@ -66,7 +66,7 @@
\ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi
\begingroup
\def\filedate$#1: #2-#3-#4 #5${\gdef\filedate{#2/#3/#4}}
- \filedate$Date: 2019-11-22 08:30:48 +0100 (Fri, 22 Nov 2019) $
+ \filedate$Date: 2020-02-25 08:33:30 +0100 (Tue, 25 Feb 2020) $
\def\filerevision$#1: #2 ${\gdef\filerevision{r#2}}
\filerevision$Revision: 1962 $
\endgroup
@@ -1649,6 +1649,7 @@
% \begin{macro}{\tb@nt@level}
% \changes{v3.20}{2015/12/16}{undefined}%^^A
% \changes{v3.20}{2015/12/16}{local valid only}%^^A
+% \changes{v3.30}{2020/02/25}{spurious space in warning message removed}%^^A
% Each entry to a TOC/list of has a numeric level. You may set up your own
% level.
% \begin{macrocode}
@@ -1656,7 +1657,7 @@
\PackageWarning{tocbasic}{%
deprecated option `level'.\MessageBreak
You should replace option `level' by option\MessageBreak
- `tocentrylevel'
+ `tocentrylevel'%
}%
\l@addto@macro\tb@nt@tocstyle@options{,level={##1}}%
\FamilyKeyStateProcessed