summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/koma-script/typearea.sty
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/koma-script/typearea.sty')
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/typearea.sty1234
1 files changed, 636 insertions, 598 deletions
diff --git a/Master/texmf-dist/tex/latex/koma-script/typearea.sty b/Master/texmf-dist/tex/latex/koma-script/typearea.sty
index 05e7d17c530..f4640a772bf 100644
--- a/Master/texmf-dist/tex/latex/koma-script/typearea.sty
+++ b/Master/texmf-dist/tex/latex/koma-script/typearea.sty
@@ -9,13 +9,14 @@
%% scrkernel-basics.dtx (with options: `load')
%% scrkernel-compatibility.dtx (with options: `package,typearea,init')
%% scrkernel-typearea.dtx (with options: `package,typearea,init')
-%% scrkernel-typearea.dtx (with options: `package,typearea,option')
%% scrkernel-compatibility.dtx (with options: `package,typearea,option')
-%% scrkernel-typearea.dtx (with options: `package,typearea,body')
+%% scrkernel-typearea.dtx (with options: `package,typearea,options')
%% scrkernel-compatibility.dtx (with options: `package,typearea,body')
+%% scrkernel-typearea.dtx (with options: `package,typearea,body')
+%% scrkernel-typearea.dtx (with options: `package,typearea,final')
%% scrlogo.dtx (with options: `logo')
%%
-%% Copyright (c) 1994-2016 Markus Kohm [komascript at gmx info]
+%% Copyright (c) 1994-2017 Markus Kohm [komascript at gmx info]
%%
%% This file was generated from file(s) of the KOMA-Script bundle.
%% ---------------------------------------------------------------
@@ -45,9 +46,9 @@
%% LaTeX 2.09 Script family created by Frank Neukam 1993 and the LaTeX2e
%% standard classes created by The LaTeX3 Project 1994-1996. You may
%% find a complete unmodified copy of LaTeX2e at
-%% <http://www.ctan.org/pub/tex-archive/macros/latex/base/>.
+%% <http://mirror.ctan.org/tex-archive/macros/latex/base/>.
%%
-%%% From File: $Id: scrkernel-version.dtx 2592 2017-02-16 16:56:10Z kohm $
+%%% From File: $Id: scrkernel-version.dtx 2640 2017-05-08 09:36:55Z kohm $
\begingroup
\catcode`\@11\relax
\ifx\KOMAScriptVersion\undefined
@@ -69,19 +70,24 @@
\fi
}
\fi
- \@CheckKOMAScriptVersion{2017/04/13 v3.23 KOMA-Script}%
+ \@CheckKOMAScriptVersion{2017/09/07 v3.24 KOMA-Script}%
\endgroup
\providecommand*{\scr@pkgextension}{\@pkgextension}
\AtBeginDocument{%
\let\scr@pkgextension\@pkgextension
}
-%%% From File: $Id: scrkernel-typearea.dtx 2617 2017-04-03 13:56:55Z kohm $ (identify)
+%%% From File: $Id: scrkernel-typearea.dtx 2661 2017-07-24 19:45:16Z kohm $
+%%% (run: identify)
\NeedsTeXFormat{LaTeX2e}[1995/06/01]
\ProvidesPackage{typearea}[%
- 2017/04/13 v3.23 KOMA-Script
- package (type area)]
+ 2017/09/07 v3.24 KOMA-Script
+ package
+ (type area)]
+%%% From File: $Id: scrkernel-basics.dtx 2640 2017-05-08 09:36:55Z kohm $
+%%% (run: load)
\RequirePackage{scrkbase}[\KOMAScriptVersion]
-%%% From File: $Id: scrkernel-compatibility.dtx 2596 2017-02-22 07:45:45Z kohm $ (init)
+%%% From File: $Id: scrkernel-compatibility.dtx 2640 2017-05-08 09:36:55Z kohm $
+%%% (run: init)
\providecommand*
{\scr@compatibility}{\scr@v@last}
\newcommand*{\scr@ta@compatibility}{\scr@compatibility}
@@ -149,8 +155,69 @@
\@namedef{scr@v@3.21}{15}
\@namedef{scr@v@3.22}{16}
\@namedef{scr@v@3.23}{16}
+\@namedef{scr@v@3.24}{16}
\@namedef{scr@v@last}{16}
-%%% From File: $Id: scrkernel-typearea.dtx 2617 2017-04-03 13:56:55Z kohm $ (init)
+%%% From File: $Id: scrkernel-typearea.dtx 2661 2017-07-24 19:45:16Z kohm $
+%%% (run: init)
+\providecommand\ta@divlist{{}{}{}{}{}{}{}{}{}{8}{10}{12}}
+\providecommand\ta@divlistelse{1}
+%%% From File: $Id: scrkernel-compatibility.dtx 2640 2017-05-08 09:36:55Z kohm $
+%%% (run: option)
+\KOMA@key{version}[last]{%
+ \scr@ifundefinedorrelax{scr@v@#1}{%
+ \def\scr@compatibility{0}%
+ \PackageWarningNoLine{%
+ typearea%
+ }{%
+ You have set option `version' to value `#1', but\MessageBreak
+ this value of version is not supported.\MessageBreak
+ Because of this, version was set to `first'%
+ }%
+ \FamilyKeyStateProcessed
+ \KOMA@kav@replacevalue{.%
+ typearea.\scr@pkgextension
+ }{version}{first}%
+ }{%
+ \PackageInfoNoLine{%
+ typearea%
+ }{%
+ Switching compatibility level to `#1'%
+ }%
+ \edef\scr@ta@compatibility{\@nameuse{scr@v@#1}}%
+ \FamilyKeyStateProcessed
+ \KOMA@kav@xreplacevalue{.%
+ typearea.\scr@pkgextension
+ }{version}{#1}%
+ }%
+}
+\AtEndOfPackage{%
+ \KOMA@key{version}[]{%
+ \PackageError{%
+ typearea%
+ }{%
+ Option `version' too late%
+ }{%
+ Option `version' may be set only while loading the
+ package.\MessageBreak
+ But you've tried to set it up later.%
+ }%
+ \FamilyKeyStateProcessed
+ }%
+}
+\newcommand*{\scr@ta@v@is@lt}[1]{%
+ \scr@ta@compatibility<\@nameuse{scr@v@#1}
+}
+\newcommand*{\scr@ta@v@is@gt}[1]{%
+ \scr@ta@compatibility>\@nameuse{scr@v@#1}
+}
+\newcommand*{\scr@ta@v@is@le}[1]{%
+ \numexpr\scr@ta@compatibility-\@ne <\@nameuse{scr@v@#1}
+}
+\newcommand*{\scr@ta@v@is@ge}[1]{%
+ \numexpr\scr@ta@compatibility+\@ne >\@nameuse{scr@v@#1}
+}
+%%% From File: $Id: scrkernel-typearea.dtx 2661 2017-07-24 19:45:16Z kohm $
+%%% (run: options)
\providecommand*{\PaperNameToSize}[2][warning]{%
\ifstr{#2}{letter}{%
\setlength\paperheight{11in}%
@@ -259,268 +326,172 @@
}%
}
\ProvideUnknownPaperSizeError{ignore}{}
-%%% From File: $Id: scrkernel-typearea.dtx 2617 2017-04-03 13:56:55Z kohm $ (option)
-\newcommand*\SetDIVList[1]{\def\ta@divlist{{}{}{}{}{}{}{}{}{}#1}}
-\newcommand*\SetXDIVList[1]{\def\ta@divlist{#1}}
-\newlength{\ta@bcor}
-\newcount\ta@div
-\newcommand*{\@BCOR}{\expandafter\@@BCOR\CurrentOption BCORBCOR\@@BCOR}
-\newcommand*{\@@BCOR}{}
-\def\@@BCOR #1BCOR#2BCOR#3\@@BCOR{%
- \ifstr{#1}{}{%
- \ifstr{#3}{BCOR}{%
- \ifdimen{#2}{%
- \KOMA@UseDeprecatedOption{%
- \PackageWarningNoLine{typearea}}{BCOR#2}{BCOR=#2}%
- }{\scr@pti@nerr@r}%
- }{\scr@pti@nerr@r}%
- }{\scr@pti@nerr@r}%
-}
-\newcommand*{\@DIV}{\expandafter\@@DIV\CurrentOption DIVDIV\@@DIV}
-\newcommand*{\@@DIV}{}
-\def\@@DIV #1DIV#2DIV#3\@@DIV{%
- \edef\@tempa{#1}\ifx\@tempa\@empty
- \edef\@tempa{#3}\def\@tempb{DIV}\ifx\@tempa\@tempb
- \ifnumber{#2}{%
- \KOMA@UseDeprecatedOption{%
- \PackageWarningNoLine{typearea}}{DIV#2}{DIV=#2}%
- }{\scr@pti@nerr@r}%
- \else\scr@pti@nerr@r\fi
- \else\@BCOR\fi
-}
-\newcommand{\@headlines}{%
- \expandafter\@@headlines\CurrentOption headlines\@@headlines%
-}
-\newcommand*{\@@headlines}{}
-\def\@@headlines #1headlines#2\@@headlines{
- \edef\@tempa{#2}\edef\@tempb{headlines}\ifx\@tempa\@tempb
- \setlength{\@tempdima}{#1\baselineskip}%
- \def\ta@hh{#1\baselineskip}%
- \else\@DIV\fi
-}
-\newcommand\isopaper[2][a]{%
- \ISO@PaperNameToSize[typearea]#1#2\@nil
- \expandafter\ifnum\scr@ta@v@is@ge{3.22}\relax
- \scr@setpaperorientation
- \else
- \if@landscape\scr@switchpapersizes\fi
- \fi
-}
-\ProvideUnknownPaperSizeError{typearea}{%
- \PackageError{typearea}{%
- Unknown ISO/DIN-papersize-letter #1%
+\KOMA@DeclareStandardOption[typearea]{a4paper}{paper=a4}
+\KOMA@DeclareStandardOption[typearea]{a5paper}{paper=a5}
+\KOMA@DeclareStandardOption[typearea]{b5paper}{paper=b5}
+\KOMA@DeclareStandardOption[typearea]{letterpaper}{paper=letter}
+\KOMA@DeclareStandardOption[typearea]{legalpaper}{paper=legal}
+\KOMA@DeclareStandardOption[typearea]{executivepaper}{paper=executive}
+\KOMA@DeclareStandardOption[typearea]{landscape}{paper=landscape}
+\KOMA@DeclareStandardOption[typearea]{portrait}{paper=portrait}
+\KOMA@key{paper}{%
+ \ifstr{#1}{seascape}{%
+ \@seascapetrue
+ \expandafter\ifnum\scr@ta@v@is@ge{3.22}\relax
+ \@landscapetrue
+ \scr@setpaperorientation
+ \else
+ \if@landscape\else\scr@switchpapersizes\@landscapetrue\fi
+ \fi
+ \FamilyKeyStateProcessed
+ \KOMA@kav@remove{.typearea.\scr@pkgextension}{paper}{landscape}%
+ \KOMA@kav@remove{.typearea.\scr@pkgextension}{paper}{portrait}%
+ \KOMA@kav@remove{.typearea.\scr@pkgextension}{paper}{seascape}%
+ \KOMA@kav@add{.typearea.\scr@pkgextension}{paper}{seascape}%
}{%
- There are only four defined paper scalings:\MessageBreak
- a = ISO/DIN-A, b = ISO/DIN-B, c = ISO/DIN-C,
- d = ISO/DIN-D\MessageBreak
- Read KOMA-Script-documentation for further information.%
- }%
- \setlength{\paperwidth}{841sp}%
- \setlength{\paperheight}{1189sp}%
-}
-\newcommand*\scr@setpaperorientation{%
- \ifdim\paperheight>\paperwidth
- \if@landscape\scr@switchpapersizes\fi
- \else
- \if@landscape\else\scr@switchpapersizes\fi
- \fi
-}
-\newcommand*\scr@switchpapersizes{%
- \@tempdima\paperwidth\paperwidth\paperheight\paperheight\@tempdima
-}
-\newcommand*{\iso@paper}[1]{\expandafter\iso@@paper#1\@nil}
-\newcommand*{\iso@@paper}{}
-\def\iso@@paper#1#2\@nil{%
- \@tempswafalse
- \if #1a\@tempswatrue
- \else\if #1A\@tempswatrue
- \else\if #1b\@tempswatrue
- \else\if #1B\@tempswatrue
- \else\if #1c\@tempswatrue
- \else\if #1C\@tempswatrue
- \else\if #1d\@tempswatrue
- \else\if #1D\@tempswatrue
- \fi\fi\fi\fi\fi\fi\fi\fi
- \if@tempswa
- \ifnumber{#2}{\isopaper[#1]{#2}}{\@tempswafalse}%
- \fi
-}
-\newcommand*{\x@paper}{%
- \expandafter\x@@paper\CurrentOption paper\x@@paper%
-}
-\newcommand*{\x@@paper}{}
-\def\x@@paper #1#2paper#3\x@@paper{%
- \ifstr{#3}{paper}{%
- \ifnumber{#2}{%
- \ifstr{#1}{a}{%
- \isopaper[a]{#2}%
+ \ifstr{#1}{landscape}{%
+ \@seascapefalse
+ \expandafter\ifnum\scr@ta@v@is@ge{3.22}\relax
+ \@landscapetrue
+ \scr@setpaperorientation
+ \else
+ \if@landscape\else\scr@switchpapersizes\@landscapetrue\fi
+ \fi
+ \FamilyKeyStateProcessed
+ \KOMA@kav@remove{.typearea.\scr@pkgextension}{paper}{landscape}%
+ \KOMA@kav@remove{.typearea.\scr@pkgextension}{paper}{portrait}%
+ \KOMA@kav@remove{.typearea.\scr@pkgextension}{paper}{seascape}%
+ \KOMA@kav@add{.typearea.\scr@pkgextension}{paper}{landscape}%
+ }{%
+ \ifstr{#1}{portrait}{%
+ \expandafter\ifnum\scr@ta@v@is@ge{3.22}\relax
+ \@landscapefalse
+ \scr@setpaperorientation
+ \else
+ \if@landscape\scr@switchpapersizes\@landscapefalse\fi
+ \fi
+ \FamilyKeyStateProcessed
+ \KOMA@kav@remove{.typearea.\scr@pkgextension}{paper}{landscape}%
+ \KOMA@kav@remove{.typearea.\scr@pkgextension}{paper}{portrait}%
+ \KOMA@kav@remove{.typearea.\scr@pkgextension}{paper}{seascape}%
+ \KOMA@kav@add{.typearea.\scr@pkgextension}{paper}{portrait}%
}{%
- \ifstr{#1}{b}{%
- \isopaper[b]{#2}%
+ \ifstr{#1}{letter}{%
+ \if@landscape
+ \setlength\paperheight{8.5in}%
+ \setlength\paperwidth {11in}%
+ \else
+ \setlength\paperheight{11in}%
+ \setlength\paperwidth {8.5in}%
+ \fi
+ \FamilyKeyStateProcessed
+ \KOMA@kav@removekey{.typearea.\scr@pkgextension}{paper}%
+ \KOMA@kav@add{.typearea.\scr@pkgextension}{paper}{letter}%
+ \KOMA@kav@xadd{.typearea.\scr@pkgextension}{paper}{%
+ \if@seascape seascape\else
+ \if@landscape landscape\else portrait\fi\fi
+ }%
}{%
- \ifstr{#1}{c}{%
- \isopaper[c]{#2}%
+ \ifstr{#1}{legal}{%
+ \if@landscape
+ \setlength\paperheight{8.5in}%
+ \setlength\paperwidth {14in}%
+ \else
+ \setlength\paperheight{14in}%
+ \setlength\paperwidth {8.5in}%
+ \fi
+ \FamilyKeyStateProcessed
+ \KOMA@kav@removekey{.typearea.\scr@pkgextension}{paper}%
+ \KOMA@kav@add{.typearea.\scr@pkgextension}{paper}{legal}%
+ \KOMA@kav@xadd{.typearea.\scr@pkgextension}{paper}{%
+ \if@seascape seascape\else
+ \if@landscape landscape\else portrait\fi\fi
+ }%
}{%
- \ifstr{#1}{d}{%
- \isopaper[d]{#2}%
- }{\scr@pti@nerr@r}%
+ \ifstr{#1}{executive}{%
+ \if@landscape
+ \setlength\paperheight{7.25in}%
+ \setlength\paperwidth {10.5in}%
+ \else
+ \setlength\paperheight{10.5in}%
+ \setlength\paperwidth {7.25in}%
+ \fi
+ \FamilyKeyStateProcessed
+ \KOMA@kav@removekey{.typearea.\scr@pkgextension}{paper}%
+ \KOMA@kav@add{.typearea.\scr@pkgextension}{paper}{executive}%
+ \KOMA@kav@xadd{.typearea.\scr@pkgextension}{paper}{%
+ \if@seascape seascape\else
+ \if@landscape landscape\else portrait\fi\fi
+ }%
+ }{%
+ \iso@paper{#1}%
+ \if@tempswa
+ \FamilyKeyStateProcessed
+ \KOMA@kav@removekey{.typearea.\scr@pkgextension}{paper}%
+ \KOMA@kav@xadd{.typearea.\scr@pkgextension}{paper}{#1}%
+ \KOMA@kav@xadd{.typearea.\scr@pkgextension}{paper}{%
+ \if@seascape seascape\else
+ \if@landscape landscape\else portrait\fi\fi
+ }%
+ \else
+ \expandafter\maybe@pair#1::\@nil
+ \if@tempswa
+ \FamilyKeyStateProcessed
+ \KOMA@kav@removekey{.typearea.\scr@pkgextension}{paper}%
+ \expandafter\ifnum \scr@ta@v@is@lt{3.01b}\relax
+ \PackageWarningNoLine{typearea}{%
+ You may have to exchange height and width!\MessageBreak
+ Until KOMA-Script version 3.01b the semantic\MessageBreak
+ of option `paper' was `paper=height:width'\MessageBreak
+ instead of `paper=width:height'.\MessageBreak
+ I've switched back to that old interpretation\MessageBreak
+ because of the given compatiblity settings}%
+ \setlength\paperwidth{\@tempb}%
+ \setlength\paperheight{\@tempa}%
+ \else
+ \setlength\paperwidth{\@tempa}%
+ \setlength\paperheight{\@tempb}%
+ \fi
+ \expandafter\ifnum \scr@ta@v@is@lt{3.22}\relax
+ \if@landscape
+ \KOMA@kav@xadd{.typearea.\scr@pkgextension}{paper}{\@tempa:\@tempb}%
+ \else
+ \KOMA@kav@xadd{.typearea.\scr@pkgextension}{paper}{\@tempb:\@tempa}%
+ \fi
+ \else
+ \scr@setpaperorientation
+ \KOMA@kav@xadd{.typearea.\scr@pkgextension}{paper}{%
+ \the\paperwidth:\the\paperheight}%
+ \fi
+ \KOMA@kav@xadd{.typearea.\scr@pkgextension}{paper}{%
+ \if@seascape seascape\else
+ \if@landscape landscape\else portrait\fi\fi
+ }%
+ \else
+ \KOMA@unknown@keyval{paper}{#1}{%
+ `letter', `legal', `executive', `a'<nr>, `b'<nr>,
+ `c'<nr>, `d'<nr>,\MessageBreak
+ <width>`:'<height>, `landscape' and `portrait'%
+ }%
+ \fi
+ \fi
+ }%
}%
}%
}%
- }{\scr@pti@nerr@r}%
- }{%
- \@headlines
- }%
-}
-\newcommand*{\scr@pti@nerr@r}{
- \@unknownoptionerror
-}
-\KOMA@key{headlines}{%
- \begingroup
- \setlength{\@tempdima}{#1\baselineskip}%
- \endgroup
- \def\ta@hh{#1\baselineskip}%
- \FamilyKeyStateProcessed
- \KOMA@kav@replacevalue{.typearea.\scr@pkgextension}{headlines}{#1}%
- \KOMA@kav@replacevalue{.typearea.\scr@pkgextension}{headheight}{#1\baselineskip}%
-}
-\KOMA@key{footlines}{%
- \begingroup
- \setlength{\@tempdima}{#1\baselineskip}%
- \endgroup
- \def\ta@fh{#1\baselineskip}%
- \FamilyKeyStateProcessed
- \KOMA@kav@replacevalue{.typearea.\scr@pkgextension}{footlines}{#1}%
- \KOMA@kav@replacevalue{.typearea.\scr@pkgextension}{footheight}{#1\baselineskip}%
-}
-\KOMA@key{headheight}{%
- \begingroup
- \setlength{\@tempdima}{#1}%
- \endgroup
- \def\ta@hh{#1}%
- \FamilyKeyStateProcessed
- \KOMA@kav@replacevalue{.typearea.\scr@pkgextension}{headheight}{#1}%
- \KOMA@kav@removekey{.typearea.\scr@pkgextension}{headlines}%
-}
-\KOMA@key{footheight}{%
- \begingroup
- \setlength{\@tempdima}{#1}%
- \endgroup
- \def\ta@fh{#1}%
- \FamilyKeyStateProcessed
- \KOMA@kav@replacevalue{.typearea.\scr@pkgextension}{footheight}{#1}%
- \KOMA@kav@removekey{.typearea.\scr@pkgextension}{footlines}%
-}
-\newif\if@hincl\@ifundefined{if@hsl}{}{\let\if@hincl\if@hsl}
-\KOMA@ifkey{headinclude}{@hincl}
-\KOMA@DeclareDeprecatedOption[typearea]{headexclude}{headinclude=false}
-\KOMA@key{headsepline}[true]{%
- \KOMA@set@ifkey{headinclude}{@hincl}{#1}%
- \ifx\FamilyKeyState\FamilyKeyStateProcessed
- \KOMA@kav@replacebool{.typearea.\scr@pkgextension}{headinclude}{@hincl}%
- \fi
-}
-\newif\if@fincl\@ifundefined{if@fsl}{}{\let\if@fincl\if@fsl}
-\KOMA@ifkey{footinclude}{@fincl}
-\KOMA@DeclareDeprecatedOption[typearea]{footexclude}{footinclude=false}
-\KOMA@key{footsepline}[true]{%
- \KOMA@set@ifkey{footinclude}{@fincl}{#1}%
- \ifx\FamilyKeyState\FamilyKeyStateProcessed
- \KOMA@kav@replacebool{.typearea.\scr@pkgextension}{footinclude}{@fincl}%
- \fi
-}
-\KOMA@ifkey{mpinclude}{@mincl}
-\KOMA@DeclareDeprecatedOption[typearea]{mpexclude}{mpinclude=false}
-\KOMA@key{BCOR}{%
- \ifstr{#1}{current}{}{%
- \setlength{\ta@bcor}{#1}%
- }%
- \FamilyKeyStateProcessed
- \KOMA@kav@xreplacevalue{.typearea.\scr@pkgextension}{BCOR}{#1}%
-}
-\AtEndOfPackage{%
- \KOMA@key{BCOR}{\typearea[{#1}]{last}\FamilyKeyStateProcessed}%
-}
-\KOMA@key{DIV}[calc]{%
- \edef\@tempa{#1}%
- \def\@tempb{last}\ifx\@tempa\@tempb\let\@tempa=\@lastdiv\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
- \fi
- \fi
- \fi
- \fi
- \FamilyKeyStateProcessed
- \KOMA@kav@xreplacevalue{.typearea.\scr@pkgextension}{DIV}{#1}%
-}
-\AtEndOfPackage{%
- \KOMA@key{DIV}{\typearea[current]{#1}\FamilyKeyStateProcessed}%
-}
-\KOMA@DeclareDeprecatedOption[typearea]{DIVcalc}{DIV=calc}
-\KOMA@DeclareDeprecatedOption[typearea]{DIVclassic}{DIV=classic}
-\KOMA@ifkey{areasetadvanced}{@areasetadvanced}
-\newif\if@semitwoside
-\g@addto@macro\@twosidetrue\@semitwosidefalse
-\g@addto@macro\@twosidefalse\@semitwosidefalse
-\KOMA@key{twoside}[true]{%
- \if@atdocument\if@twoside
- \scr@ifundefinedorrelax{cleardoubleoddpage}{%
- \cleardoublepage
- }{%
- \cleardoubleoddpage
- }%
- \else\clearpage\fi\fi
- \ifstr{#1}{semi}{%
- \@twosidetrue
- \@semitwosidetrue
- \FamilyKeyStateProcessed
- }{%
- \def\FamilyElseValue{, `semi'}%
- \KOMA@set@ifkey{twoside}{%
- @twoside%
- }{#1}%
+ }%
}%
- \ifx\FamilyKeyState\FamilyKeyStateProcessed
- \KOMA@kav@xreplacevalue{.%
- typearea.\scr@pkgextension
- }{twoside}{#1}%
- \if@twoside
- \if@semitwoside
- \@mparswitchfalse
- \else
- \@mparswitchtrue
- \fi
- \else
- \@mparswitchfalse
- \fi%
- \csname recalctypearea\endcsname
- \fi
-}
-\KOMA@kav@xadd{.typearea.\scr@pkgextension}{twoside}{%
- \if@twoside true\else false\fi
}
-\KOMA@DeclareStandardOption%
- [typearea]%
- {oneside}{twoside=false}
-\KOMA@key{twocolumn}[true]{%
- \if@atdocument\clearpage\fi
- \KOMA@set@ifkey{twocolumn}{@twocolumn}{#1}%
- \ifx\FamilyKeyState\FamilyKeyStateProcessed
- \KOMA@kav@replacebool{.%
- typearea.\scr@pkgextension
- }{twocolumn}{@twocolumn}%
- \csname recalctypearea\endcsname
+\newif\if@seascape
+\newif\if@landscape
+\newcommand*{\maybe@pair}{}
+\def\maybe@pair#1:#2:#3\@nil{%
+ \edef\@tempa{#1}\edef\@tempb{#2}%
+ \ifx\@tempa\@empty\@tempswafalse\else
+ \ifx\@tempb\@empty\@tempswafalse\else\@tempswatrue\fi
\fi
}
-\KOMA@kav@xadd{.typearea.\scr@pkgextension}{twocolumn}{%
- \if@twocolumn true\else false\fi
-}
-\KOMA@DeclareStandardOption%
- [typearea]%
- {onecolumn}{twocolumn=false}
+\KOMA@ifkey{usegeometry}{@ta@usegeometry}
\KOMA@key{pagesize}[auto]{%
\KOMA@set@ncmdkey{pagesize}{@pagesizelast}{%
{off}{-1},{no}{-1},{false}{-1},%
@@ -623,7 +594,7 @@
}{}%
}%
}
-\newcommand{\set@pdftexpagesize}{%
+\newcommand*{\set@pdftexpagesize}{%
\scr@ifundefinedorrelax{pdfpagewidth}{%
\scr@ifundefinedorrelax{pagewidth}{}{\pagewidth=\paperwidth}%
}{\pdfpagewidth=\paperwidth}%
@@ -631,7 +602,7 @@
\scr@ifundefinedorrelax{pageheight}{}{\pageheight=\paperheight}%
}{\pdfpageheight=\paperheight}%
}
-\newcommand{\set@dvipspagesize}{%
+\newcommand*{\set@dvipspagesize}{%
\begingroup
\@tempswafalse
\scr@ifdvioutput{\@tempswatrue}{%
@@ -665,7 +636,7 @@
\endgroup
\fi
}
-\newcommand{\setnot@dvipspagesize}{%
+\newcommand*{\setnot@dvipspagesize}{%
\scr@ifdvioutput{%
\PackageWarning{%
typearea%
@@ -684,7 +655,7 @@
}%
}{}%
}
-\newcommand{\set@vtexpagesize}{%
+\newcommand*{\set@vtexpagesize}{%
\ifnotundefined{mediawith}{\mediawidth=\paperwidth}{}%
\ifnotundefined{mediaheight}{\mediaheight=\paperheight}{}%
}
@@ -707,229 +678,275 @@
\KOMA@DeclareStandardOption[typearea]{pdftex}{%
pagesize=pdftex%
}
-\KOMA@DeclareStandardOption[typearea]{a4paper}{paper=a4}
-\KOMA@DeclareStandardOption[typearea]{a5paper}{paper=a5}
-\KOMA@DeclareStandardOption[typearea]{b5paper}{paper=b5}
-\KOMA@DeclareStandardOption[typearea]{letterpaper}{paper=letter}
-\KOMA@DeclareStandardOption[typearea]{legalpaper}{paper=legal}
-\KOMA@DeclareStandardOption[typearea]{executivepaper}{paper=executive}
-\KOMA@DeclareStandardOption[typearea]{landscape}{paper=landscape}
-\KOMA@DeclareStandardOption[typearea]{portrait}{paper=portrait}
-\KOMA@key{paper}{%
- \ifstr{#1}{seascape}{%
- \@seascapetrue
- \expandafter\ifnum\scr@ta@v@is@ge{3.22}\relax
- \@landscapetrue
- \scr@setpaperorientation
- \else
- \if@landscape\else\scr@switchpapersizes\@landscapetrue\fi
- \fi
+\newif\if@semitwoside
+\g@addto@macro\@twosidetrue\@semitwosidefalse
+\g@addto@macro\@twosidefalse\@semitwosidefalse
+\KOMA@key{twoside}[true]{%
+ \if@atdocument\if@twoside
+ \scr@ifundefinedorrelax{cleardoubleoddpage}{%
+ \cleardoublepage
+ }{%
+ \cleardoubleoddpage
+ }%
+ \else\clearpage\fi\fi
+ \ifstr{#1}{semi}{%
+ \@twosidetrue
+ \@semitwosidetrue
\FamilyKeyStateProcessed
- \KOMA@kav@remove{.typearea.\scr@pkgextension}{paper}{landscape}%
- \KOMA@kav@remove{.typearea.\scr@pkgextension}{paper}{portrait}%
- \KOMA@kav@remove{.typearea.\scr@pkgextension}{paper}{seascape}%
- \KOMA@kav@add{.typearea.\scr@pkgextension}{paper}{seascape}%
}{%
- \ifstr{#1}{landscape}{%
- \@seascapefalse
- \expandafter\ifnum\scr@ta@v@is@ge{3.22}\relax
- \@landscapetrue
- \scr@setpaperorientation
+ \def\FamilyElseValue{, `semi'}%
+ \KOMA@set@ifkey{twoside}{%
+ @twoside%
+ }{#1}%
+ }%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed
+ \KOMA@kav@xreplacevalue{.%
+ typearea.\scr@pkgextension
+ }{twoside}{#1}%
+ \if@twoside
+ \if@semitwoside
+ \@mparswitchfalse
\else
- \if@landscape\else\scr@switchpapersizes\@landscapetrue\fi
+ \@mparswitchtrue
\fi
- \FamilyKeyStateProcessed
- \KOMA@kav@remove{.typearea.\scr@pkgextension}{paper}{landscape}%
- \KOMA@kav@remove{.typearea.\scr@pkgextension}{paper}{portrait}%
- \KOMA@kav@remove{.typearea.\scr@pkgextension}{paper}{seascape}%
- \KOMA@kav@add{.typearea.\scr@pkgextension}{paper}{landscape}%
- }{%
- \ifstr{#1}{portrait}{%
- \expandafter\ifnum\scr@ta@v@is@ge{3.22}\relax
- \@landscapefalse
- \scr@setpaperorientation
- \else
- \if@landscape\scr@switchpapersizes\@landscapefalse\fi
- \fi
- \FamilyKeyStateProcessed
- \KOMA@kav@remove{.typearea.\scr@pkgextension}{paper}{landscape}%
- \KOMA@kav@remove{.typearea.\scr@pkgextension}{paper}{portrait}%
- \KOMA@kav@remove{.typearea.\scr@pkgextension}{paper}{seascape}%
- \KOMA@kav@add{.typearea.\scr@pkgextension}{paper}{portrait}%
- }{%
- \ifstr{#1}{letter}{%
- \if@landscape
- \setlength\paperheight{8.5in}%
- \setlength\paperwidth {11in}%
- \else
- \setlength\paperheight{11in}%
- \setlength\paperwidth {8.5in}%
- \fi
- \FamilyKeyStateProcessed
- \KOMA@kav@removekey{.typearea.\scr@pkgextension}{paper}%
- \KOMA@kav@add{.typearea.\scr@pkgextension}{paper}{letter}%
- \KOMA@kav@xadd{.typearea.\scr@pkgextension}{paper}{%
- \if@seascape seascape\else
- \if@landscape landscape\else portrait\fi\fi
- }%
- }{%
- \ifstr{#1}{legal}{%
- \if@landscape
- \setlength\paperheight{8.5in}%
- \setlength\paperwidth {14in}%
- \else
- \setlength\paperheight{14in}%
- \setlength\paperwidth {8.5in}%
- \fi
- \FamilyKeyStateProcessed
- \KOMA@kav@removekey{.typearea.\scr@pkgextension}{paper}%
- \KOMA@kav@add{.typearea.\scr@pkgextension}{paper}{legal}%
- \KOMA@kav@xadd{.typearea.\scr@pkgextension}{paper}{%
- \if@seascape seascape\else
- \if@landscape landscape\else portrait\fi\fi
- }%
- }{%
- \ifstr{#1}{executive}{%
- \if@landscape
- \setlength\paperheight{7.25in}%
- \setlength\paperwidth {10.5in}%
- \else
- \setlength\paperheight{10.5in}%
- \setlength\paperwidth {7.25in}%
- \fi
- \FamilyKeyStateProcessed
- \KOMA@kav@removekey{.typearea.\scr@pkgextension}{paper}%
- \KOMA@kav@add{.typearea.\scr@pkgextension}{paper}{executive}%
- \KOMA@kav@xadd{.typearea.\scr@pkgextension}{paper}{%
- \if@seascape seascape\else
- \if@landscape landscape\else portrait\fi\fi
- }%
- }{%
- \iso@paper{#1}%
- \if@tempswa
- \FamilyKeyStateProcessed
- \KOMA@kav@removekey{.typearea.\scr@pkgextension}{paper}%
- \KOMA@kav@xadd{.typearea.\scr@pkgextension}{paper}{#1}%
- \KOMA@kav@xadd{.typearea.\scr@pkgextension}{paper}{%
- \if@seascape seascape\else
- \if@landscape landscape\else portrait\fi\fi
- }%
- \else
- \expandafter\maybe@pair#1::\@nil
- \if@tempswa
- \FamilyKeyStateProcessed
- \KOMA@kav@removekey{.typearea.\scr@pkgextension}{paper}%
- \expandafter\ifnum \scr@ta@v@is@lt{3.01b}\relax
- \PackageWarningNoLine{typearea}{%
- You may have to exchange height and width!\MessageBreak
- Until KOMA-Script version 3.01b the semantic\MessageBreak
- of option `paper' was `paper=height:width'\MessageBreak
- instead of `paper=width:height'.\MessageBreak
- I've switched back to that old interpretation\MessageBreak
- because of the given compatiblity settings}%
- \setlength\paperwidth{\@tempb}%
- \setlength\paperheight{\@tempa}%
- \else
- \setlength\paperwidth{\@tempa}%
- \setlength\paperheight{\@tempb}%
- \fi
- \expandafter\ifnum \scr@ta@v@is@lt{3.22}\relax
- \if@landscape
- \KOMA@kav@xadd{.typearea.\scr@pkgextension}{paper}{\@tempa:\@tempb}%
- \else
- \KOMA@kav@xadd{.typearea.\scr@pkgextension}{paper}{\@tempb:\@tempa}%
- \fi
- \else
- \scr@setpaperorientation
- \KOMA@kav@xadd{.typearea.\scr@pkgextension}{paper}{%
- \the\paperwidth:\the\paperheight}%
- \fi
- \KOMA@kav@xadd{.typearea.\scr@pkgextension}{paper}{%
- \if@seascape seascape\else
- \if@landscape landscape\else portrait\fi\fi
- }%
- \else
- \KOMA@unknown@keyval{paper}{#1}{%
- `letter', `legal', `executive', `a'<nr>, `b'<nr>,
- `c'<nr>, `d'<nr>,\MessageBreak
- <width>`:'<height>, `landscape' and `portrait'%
- }%
- \fi
- \fi
- }%
- }%
- }%
- }%
- }%
- }%
-}
-\newif\if@seascape
-\newif\if@landscape
-\newcommand*{\maybe@pair}{}
-\def\maybe@pair#1:#2:#3\@nil{%
- \edef\@tempa{#1}\edef\@tempb{#2}%
- \ifx\@tempa\@empty\@tempswafalse\else
- \ifx\@tempb\@empty\@tempswafalse\else\@tempswatrue\fi
+ \else
+ \@mparswitchfalse
+ \fi%
+ \csname recalctypearea\endcsname
\fi
}
-\KOMA@ifkey{usegeometry}{@ta@usegeometry}
-\DeclareOption*{%
- \x@paper}
-%%% From File: $Id: scrkernel-compatibility.dtx 2596 2017-02-22 07:45:45Z kohm $ (option)
-\KOMA@key{version}[last]{%
- \scr@ifundefinedorrelax{scr@v@#1}{%
- \def\scr@compatibility{0}%
- \PackageWarningNoLine{%
- typearea%
- }{%
- You have set option `version' to value `#1', but\MessageBreak
- this value of version is not supported.\MessageBreak
- Because of this, version was set to `first'%
- }%
- \FamilyKeyStateProcessed
- \KOMA@kav@replacevalue{.%
+\KOMA@kav@xadd{.typearea.\scr@pkgextension}{twoside}{%
+ \if@twoside true\else false\fi
+}
+\KOMA@DeclareStandardOption%
+ [typearea]%
+ {oneside}{twoside=false}
+\KOMA@key{twocolumn}[true]{%
+ \if@atdocument\clearpage\fi
+ \KOMA@set@ifkey{twocolumn}{@twocolumn}{#1}%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed
+ \KOMA@kav@replacebool{.%
typearea.\scr@pkgextension
- }{version}{first}%
- }{%
- \PackageInfoNoLine{%
- typearea%
- }{%
- Switching compatibility level to `#1'%
- }%
- \edef\scr@ta@compatibility{\@nameuse{scr@v@#1}}%
+ }{twocolumn}{@twocolumn}%
+ \csname recalctypearea\endcsname
+ \fi
+}
+\KOMA@kav@xadd{.typearea.\scr@pkgextension}{twocolumn}{%
+ \if@twocolumn true\else false\fi
+}
+\KOMA@DeclareStandardOption%
+ [typearea]%
+ {onecolumn}{twocolumn=false}
+\KOMA@key{headlines}{%
+ \begingroup
+ \setlength{\@tempdima}{#1\baselineskip}%
+ \endgroup
+ \def\ta@hh{#1\baselineskip}%
+ \FamilyKeyStateProcessed
+ \KOMA@kav@replacevalue{.typearea.\scr@pkgextension}{headlines}{#1}%
+ \KOMA@kav@replacevalue{.typearea.\scr@pkgextension}{headheight}{#1\baselineskip}%
+}
+\KOMA@key{footlines}{%
+ \begingroup
+ \setlength{\@tempdima}{#1\baselineskip}%
+ \endgroup
+ \def\ta@fh{#1\baselineskip}%
+ \FamilyKeyStateProcessed
+ \KOMA@kav@replacevalue{.typearea.\scr@pkgextension}{footlines}{#1}%
+ \KOMA@kav@replacevalue{.typearea.\scr@pkgextension}{footheight}{#1\baselineskip}%
+}
+\KOMA@key{headheight}{%
+ \begingroup
+ \setlength{\@tempdima}{#1}%
+ \endgroup
+ \def\ta@hh{#1}%
+ \FamilyKeyStateProcessed
+ \KOMA@kav@replacevalue{.typearea.\scr@pkgextension}{headheight}{#1}%
+ \KOMA@kav@removekey{.typearea.\scr@pkgextension}{headlines}%
+}
+\KOMA@key{footheight}{%
+ \begingroup
+ \setlength{\@tempdima}{#1}%
+ \endgroup
+ \def\ta@fh{#1}%
+ \FamilyKeyStateProcessed
+ \KOMA@kav@replacevalue{.typearea.\scr@pkgextension}{footheight}{#1}%
+ \KOMA@kav@removekey{.typearea.\scr@pkgextension}{footlines}%
+}
+\newif\if@hincl\@ifundefined{if@hsl}{}{\let\if@hincl\if@hsl}
+\KOMA@ifkey{headinclude}{@hincl}
+\KOMA@DeclareDeprecatedOption[typearea]{headexclude}{headinclude=false}
+\KOMA@key{headsepline}[true]{%
+ \KOMA@set@ifkey{headinclude}{@hincl}{#1}%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed
+ \KOMA@kav@replacebool{.typearea.\scr@pkgextension}{headinclude}{@hincl}%
+ \fi
+}
+\newif\if@fincl\@ifundefined{if@fsl}{}{\let\if@fincl\if@fsl}
+\KOMA@ifkey{footinclude}{@fincl}
+\KOMA@DeclareDeprecatedOption[typearea]{footexclude}{footinclude=false}
+\KOMA@key{footsepline}[true]{%
+ \KOMA@set@ifkey{footinclude}{@fincl}{#1}%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed
+ \KOMA@kav@replacebool{.typearea.\scr@pkgextension}{footinclude}{@fincl}%
+ \fi
+}
+\KOMA@ifkey{mpinclude}{@mincl}
+\KOMA@DeclareDeprecatedOption[typearea]{mpexclude}{mpinclude=false}
+\newlength{\ta@bcor}
+\newcount\ta@div
+\KOMA@key{BCOR}{%
+ \ifstr{#1}{current}{}{%
+ \setlength{\ta@bcor}{#1}%
+ }%
+ \FamilyKeyStateProcessed
+ \KOMA@kav@xreplacevalue{.typearea.\scr@pkgextension}{BCOR}{#1}%
+}
+\AtEndOfPackage{%
+ \KOMA@key{BCOR}{%
+ \typearea[{#1}]{last}
\FamilyKeyStateProcessed
- \KOMA@kav@xreplacevalue{.%
- typearea.\scr@pkgextension
- }{version}{#1}%
+ \KOMA@kav@xreplacevalue{.typearea.\scr@pkgextension}{BCOR}{#1}%
}%
}
+\KOMA@key{DIV}[calc]{%
+ \edef\@tempa{#1}%
+ \def\@tempb{last}\ifx\@tempa\@tempb\let\@tempa=\@lastdiv\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
+ \fi
+ \fi
+ \fi
+ \fi
+ \FamilyKeyStateProcessed
+ \KOMA@kav@xreplacevalue{.typearea.\scr@pkgextension}{DIV}{#1}%
+}
\AtEndOfPackage{%
- \KOMA@key{version}[]{%
- \PackageError{%
- typearea%
- }{%
- Option `version' too late%
- }{%
- Option `version' may be set only while loading the
- package.\MessageBreak
- But you've tried to set it up later.%
- }%
+ \KOMA@key{DIV}{%
+ \typearea[current]{#1}%
\FamilyKeyStateProcessed
+ \KOMA@kav@xreplacevalue{.typearea.\scr@pkgextension}{DIV}{#1}%
}%
}
-\newcommand*{\scr@ta@v@is@lt}[1]{%
- \scr@ta@compatibility<\@nameuse{scr@v@#1}
+\KOMA@ifkey{areasetadvanced}{@areasetadvanced}
+\KOMA@DeclareDeprecatedOption[typearea]{DIVcalc}{DIV=calc}
+\KOMA@DeclareDeprecatedOption[typearea]{DIVclassic}{DIV=classic}
+\newcommand\isopaper[2][a]{%
+ \ISO@PaperNameToSize[typearea]#1#2\@nil
+ \expandafter\ifnum\scr@ta@v@is@ge{3.22}\relax
+ \scr@setpaperorientation
+ \else
+ \if@landscape\scr@switchpapersizes\fi
+ \fi
}
-\newcommand*{\scr@ta@v@is@gt}[1]{%
- \scr@ta@compatibility>\@nameuse{scr@v@#1}
+\ProvideUnknownPaperSizeError{typearea}{%
+ \PackageError{typearea}{%
+ Unknown ISO/DIN-papersize-letter #1%
+ }{%
+ There are only four defined paper scalings:\MessageBreak
+ a = ISO/DIN-A, b = ISO/DIN-B, c = ISO/DIN-C,
+ d = ISO/DIN-D\MessageBreak
+ Read KOMA-Script-documentation for further information.%
+ }%
+ \setlength{\paperwidth}{841sp}%
+ \setlength{\paperheight}{1189sp}%
}
-\newcommand*{\scr@ta@v@is@le}[1]{%
- \numexpr\scr@ta@compatibility-\@ne <\@nameuse{scr@v@#1}
+\newcommand*\scr@setpaperorientation{%
+ \ifdim\paperheight>\paperwidth
+ \if@landscape\scr@switchpapersizes\fi
+ \else
+ \if@landscape\else\scr@switchpapersizes\fi
+ \fi
}
-\newcommand*{\scr@ta@v@is@ge}[1]{%
- \numexpr\scr@ta@compatibility+\@ne >\@nameuse{scr@v@#1}
+\newcommand*\scr@switchpapersizes{%
+ \@tempdima\paperwidth\paperwidth\paperheight\paperheight\@tempdima
+}
+\newcommand*{\iso@paper}[1]{\expandafter\iso@@paper#1\@nil}
+\newcommand*{\iso@@paper}{}
+\def\iso@@paper#1#2\@nil{%
+ \@tempswafalse
+ \if #1a\@tempswatrue
+ \else\if #1A\@tempswatrue
+ \else\if #1b\@tempswatrue
+ \else\if #1B\@tempswatrue
+ \else\if #1c\@tempswatrue
+ \else\if #1C\@tempswatrue
+ \else\if #1d\@tempswatrue
+ \else\if #1D\@tempswatrue
+ \fi\fi\fi\fi\fi\fi\fi\fi
+ \if@tempswa
+ \ifnumber{#2}{\isopaper[#1]{#2}}{\@tempswafalse}%
+ \fi
+}
+\newcommand*{\@BCOR}{\expandafter\@@BCOR\CurrentOption BCORBCOR\@@BCOR}
+\newcommand*{\@@BCOR}{}
+\def\@@BCOR #1BCOR#2BCOR#3\@@BCOR{%
+ \ifstr{#1}{}{%
+ \ifstr{#3}{BCOR}{%
+ \ifdimen{#2}{%
+ \KOMA@UseDeprecatedOption{%
+ \PackageWarningNoLine{typearea}}{BCOR#2}{BCOR=#2}%
+ }{\scr@pti@nerr@r}%
+ }{\scr@pti@nerr@r}%
+ }{\scr@pti@nerr@r}%
+}
+\newcommand*{\@DIV}{\expandafter\@@DIV\CurrentOption DIVDIV\@@DIV}
+\newcommand*{\@@DIV}{}
+\def\@@DIV #1DIV#2DIV#3\@@DIV{%
+ \edef\@tempa{#1}\ifx\@tempa\@empty
+ \edef\@tempa{#3}\def\@tempb{DIV}\ifx\@tempa\@tempb
+ \ifnumber{#2}{%
+ \KOMA@UseDeprecatedOption{%
+ \PackageWarningNoLine{typearea}}{DIV#2}{DIV=#2}%
+ }{\scr@pti@nerr@r}%
+ \else\scr@pti@nerr@r\fi
+ \else\@BCOR\fi
}
-%%% From File: $Id: scrkernel-typearea.dtx 2617 2017-04-03 13:56:55Z kohm $ (body)
+\newcommand{\@headlines}{%
+ \expandafter\@@headlines\CurrentOption headlines\@@headlines%
+}
+\newcommand*{\@@headlines}{}
+\def\@@headlines #1headlines#2\@@headlines{
+ \edef\@tempa{#2}\edef\@tempb{headlines}\ifx\@tempa\@tempb
+ \setlength{\@tempdima}{#1\baselineskip}%
+ \def\ta@hh{#1\baselineskip}%
+ \else\@DIV\fi
+}
+\newcommand*{\x@paper}{%
+ \expandafter\x@@paper\CurrentOption paper\x@@paper%
+}
+\newcommand*{\x@@paper}{}
+\def\x@@paper #1#2paper#3\x@@paper{%
+ \ifstr{#3}{paper}{%
+ \ifnumber{#2}{%
+ \ifstr{#1}{a}{%
+ \isopaper[a]{#2}%
+ }{%
+ \ifstr{#1}{b}{%
+ \isopaper[b]{#2}%
+ }{%
+ \ifstr{#1}{c}{%
+ \isopaper[c]{#2}%
+ }{%
+ \ifstr{#1}{d}{%
+ \isopaper[d]{#2}%
+ }{\scr@pti@nerr@r}%
+ }%
+ }%
+ }%
+ }{\scr@pti@nerr@r}%
+ }{%
+ \@headlines
+ }%
+}
+\newcommand*{\scr@pti@nerr@r}{
+ \@unknownoptionerror
+}
+\DeclareOption*{%
+ \x@paper}
\InputIfFileExists{typearea.cfg}{%
\typeout{%
***************************************^^J%
@@ -949,8 +966,72 @@
\KOMAExecuteOptions{twoside=false}
\fi
\KOMAProcessOptions\relax
-\providecommand\ta@divlist{{}{}{}{}{}{}{}{}{}{8}{10}{12}}
-\providecommand\ta@divlistelse{1}
+%%% From File: $Id: scrkernel-compatibility.dtx 2640 2017-05-08 09:36:55Z kohm $
+%%% (run: body)
+%%% From File: $Id: scrkernel-typearea.dtx 2661 2017-07-24 19:45:16Z kohm $
+%%% (run: body)
+\newcommand*{\ta@divfor}[1]{%
+ \if@mincl
+ \PackageInfo{typearea}{%
+ With option `mpinclude' there are no predefined\MessageBreak
+ DIV values. Using DIV calculation for good line\MessageBreak
+ width%
+ }%
+ \ta@div=\tw@
+ \else
+ \xdef\@tempa{\ta@divlist{}}%
+ \@tempdima=#1pt
+ \addtolength{\@tempdima}{.5\p@}%
+ \divide\@tempdima by\p@
+ \setlength{\@tempdimb}{\@tempdima}%
+ \multiply\@tempdimb by\p@
+ \ifdim \@tempdimb=#1pt
+ \ta@div=#1\relax
+ \@whilenum \ta@div >-9 \do {%
+ \ifx\@tempa\empty
+ \else \xdef\@tempa{\expandafter\@cdr\@tempa\@nil}\fi
+ \advance\ta@div by-1
+ }%
+ \else
+ \let\@tempa\empty
+ \fi
+ \ifx\@tempa\empty
+ \setlength{\@tempdima}{#1\p@}%
+ \addtolength{\@tempdima}{10\p@}%
+ \PackageWarningNoLine{typearea}{%
+ DIV for \the\@tempdima\space and used papersize\MessageBreak
+ not defined!\MessageBreak
+ Using DIV=\ta@divlistelse
+ }%
+ \ta@div=\ta@divlistelse\relax
+ \else
+ \xdef\@tempa{\expandafter\@car\@tempa\@nil}%
+ \ifx\@tempa\empty
+ \ta@div=\ta@divlistelse\relax
+ \else
+ \ta@div=\@tempa\relax
+ \fi
+ \fi
+ \fi
+}
+\newcommand*\SetDIVList[1]{%
+ \PackageWarning{typearea}{\string\SetDIVList\space is
+ deprecated!\MessageBreak
+ This command supports only integer font sizes\MessageBreak
+ in pt equal or greater than 10pt.\MessageBreak
+ Since version 2.6 the command is implemented\MessageBreak
+ for compatibility only. You should not use it\MessageBreak
+ any longer}%
+ \def\ta@divlist{{}{}{}{}{}{}{}{}{}#1}}
+\newcommand*\SetXDIVList[1]{%
+ \PackageWarning{typearea}{\string\SetXDIVList\space is
+ deprecated!\MessageBreak
+ This command supports only integer font sizes\MessageBreak
+ in pt equal or greater than 10pt.\MessageBreak
+ Since version 3.0 the command is implemented\MessageBreak
+ for compatibility only. You should not use it\MessageBreak
+ any longer}%
+ \def\ta@divlist{#1}}
\newlength{\ta@hblk}
\newlength{\ta@vblk}
\newlength{\ta@temp}
@@ -1086,10 +1167,6 @@
\kernel@ifstar \l@addto@macro \g@addto@macro \@typearea@end
}
\newcommand*{\@typearea@end}{}
-\newcommand*{\AfterSettingArea}{%
- \kernel@ifstar \l@addto@macro \g@addto@macro \@areaset@end
-}
-\newcommand*{\@areaset@end}{}
\newcommand*{\activateareas}{%
\if@atdocument
\PackageInfo{typearea}{%
@@ -1167,125 +1244,6 @@
\fi
}
\newcommand*{\scr@geometryargs}{}
-\newcommand*{\scr@grouplevel@test}[1]{%
- \ifcase\currentgrouptype\else
- \PackageWarning{typearea}{%
- \string#1\space used at group level
- \the\currentgrouplevel.\MessageBreak
- Using \string#1\space inside any group, e.g.\MessageBreak
- environments, math mode, boxes, etc. may result in\MessageBreak
- many type setting problems.\MessageBreak
- You should move the command \string#1\MessageBreak
- outside all groups%
- }%
- \fi
-}
-\newcommand*{\storeareas}[1]{%
- \edef\reserved@a{%
- \noexpand\newcommand*{\unexpanded{#1}}{%
- \noexpand\scr@grouplevel@test\unexpanded{#1}%
- \noexpand\csname scr@storeareas@before@hook\noexpand\endcsname
- \unexpanded\expandafter\expandafter\expandafter{%
- \csname scr@storeareas@before@current@hook\endcsname}%
- \noexpand\paperheight=\the\paperheight\space
- \noexpand\paperwidth=\the\paperwidth\space
- \noexpand\topmargin=\the\topmargin\space
- \noexpand\headheight=\the\headheight\space
- \noexpand\headsep=\the\headsep\space
- \noexpand\textheight=\the\textheight\space
- \noexpand\vsize=\the\vsize\space
- \noexpand\footskip=\the\footskip\space
- \noexpand\@colht=\the\@colht\space
- \noexpand\@colroom=\the\@colroom\space
- \noexpand\textwidth=\the\textwidth\space
- \noexpand\columnwidth=\the\columnwidth\space
- \noexpand\hsize=\the\hsize\space
- \noexpand\oddsidemargin=\the\oddsidemargin\space
- \noexpand\evensidemargin=\if@twoside
- \the\evensidemargin
- \else
- \the\oddsidemargin
- \fi\space
- \noexpand\linewidth=\the\linewidth\space
- \noexpand\maxdepth=\the\maxdepth\space
- \scr@ifundefinedorrelax{@pagesizelast}{}{%
- \noexpand\KOMAoptions{pagesize=\@pagesizelast}}%
- \noexpand\ta@div=\the\ta@div\space
- \noexpand\ta@bcor=\the\ta@bcor\space
- \noexpand\def\noexpand\@lastdiv{\@lastdiv}%
- \noexpand\marginparsep=\the\marginparsep\space
- \noexpand\marginparwidth=\the\marginparwidth\space
- \noexpand\def
- \expandafter\noexpand\csname scr@kav@KOMA.typearea.\scr@pkgextension\endcsname{%
- \unexpanded\expandafter\expandafter\expandafter{%
- \csname scr@kav@KOMA.typearea.\scr@pkgextension\endcsname}%
- }%
- \unexpanded\expandafter\expandafter\expandafter{%
- \csname scr@storeareas@after@current@hook\endcsname}%
- \noexpand\csname scr@storeareas@after@hook\noexpand\endcsname
- }%
- }%
- \reserved@a
-}
-\newcommand*{\BeforeRestoreareas}{%
- \kernel@ifstar{\scr@storeareashook{before@current}}%
- {\scr@storeareashook{before}}%
-}
-\newcommand*{\AfterRestoreareas}{%
- \kernel@ifstar{\scr@storeareashook{after@current}}%
- {\scr@storeareashook{after}}%
-}
-\newcommand*{\scr@storeareashook}[2]{%
- \expandafter\l@addto@macro\csname scr@storeareas@#1@hook\endcsname{#2}%
-}
-\newcommand*{\scr@storeareas@before@hook}{}
-\newcommand*{\scr@storeareas@before@current@hook}{}
-\newcommand*{\scr@storeareas@after@hook}{}
-\newcommand*{\scr@storeareas@after@current@hook}{}
-\newcommand*{\ta@divfor}[1]{%
- \if@mincl
- \PackageInfo{typearea}{%
- With option `mpinclude' there are no predefined\MessageBreak
- DIV values. Using DIV calculation for good line\MessageBreak
- width%
- }%
- \ta@div=\tw@
- \else
- \xdef\@tempa{\ta@divlist{}}%
- \@tempdima=#1pt
- \addtolength{\@tempdima}{.5\p@}%
- \divide\@tempdima by\p@
- \setlength{\@tempdimb}{\@tempdima}%
- \multiply\@tempdimb by\p@
- \ifdim \@tempdimb=#1pt
- \ta@div=#1\relax
- \@whilenum \ta@div >-9 \do {%
- \ifx\@tempa\empty
- \else \xdef\@tempa{\expandafter\@cdr\@tempa\@nil}\fi
- \advance\ta@div by-1
- }%
- \else
- \let\@tempa\empty
- \fi
- \ifx\@tempa\empty
- \setlength{\@tempdima}{#1\p@}%
- \addtolength{\@tempdima}{10\p@}%
- \PackageWarningNoLine{typearea}{%
- DIV for \the\@tempdima\space and used papersize\MessageBreak
- not defined!\MessageBreak
- Using DIV=\ta@divlistelse
- }%
- \ta@div=\ta@divlistelse\relax
- \else
- \xdef\@tempa{\expandafter\@car\@tempa\@nil}%
- \ifx\@tempa\empty
- \ta@div=\ta@divlistelse\relax
- \else
- \ta@div=\@tempa\relax
- \fi
- \fi
- \fi
-}
\newcommand*\typearea[2][\z@]{%
\scr@grouplevel@test\typearea
\edef\@tempa{#1}\edef\@tempb{current}\ifx\@tempa\@tempb\else
@@ -1515,6 +1473,81 @@
}%
}
\AtEndOfPackage{\newcommand*{\recalctypearea}{\typearea[current]{last}}}
+\newcommand*{\scr@grouplevel@test}[1]{%
+ \ifcase\currentgrouptype\else
+ \PackageWarning{typearea}{%
+ \string#1\space used at group level
+ \the\currentgrouplevel.\MessageBreak
+ Using \string#1\space inside any group, e.g.\MessageBreak
+ environments, math mode, boxes, etc. may result in\MessageBreak
+ many type setting problems.\MessageBreak
+ You should move the command \string#1\MessageBreak
+ outside all groups%
+ }%
+ \fi
+}
+\newcommand*{\storeareas}[1]{%
+ \edef\reserved@a{%
+ \noexpand\newcommand*{\unexpanded{#1}}{%
+ \noexpand\scr@grouplevel@test\unexpanded{#1}%
+ \noexpand\csname scr@storeareas@before@hook\noexpand\endcsname
+ \unexpanded\expandafter\expandafter\expandafter{%
+ \csname scr@storeareas@before@current@hook\endcsname}%
+ \noexpand\paperheight=\the\paperheight\space
+ \noexpand\paperwidth=\the\paperwidth\space
+ \noexpand\topmargin=\the\topmargin\space
+ \noexpand\headheight=\the\headheight\space
+ \noexpand\headsep=\the\headsep\space
+ \noexpand\textheight=\the\textheight\space
+ \noexpand\vsize=\the\vsize\space
+ \noexpand\footskip=\the\footskip\space
+ \noexpand\@colht=\the\@colht\space
+ \noexpand\@colroom=\the\@colroom\space
+ \noexpand\textwidth=\the\textwidth\space
+ \noexpand\columnwidth=\the\columnwidth\space
+ \noexpand\hsize=\the\hsize\space
+ \noexpand\oddsidemargin=\the\oddsidemargin\space
+ \noexpand\evensidemargin=\if@twoside
+ \the\evensidemargin
+ \else
+ \the\oddsidemargin
+ \fi\space
+ \noexpand\linewidth=\the\linewidth\space
+ \noexpand\maxdepth=\the\maxdepth\space
+ \scr@ifundefinedorrelax{@pagesizelast}{}{%
+ \noexpand\KOMAoptions{pagesize=\@pagesizelast}}%
+ \noexpand\ta@div=\the\ta@div\space
+ \noexpand\ta@bcor=\the\ta@bcor\space
+ \noexpand\def\noexpand\@lastdiv{\@lastdiv}%
+ \noexpand\marginparsep=\the\marginparsep\space
+ \noexpand\marginparwidth=\the\marginparwidth\space
+ \noexpand\def
+ \expandafter\noexpand\csname scr@kav@KOMA.typearea.\scr@pkgextension\endcsname{%
+ \unexpanded\expandafter\expandafter\expandafter{%
+ \csname scr@kav@KOMA.typearea.\scr@pkgextension\endcsname}%
+ }%
+ \unexpanded\expandafter\expandafter\expandafter{%
+ \csname scr@storeareas@after@current@hook\endcsname}%
+ \noexpand\csname scr@storeareas@after@hook\noexpand\endcsname
+ }%
+ }%
+ \reserved@a
+}
+\newcommand*{\BeforeRestoreareas}{%
+ \kernel@ifstar{\scr@storeareashook{before@current}}%
+ {\scr@storeareashook{before}}%
+}
+\newcommand*{\AfterRestoreareas}{%
+ \kernel@ifstar{\scr@storeareashook{after@current}}%
+ {\scr@storeareashook{after}}%
+}
+\newcommand*{\scr@storeareashook}[2]{%
+ \expandafter\l@addto@macro\csname scr@storeareas@#1@hook\endcsname{#2}%
+}
+\newcommand*{\scr@storeareas@before@hook}{}
+\newcommand*{\scr@storeareas@before@current@hook}{}
+\newcommand*{\scr@storeareas@after@hook}{}
+\newcommand*{\scr@storeareas@after@current@hook}{}
\newcommand*\areaset[3][\z@]{%
\edef\@tempa{#1}\edef\@tempb{current}\ifx\@tempa\@tempb\else
\setlength{\ta@bcor}{#1}%
@@ -1644,9 +1677,14 @@
}%
\fi
}
+\newcommand*{\AfterSettingArea}{%
+ \kernel@ifstar \l@addto@macro \g@addto@macro \@areaset@end
+}
+\newcommand*{\@areaset@end}{}
+%%% From File: $Id: scrkernel-typearea.dtx 2661 2017-07-24 19:45:16Z kohm $
+%%% (run: final)
\typearea[current]{current}
-%%% From File: $Id: scrkernel-compatibility.dtx 2596 2017-02-22 07:45:45Z kohm $ (body)
-%%% From File: $Id: scrlogo.dtx 2592 2017-02-16 16:56:10Z kohm $
+%%% From File: $Id: scrlogo.dtx 2640 2017-05-08 09:36:55Z kohm $
\@ifundefined{KOMAScript}{%
\DeclareRobustCommand{\KOMAScript}{\textsf{K\kern.05em O\kern.05em%
M\kern.05em A\kern.1em-\kern.1em Script}}}{}