summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/koma-script/scrartcl.cls
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/koma-script/scrartcl.cls')
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/scrartcl.cls860
1 files changed, 546 insertions, 314 deletions
diff --git a/Master/texmf-dist/tex/latex/koma-script/scrartcl.cls b/Master/texmf-dist/tex/latex/koma-script/scrartcl.cls
index f15fabd7eac..ebc4cd252c9 100644
--- a/Master/texmf-dist/tex/latex/koma-script/scrartcl.cls
+++ b/Master/texmf-dist/tex/latex/koma-script/scrartcl.cls
@@ -7,6 +7,7 @@
%% scrkernel-version.dtx (with options: `class,article')
%% scrkernel-basics.dtx (with options: `load')
%% tocbasic.dtx (with options: `class,load')
+%% scrkernel-tocstyle.dtx (with options: `class,article,prepare')
%% scrkernel-sections.dtx (with options: `class,article,prepare')
%% scrkernel-compatibility.dtx (with options: `class,article,option')
%% scrkernel-miscellaneous.dtx (with options: `class,article,option')
@@ -15,6 +16,7 @@
%% scrkernel-typearea.dtx (with options: `class,article,option')
%% scrkernel-paragraphs.dtx (with options: `class,article,option')
%% scrkernel-title.dtx (with options: `class,article,option')
+%% scrkernel-tocstyle.dtx (with options: `class,article,option')
%% scrkernel-sections.dtx (with options: `class,article,option')
%% scrkernel-pagestyles.dtx (with options: `class,article,option')
%% scrkernel-floats.dtx (with options: `class,article,option')
@@ -31,6 +33,11 @@
%% scrkernel-typearea.dtx (with options: `class,article,body')
%% scrkernel-paragraphs.dtx (with options: `class,article,body')
%% scrkernel-title.dtx (with options: `class,article,body')
+%% scrkernel-tocstyle.dtx (with options: `class,article,body')
+%% scrkernel-tocstyle.dtx (with options: `class,article,style,part')
+%% scrkernel-tocstyle.dtx (with options: `class,article,style,section')
+%% scrkernel-tocstyle.dtx (with options: `class,article,style,subsection')
+%% scrkernel-tocstyle.dtx (with options: `class,article,style,default')
%% scrkernel-sections.dtx (with options: `class,article,body')
%% scrkernel-miscellaneous.dtx (with options: `class,article,body')
%% scrkernel-pagestyles.dtx (with options: `class,article,body')
@@ -42,7 +49,7 @@
%% scrkernel-listsandtabulars.dtx (with options: `class,article,body')
%% scrlogo.dtx (with options: `logo')
%%
-%% Copyright (c) 1994-2014 Markus Kohm [komascript at gmx info]
+%% Copyright (c) 1994-2016 Markus Kohm [komascript at gmx info]
%%
%% This file was generated from file(s) of the KOMA-Script bundle.
%% ---------------------------------------------------------------
@@ -74,7 +81,7 @@
%% find a complete unmodified copy of LaTeX2e at
%% <http://www.ctan.org/pub/tex-archive/macros/latex/base/>.
%%
-%%% From File: $Id: scrkernel-version.dtx 2213 2015-10-03 12:59:03Z kohm $
+%%% From File: $Id: scrkernel-version.dtx 2215 2015-10-06 09:50:41Z kohm $
\begingroup
\catcode`\@11\relax
\ifx\KOMAScriptVersion\undefined
@@ -96,7 +103,7 @@
\fi
}
\fi
- \@CheckKOMAScriptVersion{2015/10/03 v3.19a KOMA-Script}%
+ \@CheckKOMAScriptVersion{2016/05/10 v3.20 KOMA-Script}%
\endgroup
\providecommand*{\scr@clsextension}{\@clsextension}
\AtBeginDocument{%
@@ -111,19 +118,21 @@
\newcommand*{\KOMAClassFileName}{\KOMAClassName.\@clsextension}
\edef\KOMAClassFileName{\KOMAClassFileName}
\ProvidesClass{\KOMAClassName}[%
- 2015/10/03 v3.19a KOMA-Script
+ 2016/05/10 v3.20 KOMA-Script
document class (\ClassName)%
]
-%%% From File: $Id: scrkernel-basics.dtx 2190 2015-08-29 17:21:55Z kohm $
+%%% From File: $Id: scrkernel-basics.dtx 2438 2016-04-27 10:58:21Z kohm $
\RequirePackage{scrkbase}[\KOMAScriptVersion]
-%%% From File: $Id: tocbasic.dtx 2146 2015-06-20 06:38:46Z kohm $
+%%% From File: $Id: tocbasic.dtx 2440 2016-04-29 15:59:32Z kohm $
\RequirePackage{tocbasic}[%
- 2015/10/03 v3.19a KOMA-Script
+ 2016/05/10 v3.20 KOMA-Script
]
\addtotoclist{toc}
\addtotoclist[float]{lof}
\addtotoclist[float]{lot}
-%%% From File: $Id: scrkernel-sections.dtx 2212 2015-10-03 12:51:00Z kohm $
+%%% From File: $Id: scrkernel-tocstyle.dtx 2438 2016-04-27 10:58:21Z kohm $
+%%% (run: prepare)
+%%% From File: $Id: scrkernel-sections.dtx 2438 2016-04-27 10:58:21Z kohm $
%%% (run: prepare)
\newcommand*{\scr@dotchangeatdocument}[1]{%
\ClassError{\KOMAClassName}{%
@@ -174,8 +183,8 @@
\newcommand*{\size@subsubsection}{}
\newcommand*{\size@paragraph}{}
\newcommand*{\size@subparagraph}{}
-\newcommand*{\sectfont}{\normalcolor\sffamily\bfseries}
-%%% From File: $Id: scrkernel-compatibility.dtx 2213 2015-10-03 12:59:03Z kohm $
+\newcommand*{\sectfont}{\normalcolor\@gr@gsffamily\bfseries}
+%%% From File: $Id: scrkernel-compatibility.dtx 2342 2016-02-17 11:13:55Z kohm $
\newif\if@scr@emulatestandardclasses
\let\scr@emulatestandardclassestrue\relax
\let\scr@emulatestandardclassesfalse\relax
@@ -183,6 +192,7 @@
\let\if@scr@emulatestandardclasses\iftrue
\KOMAExecuteOptions{%
fontsize=10pt,%
+ headings=standardclasses,%
cleardoublepage=current
}%
\newcommand*{\defaultpapersize}{letter}%
@@ -298,6 +308,7 @@
\@namedef{scr@v@3.18a}{15}
\@namedef{scr@v@3.19}{15}
\@namedef{scr@v@3.19a}{15}
+\@namedef{scr@v@3.20}{15}
\@namedef{scr@v@last}{15}
\newcommand*{\scr@v@is@lt}[1]{%
\scr@compatibility<\@nameuse{scr@v@#1}
@@ -311,7 +322,7 @@
\newcommand*{\scr@v@is@ge}[1]{%
\numexpr\scr@compatibility+\@ne\relax>\@nameuse{scr@v@#1}
}
-%%% From File: $Id: scrkernel-miscellaneous.dtx 2028 2015-03-23 12:19:51Z kohm $
+%%% From File: $Id: scrkernel-miscellaneous.dtx 2429 2016-04-12 12:10:19Z kohm $
\KOMA@key{draft}[true]{%
\KOMA@set@ifkey{draft}{@tempswa}{#1}%
\ifx\FamilyKeyState\FamilyKeyStateProcessed
@@ -333,8 +344,12 @@
{final}{draft=false}
\DeclareOption{leqno}{\input{leqno.clo}}
\DeclareOption{fleqn}{\input{fleqn.clo}}
-%%% From File: $Id: scrkernel-language.dtx 2151 2015-07-03 09:25:42Z kohm $
-%%% From File: $Id: scrkernel-fonts.dtx 2181 2015-08-24 09:30:25Z kohm $
+\KOMA@ifkey{egregdoesnotlikesansseriftitles}{@egregdoesnotlikesansseriftitles}
+\newcommand*{\@gr@gsffamily}{%
+ \if@egregdoesnotlikesansseriftitles\else\sffamily\fi
+}
+%%% From File: $Id: scrkernel-language.dtx 2429 2016-04-12 12:10:19Z kohm $
+%%% From File: $Id: scrkernel-fonts.dtx 2428 2016-04-12 10:31:07Z kohm $
\newcommand*\@ptsize{%
11%
}
@@ -401,7 +416,25 @@
\KOMAClassFileName
}{fontsize}{#1}%
}
-%%% From File: $Id: scrkernel-typearea.dtx 2166 2015-07-26 08:15:44Z kohm $
+\DeclareOption{enabledeprecatedfontcommands}{%
+ \ClassWarningNoLine{\KOMAClassName}{%
+ deprecated option `enabledeprecatedfontcommands'.\MessageBreak
+ Note, that this option was already depreacted when\MessageBreak
+ it has been defined. Support for old font commands\MessageBreak
+ has been removed from KOMA-Script more than one\MessageBreak
+ decade ago. It is not recommended to use them any\MessageBreak
+ longer. Therefore usage of this class option also\MessageBreak
+ is not recommended%
+ }%
+ \let\scr@defineobsoletefonts\@ne
+}
+\scr@ifundefinedorrelax{scr@defineobsoletefonts}{%
+ \let\scr@defineobsoletefonts\z@
+}{}
+\BeforePackage{tex4ht}{%
+ \let\scr@defineobsoletefonts\thr@@
+}
+%%% From File: $Id: scrkernel-typearea.dtx 2429 2016-04-12 12:10:19Z kohm $
\newcommand*{\@BCOR}{\expandafter\@@BCOR\CurrentOption BCORBCOR\@@BCOR}
\newcommand*{\@@BCOR}{}
\def\@@BCOR #1BCOR#2BCOR#3\@@BCOR{%
@@ -467,12 +500,12 @@
}{%
\def\FamilyElseValue{, `semi'}%
\KOMA@set@ifkey{twoside}{%
- @tempswa%
+ @twoside%
}{#1}%
}%
\ifx\FamilyKeyState\FamilyKeyStateProcessed
\expandafter\ifnum\scr@v@is@ge{3.17}%
- \if@tempswa\flushbottom
+ \if@twoside\flushbottom
\else\if@twocolumn\flushbottom\else\raggedbottom\fi\fi
\fi
\KOMA@kav@xreplacevalue{.%
@@ -490,10 +523,13 @@
\KOMA@kav@replacebool{.%
\KOMAClassFileName
}{twocolumn}{@twocolumn}%
- \expandafter\ifnum\scr@v@is@ge{3.17}%
+ \if@atdocument\expandafter\@firstofone
+ \else\@ifpackageloaded{typearea}{\expandafter\@firstofone}
+ {\expandafter\AtEndOfClass}\fi
+ {\expandafter\ifnum\scr@v@is@ge{3.17}%
\if@twocolumn\twocolumn\sloppy\flushbottom
\else\onecolumn\if@twoside\flushbottom\else\raggedbottom\fi\fi
- \fi
+ \fi}%
\fi
}
\AtEndOfClass{%
@@ -507,7 +543,8 @@
{onecolumn}{twocolumn=false}
\DeclareOption*{%
\x@paper}
-%%% From File: $Id: scrkernel-paragraphs.dtx 2179 2015-08-22 06:36:48Z kohm $
+%%% From File: $Id: scrkernel-paragraphs.dtx 2351 2016-02-22 08:20:29Z kohm $
+%%% run: option
\newcommand*{\setparsizes}[3]{%
\edef\f@parindent{\the\parindent}%
\edef\f@parskip{\the\parskip}%
@@ -542,6 +579,7 @@
\let\par@update\relax
\newcommand*{\default@par@update}{}
\let\default@par@update\relax
+\AtBeginDocument{\par@update}
\newcommand*{\scr@parindent}{1em}
\newcommand*{\scr@parskip}{\z@}
\newcommand*{\scr@parfillskip}{\z@ \@plus 1fil}
@@ -671,7 +709,7 @@
\KOMA@DeclareDeprecatedOption{parindent}{parskip=false}
\KOMA@kav@add{.\KOMAClassFileName}{parskip}{false}
\KOMA@kav@add{.\KOMAClassFileName}{parskip}{absolute}
-%%% From File: $Id: scrkernel-title.dtx 2182 2015-08-25 09:10:08Z kohm $
+%%% From File: $Id: scrkernel-title.dtx 2227 2015-10-14 14:31:04Z kohm $
\newif\if@titlepage
\@titlepagefalse
\newif\if@titlepageiscoverpage
@@ -705,7 +743,9 @@
\KOMA@ifkey{abstract}{@abstrt}
\KOMA@DeclareStandardOption{abstracton}{abstract=true}
\KOMA@DeclareStandardOption{abstractoff}{abstract=false}
-%%% From File: $Id: scrkernel-sections.dtx 2212 2015-10-03 12:51:00Z kohm $
+%%% From File: $Id: scrkernel-tocstyle.dtx 2438 2016-04-27 10:58:21Z kohm $
+%%% (run: option)
+%%% From File: $Id: scrkernel-sections.dtx 2438 2016-04-27 10:58:21Z kohm $
%%% (run: option)
\KOMA@key{numbers}{%
\KOMA@set@ncmdkey{numbers}{@tempa}{%
@@ -831,33 +871,11 @@
\KOMA@DeclareDeprecatedOption{bigheadings}{headings=big}
\KOMA@DeclareDeprecatedOption{normalheadings}{headings=normal}
\KOMA@DeclareDeprecatedOption{smallheadings}{headings=small}
-%%% From File: $Id: scrkernel-pagestyles.dtx 2162 2015-07-15 07:30:52Z kohm $
-\newif\if@hsl
-\KOMA@key{headsepline}[true]{%
- \KOMA@set@ifkey{headsepline}{@hsl}{#1}%
- \ifx\FamilyKeyState\FamilyKeyStateProcessed
- \KOMA@kav@replacebool{.\KOMAClassFileName}{headsepline}{@hsl}%
- \@ifundefined{typearea}{%
- \PassOptionsToPackage{headinclude=#1}{typearea}%
- }{%
- \KOMAoptions{headinclude=#1}{}%
- }%
- \fi
-}
+%%% From File: $Id: scrkernel-pagestyles.dtx 2304 2015-12-12 08:55:47Z kohm $
+\KOMA@ifkey{headsepline}{@hsl}%
\KOMA@kav@add{.\KOMAClassFileName}{headsepline}{false}
\KOMA@DeclareDeprecatedOption{headnosepline}{headsepline=false}
-\newif\if@fsl
-\KOMA@key{footsepline}[true]{%
- \KOMA@set@ifkey{footsepline}{@fsl}{#1}%
- \ifx\FamilyKeyState\FamilyKeyStateProcessed
- \KOMA@kav@replacebool{.\KOMAClassFileName}{footsepline}{@fsl}%
- \@ifundefined{typearea}{%
- \PassOptionsToPackage{footinclude=#1}{typearea}%
- }{%
- \KOMAoptions{footinclude=#1}%
- }%
- \fi
-}
+\KOMA@ifkey{footsepline}{@fsl}%
\KOMA@kav@add{.\KOMAClassFileName}{footsepline}{false}
\KOMA@DeclareDeprecatedOption{footnosepline}{footsepline=false}
\KOMA@key{cleardoublepage}{%
@@ -957,7 +975,7 @@
\KOMA@DeclareDeprecatedOption{cleardoubleempty}{cleardoublepage=empty}
\KOMA@DeclareDeprecatedOption{cleardoubleplain}{cleardoublepage=plain}
\KOMA@DeclareDeprecatedOption{cleardoublestandard}{cleardoublepage=current}
-%%% From File: $Id: scrkernel-floats.dtx 2002 2015-03-12 12:06:17Z kohm $
+%%% From File: $Id: scrkernel-floats.dtx 2429 2016-04-12 12:10:19Z kohm $
\newif\if@captionabove\@captionabovefalse
\newif\if@tablecaptionabove\@tablecaptionabovefalse
\newif\if@figurecaptionabove\@figurecaptionabovefalse
@@ -1161,7 +1179,7 @@
\csname FN@mf@prepare\endcsname
\ifhmode\spacefactor\@x@sf\fi
\relax}
-%%% From File: $Id: scrkernel-listsof.dtx 2206 2015-09-27 08:08:34Z kohm $
+%%% From File: $Id: scrkernel-listsof.dtx 2384 2016-03-15 11:58:53Z kohm $
\newif\if@tocleft
\KOMA@key{toc}{%
\KOMA@set@ncmdkey{toc}{@tempa}{%
@@ -1631,18 +1649,18 @@
\KOMA@kav@add{.\KOMAClassFileName}{index}{notoc}
\KOMA@kav@add{.\KOMAClassFileName}{index}{standardlevel}
\KOMA@DeclareDeprecatedOption{idxtotoc}{index=totoc}
-%%% From File: $Id: scrkernel-listsandtabulars.dtx 2028 2015-03-23 12:19:51Z kohm $
-%%% From File: $Id: scrkernel-sections.dtx 2212 2015-10-03 12:51:00Z kohm $
+%%% From File: $Id: scrkernel-listsandtabulars.dtx 2318 2016-01-29 11:40:15Z kohm $
+%%% From File: $Id: scrkernel-sections.dtx 2438 2016-04-27 10:58:21Z kohm $
%%% (run: execoption)
\KOMAExecuteOptions{numbers=autoendperiod}
-%%% From File: $Id: scrkernel-miscellaneous.dtx 2028 2015-03-23 12:19:51Z kohm $
+%%% From File: $Id: scrkernel-miscellaneous.dtx 2429 2016-04-12 12:10:19Z kohm $
\KOMAExecuteOptions{%
parskip=false,%
headings=big%
}
\KOMAProcessOptions\relax
-%%% From File: $Id: scrkernel-compatibility.dtx 2213 2015-10-03 12:59:03Z kohm $
-%%% From File: $Id: scrkernel-fonts.dtx 2181 2015-08-24 09:30:25Z kohm $
+%%% From File: $Id: scrkernel-compatibility.dtx 2342 2016-02-17 11:13:55Z kohm $
+%%% From File: $Id: scrkernel-fonts.dtx 2428 2016-04-12 10:31:07Z kohm $
\newcommand*\scr@setlength[4]{%
\expandafter\ifnum\scr@v@is@lt{3.12}\relax
\setlength{#1}{#2 \@plus#3 \@minus#4}%
@@ -2032,42 +2050,78 @@
}%
}
\newcommand*{\scr@DeclareOldFontCommand}[3]{%
- \DeclareRobustCommand #1{\@fontswitch {%
- \ClassWarning{\KOMAClassName}{%
- Usage of deprecated font command `\string#1'!\MessageBreak
- You should note, that in 1994 font command `\string#1' has\MessageBreak
- been defined for compatiblitiy to Script 2.0 only.\MessageBreak
- Now, after two decades of LaTeX2e and NFSS2, you\MessageBreak
- shouldn't use such commands any longer and within\MessageBreak
- KOMA-Script usage of `\string#1' is definitely deprecated.\MessageBreak
- See `fntguide.pdf' for more information about\MessageBreak
- recommended font commands.\MessageBreak
- Note also, that KOMA-Script will remove the definition\MessageBreak
- of `\string#1' anytime until release of about version 3.20.\MessageBreak
- But for now, KOMA-Script will replace deprecated
- `\string#1'\MessageBreak
- by `\detokenize{#2}'%
- }%
- #2%
- }{%
- \ClassWarning{\KOMAClassName}{%
- Usage of deprecated font command `\string#1'!\MessageBreak
- You should note, that in 1994 font command `\string#1' has\MessageBreak
- been defined for compatiblitiy to Script 2.0 only.\MessageBreak
- Now, after two decades of LaTeX2e and NFSS2, you\MessageBreak
- shouldn't use such commands any longer and within\MessageBreak
- KOMA-Script usage of `\string#1' is definitely deprecated.\MessageBreak
- See `fntguide.pdf' for more information about\MessageBreak
- recommended font commands.\MessageBreak
- Note also, that KOMA-Script will remove the definition\MessageBreak
- of `\string#1' anytime until release of about version 3.20.\MessageBreak
- But for now, KOMA-Script will replace deprecated
- `\string#1'\MessageBreak
- by `\detokenize{#3}'%
+ \ifnum\scr@defineobsoletefonts<\z@\else
+ \ifnum\scr@defineobsoletefonts>\tw@
+ \DeclareOldFontCommand{#1}{#2}{#3}%
+ \else
+ \DeclareOldFontCommand{#1}{%
+ \scr@ErrorWarningInfo{#1}{#2}#2%
+ }{%
+ \scr@ErrorWarningInfo{#1}{#3}#3%
}%
- #3%
+ \fi
+ \fi
+}
+\DeclareRobustCommand*{\scr@ErrorWarningInfo}[2]{%
+ \ifnum \scr@defineobsoletefonts=\z@
+ \ClassError{\KOMAClassName}{undefined old font command `\string#1'}{%
+ You should note that since 1994 LaTeX2e provides a new font selection
+ scheme\MessageBreak
+ called NFSS2 with several new, combinable font commands. New
+ KOMA-Script\MessageBreak
+ classes have defined the old font commands like `\string#1'
+ only for compatibility\MessageBreak
+ with old LaTeX 2.09 document styles of Script 2.0. Nevertheless,
+ these\MessageBreak
+ commands are deprecated and undocumented at least since
+ 2003. Since 2013\MessageBreak
+ KOMA-Script classes warn abouts soon removement of these deprecated
+ commands.\MessageBreak
+ Now, after two decades of LaTeX2e and NFSS2, these commands will not
+ work any\MessageBreak
+ more. If loading a package results in this error message, you should
+ contact\MessageBreak
+ the author of that package and ask him to replace the deprecated font
+ command\MessageBreak
+ `\string#1', e.g., by `\detokenize{#2}`. Otherwise you should
+ reconfigure\MessageBreak
+ or replace the package. If you have used the old font command
+ `\string#1' yourself,\MessageBreak
+ you should replace it, e.g., by `\detokenize{#2}'.\MessageBreak
+ To make it work for now, you can use the already also deprecated class
+ option\MessageBreak
+ `enabledeprecatedfontcommands'.%
}%
- }%
+ \else
+ \ifcase \scr@defineobsoletefonts
+ \or
+ \expandafter\ClassWarning
+ \or
+ \expandafter\ClassInfo
+ \else
+ \expandafter\@gobbletwo
+ \fi
+ {\KOMAClassName}{deprecated old font command `\string#1' used.\MessageBreak
+ You should note, that since 1994 LaTeX2e provides a\MessageBreak
+ new font selection scheme called NFSS2 with several\MessageBreak
+ new, combinable font commands. New KOMA-Script classes\MessageBreak
+ have defined the old font commands like `\string#1' only for\MessageBreak
+ compatibility with LaTeX 2.09 document styles of\MessageBreak
+ Script 2.0. These commands are deprecated and\MessageBreak
+ undocumented at least since 2003. Since 2013,\MessageBreak
+ KOMA-Script classes warn about soon removement of\MessageBreak
+ these deprecated commands. Now, after two decades of\MessageBreak
+ LaTeX2e, NFSS2, and KOMA-Script these commands will\MessageBreak
+ not work any longer. If loading a package results in\MessageBreak
+ this message you should contact the author of that\MessageBreak
+ package and ask him to replace the depracted font\MessageBreak
+ command `\string#1', e.g., by `\detokenize{#2}'.\MessageBreak
+ Otherwise you should reconfigure or replace the\MessageBreak
+ package. If you have used the old font command\MessageBreak
+ `\string #1' yourself you should replace it, e.g., by\MessageBreak
+ `\detokenize{#2}'%
+ }%
+ \fi
}
\scr@DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
\scr@DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf}
@@ -2080,12 +2134,12 @@
\@nomath\sfb}
\DeclareRobustCommand*{\cal}{\@fontswitch\relax\mathcal}
\DeclareRobustCommand*{\mit}{\@fontswitch\relax\mathnormal}
-%%% From File: $Id: scrkernel-language.dtx 2151 2015-07-03 09:25:42Z kohm $
+%%% From File: $Id: scrkernel-language.dtx 2429 2016-04-12 12:10:19Z kohm $
\def\today{\ifcase\month\or
January\or February\or March\or April\or May\or June\or
July\or August\or September\or October\or November\or December\fi
\space\number\day, \number\year}%
-%%% From File: $Id: scrkernel-typearea.dtx 2166 2015-07-26 08:15:44Z kohm $
+%%% From File: $Id: scrkernel-typearea.dtx 2429 2016-04-12 12:10:19Z kohm $
\let\@BCOR =\relax
\let\@@BCOR =\relax
\let\@DIV =\relax
@@ -2129,7 +2183,8 @@
}\reserved@a
\fi
\fi
-%%% From File: $Id: scrkernel-paragraphs.dtx 2179 2015-08-22 06:36:48Z kohm $
+%%% From File: $Id: scrkernel-paragraphs.dtx 2351 2016-02-22 08:20:29Z kohm $
+%%% run: body
\setlength{\lineskip}{\p@}
\setlength{\normallineskip}{\p@}
\setlength{\columnsep}{10\p@}
@@ -2257,7 +2312,7 @@
\@lowpenalty = 51
\@medpenalty =151
\@highpenalty =301
-%%% From File: $Id: scrkernel-title.dtx 2182 2015-08-25 09:10:08Z kohm $
+%%% From File: $Id: scrkernel-title.dtx 2227 2015-10-14 14:31:04Z kohm $
\newcommand*{\@extratitle}{}%
\newcommand{\extratitle}[1]{\gdef\@extratitle{%
#1%
@@ -2294,6 +2349,7 @@
\@thanks\global\let\@thanks\@empty
\clearpage
\csname titlepage@restore\endcsname
+ \setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative
\thispagestyle{empty}%
\let\footnote\thanks
\setcounter{footnote}{0}%
@@ -2596,7 +2652,54 @@
\fi
}
\newcommand*\abstractname{Abstract}
-%%% From File: $Id: scrkernel-sections.dtx 2212 2015-10-03 12:51:00Z kohm $
+%%% From File: $Id: scrkernel-tocstyle.dtx 2438 2016-04-27 10:58:21Z kohm $
+%%% (run: body)
+\let\numberline\scr@numberline
+%%% From File: $Id: scrkernel-tocstyle.dtx 2438 2016-04-27 10:58:21Z kohm $
+%%% (run: class,style,part)
+\CloneTOCEntryStyle{tocline}{part}
+\TOCEntryStyleStartInitCode{part}{%
+ \expandafter\providecommand%
+ \csname scr@tso@#1@linefill\endcsname{\hfill}%
+ \expandafter\providecommand%
+ \csname scr@tso@#1@entryformat\endcsname[1]{\usekomafont{partentry}{##1}}%
+ \expandafter\providecommand%
+ \csname scr@tso@#1@pagenumberformat\endcsname[1]{%
+ \usekomafont{partentry}{\usekomafont{partentrypagenumber}{##1}}}%
+ \expandafter\providecommand\expandafter*%
+ \csname scr@tso@#1@beforeskip\endcsname{2.25em \@plus\p@}%
+}
+%%% From File: $Id: scrkernel-tocstyle.dtx 2438 2016-04-27 10:58:21Z kohm $
+%%% (run: class,style,section)
+\CloneTOCEntryStyle{tocline}{section}
+\TOCEntryStyleStartInitCode{section}{%
+ \expandafter\providecommand%
+ \csname scr@tso@#1@linefill\endcsname{%
+ \if@sectionentrywithdots
+ \TOCLineLeaderFill\relax
+ \else
+ \hfill
+ \fi
+ }%
+ % F^^fcr die Eintr^^e4ge die Schrift von Element sectionentry verwenden.
+ \expandafter\providecommand%
+ \csname scr@tso@#1@entryformat\endcsname{\usekomafont{sectionentry}}%
+ \expandafter\providecommand%
+ \csname scr@tso@#1@pagenumberformat\endcsname[1]{\usekomafont{sectionentry}{\usekomafont{sectionentrypagenumber}{##1}}}%
+ \expandafter\providecommand\expandafter*%
+ \csname scr@tso@#1@beforeskip\endcsname{1.0em \@plus\p@}%
+}
+%%% From File: $Id: scrkernel-tocstyle.dtx 2438 2016-04-27 10:58:21Z kohm $
+%%% (run: class,style,subsection)
+\CloneTOCEntryStyle{tocline}{subsection}
+\TOCEntryStyleStartInitCode{subsection}{%
+ \expandafter\providecommand%
+ \csname scr@tso@#1@linefill\endcsname{\TOCLineLeaderFill\relax}%
+}
+%%% From File: $Id: scrkernel-tocstyle.dtx 2438 2016-04-27 10:58:21Z kohm $
+%%% (run: class,style,default)
+\CloneTOCEntryStyle{subsection}{default}
+%%% From File: $Id: scrkernel-sections.dtx 2438 2016-04-27 10:58:21Z kohm $
%%% (run: body)
\setcounter{secnumdepth}{3}
\newcommand*{\ifnumbered}[1]{%
@@ -2623,7 +2726,7 @@
}
\BeforeClosingMainAux{%
\if@autodot\if@filesw\immediate\write\@mainaux{%
- \string\global\string\@altsecnumformattrue}%
+ \string\global\string\csname\space @altsecnumformattrue\string\endcsname}%
\fi\fi}
\newcommand{\@maybeautodot}[1]{\if@autodot\else\begingroup%
\expandafter\@@maybeautodot #1\@stop\endgroup\fi
@@ -2657,11 +2760,33 @@
\else
\addpenalty\@secpenalty\addvspace\@tempskipa
\fi
+ \kernel@ifstar
+ {\@ssect{#3}{#4}{#5}{#6}}%
+ {\@dblarg{\@sect{#1}{#2}{#3}{#4}{#5}{#6}}}%
+}
+\def\reserved@a#1#2#3#4#5#6{%
+ \if@noskipsec \leavevmode \fi
+ \par
+ \@tempskipa #4\relax
+ \@afterindenttrue
+ \ifdim \@tempskipa <\z@
+ \@tempskipa -\@tempskipa \@afterindentfalse
+ \fi
+ \if@nobreak
+ \everypar{}%
+ \else
+ \addpenalty\@secpenalty\addvspace\@tempskipa
+ \fi
\@ifstar
{\@ssect{#3}{#4}{#5}{#6}}%
{\@dblarg{\@sect{#1}{#2}{#3}{#4}{#5}{#6}}}%
}
-\ifx\@startsection\scr@saved@startsection
+\ifcase \ifx\@startsection\scr@saved@startsection 0
+ \else
+ \ifx\@startsection\reserved@a 0
+ \else 1
+ \fi
+ \fi
\newcommand*{\scr@startsection}[6]{%
\if@noskipsec \leavevmode \fi
\par
@@ -2676,7 +2801,7 @@
\else
\addpenalty\@secpenalty\addvspace\@tempskipa
\fi
- \@ifstar {%
+ \kernel@ifstar {%
\csname scr@preto@ssect@hook\endcsname
\def\scr@s@ct@@nn@m@{#1}%
\@ssect{\glueexpr #3\relax}{\glueexpr #4\relax}{\glueexpr #5\relax}{#6}%
@@ -2707,7 +2832,7 @@
}%
\let\scr@saved@startsection\@startsection
\newcommand*{\scr@startsection}[6]{%
- \@ifstar {%
+ \kernel@ifstar {%
\scr@saved@startsection{#1}{\numexpr #2\relax}{\glueexpr #3\relax}%
{\glueexpr #4\relax}{\glueexpr #5\relax}{#6}*%
}{%
@@ -2748,7 +2873,7 @@
\expandafter\scr@startsection
\fi
}
-\newcommand*{\SecDef}[2]{\@ifstar{#2}{\scr@section@dblarg{#1}}}
+\newcommand*{\SecDef}[2]{\kernel@ifstar{#2}{\scr@section@dblarg{#1}}}
\CheckCommand*{\secdef}[2]{\@ifstar{#2}{\@dblarg{#1}}}
\let\secdef\SecDef
\def\@tempa#1#2#3#4#5#6[#7]#8{%
@@ -2939,7 +3064,7 @@
Neither the then-code nor the else-code will be\MessageBreak
executed.\MessageBreak
You may change this and avoid the warning by LOCALLY\MessageBreak
- setting \string\IsUsePrefixLine\space to either
+ setting \string\IfUsePrefixLine\space to either
\string\@firstoftwo\space or\MessageBreak
\string\@secondoftwo\space before using it%
}%
@@ -2951,26 +3076,40 @@
\DefineFamily{KOMAarg}
\DefineFamilyMember[.dsc]{KOMAarg}
\newcommand*{\DeclareSectionCommandStyleOption}[3]{%
- \DeclareSectionCommandDummyOption{#2}%
+ \AddToSectionCommandOptionsDoList{#2}%
\expandafter\g@addto@macro\csname scr@dsc@style@#1@options\endcsname{%
\DefineFamilyKey[.dsc]{KOMAarg}{#2}{#3}%
}%
}
-\newcommand*{\DeclareSectionCommandDummyOption}[1]{%
- \@ifstar {%
- \g@addto@macro{\scr@dsc@dummyoptions}{%
- \DefineFamilyKey[.dsc]{KOMAarg}{#1}[]{\FamilyKeyStateProcessed}%
+\newcommand*{\AddToSectionCommandOptionsDoList}[1]{%
+ \kernel@ifnextchar [%]
+ {\@AddToSectionCommandOptionListWithDefault{#1}}%
+ {\l@addto@macro\scr@dsc@doopts{\do{#1}}}%
+}
+\newcommand*{\@AddToSectionCommandOptionListWithDefault}{}
+\def\@AddToSectionCommandOptionListWithDefault#1[#2]{%
+ \l@addto@macro\scr@dsc@doopts{\do[{#2}]{#1}}
+}%
+\newcommand*{\scr@dsc@doopts}{}
+\newcommand*{\RelaxSectionCommandOptions}{%
+ \begingroup
+ \def\do@endgroup{\endgroup}%
+ \def\do{%
+ \kernel@ifnextchar [%]
+ {\@do}%
+ {\@do[]}%
}%
- }{%
- \g@addto@macro{\scr@dsc@dummyoptions}{%
- \DefineFamilyKey[.dsc]{KOMAarg}{#1}{\FamilyKeyStateProcessed}%
+ \def\@do[##1]##2{%
+ \l@addto@macro\do@endgroup{\RelaxFamilyKey[.dsc]{KOMAarg}{##2}}%
}%
- }%
+ \scr@dsc@doopts
+ \do@endgroup
}
-\newcommand*{\scr@dsc@dummyoptions}{}
\newcommand*{\DeclareSectionCommandStyleLengthOption}[4]{%
\DeclareSectionCommandStyleOption{#1}{#2}{%
- \FamilySetLength{KOMAarg}{#2}{\@tempskipa}{##1}%
+ \protected@edef\reserved@a{%
+ \noexpand\FamilySetLength{KOMAarg}{#2}{\noexpand\@tempskipa}{##1}%
+ }\reserved@a
\ifx\FamilyKeyState\FamilyKeyStateProcessed
\ifscr@dsc@expandtopt
\expandafter\edef\csname #3\scr@dsc@current#4\endcsname{%
@@ -2983,9 +3122,11 @@
}
\newcommand*{\DeclareSectionCommandStyleNumberOption}[4]{%
\DeclareSectionCommandStyleOption{#1}{#2}{%
- \FamilySetCounter{KOMAarg}{#2}{\@tempcnta}{##1}%
+ \protected@edef\reserved@a{%
+ \noexpand\FamilySetCounterMacro{KOMAarg}{#2}{\noexpand\reserved@a}{##1}
+ }\reserved@a
\ifx\FamilyKeyState\FamilyKeyStateProcessed
- \expandafter\edef\csname #3\scr@dsc@current#4 \endcsname{\the\@tempcnta}%
+ \expandafter\let\csname #3\scr@dsc@current#4 \endcsname\reserved@a
\fi
}%
}
@@ -2999,13 +3140,6 @@
\FamilyKeyStateProcessed
}%
}
-\DeclareSectionCommandDummyOption{style}
-\DeclareSectionCommandDummyOption{expandtopt}*
-\DeclareSectionCommandDummyOption{increaselevel}
-\DeclareSectionCommandDummyOption{level}
-\DeclareSectionCommandDummyOption{toclevel}
-\DeclareSectionCommandDummyOption{tocindent}
-\DeclareSectionCommandDummyOption{tocnumwidth}
\newcommand*{\scr@dsc@style@section@options}{}
\DeclareSectionCommandStyleLengthOption{section}
{indent}{scr@}{@sectionindent}
@@ -3022,7 +3156,7 @@
{\csname scr@#1@beforeskip\endcsname}%
{\csname scr@#1@afterskip\endcsname}%
{%
- \ifdim\glueexpr\csname scr@#1@beforeskip\endcsname <\z@
+ \ifdim\glueexpr\csname scr@#1@afterskip\endcsname >\z@
\expandafter\ifnum\scr@v@is@gt{2.96}\relax
\setlength{\parfillskip}{\z@ plus 1fil}%
\fi
@@ -3080,11 +3214,10 @@
\newif\ifscr@dsc@parametersonly
\newcommand*{\DeclareSectionCommand}[2][]{%
\edef\scr@dsc@current{#2}%
- \scr@dsc@dummyoptions
\scr@dsc@parametersonlyfalse
\DefineFamilyKey[.dsc]{KOMAarg}{style}{%
- \ifstr{##1}{}{%
- \ifscr@dsc@parametersonlytrue
+ \IfArgIsEmpty{##1}{%
+ \scr@dsc@parametersonlytrue
\FamilyKeyStateProcessed
}{%
\scr@ifundefinedorrelax{scr@dsc@def@style@##1@command}{%
@@ -3095,7 +3228,27 @@
}%
}%
}%
+ \DefineFamilyKey[.dsc]{KOMAarg}{tocstyle}{%
+ \IfArgIsEmpty{##1}{%
+ \expandafter\let\csname scr@dte@\scr@dsc@current @style\endcsname
+ \relax
+ \FamilyKeyStateProcessed
+ }{%
+ \scr@ifundefinedorrelax{scr@dte@def@l@##1}{%
+ \FamilyKeyStateUnknownValue
+ }{%
+ \@namedef{scr@dte@\scr@dsc@current @style}{##1}%
+ \FamilyKeyStateProcessed
+ }%
+ }%
+ }%
+ \DefineFamilyKey[.dsc]{KOMAarg}{@else@}{%
+ \FamilyKeyStateProcessed
+ }%
\FamilyExecuteOptions[.dsc]{KOMAarg}{#1}%
+ \RelaxFamilyKey[.dsc]{KOMAarg}{@else@}%
+ \RelaxFamilyKey[.dsc]{KOMAarg}{tocstyle}%
+ \RelaxFamilyKey[.dsc]{KOMAarg}{style}%
\begingroup
\scr@ifundefinedorrelax{scr@\scr@dsc@current @style}{%
\scr@declaresectioncommanderror{\scr@dsc@current}
@@ -3103,8 +3256,54 @@
}{}%
\endgroup
\@firstofone{%
- \scr@dsc@dummyoptions
\@nameuse{scr@dsc@style@\@nameuse{scr@\scr@dsc@current @style}@options}%
+ \scr@ifundefinedorrelax{scr@dte@\scr@dsc@current @style}{%
+ \scr@ifundefinedorrelax{l@\scr@dsc@current}{%
+ \@namedef{scr@dte@\scr@dsc@current @style}{default}%
+ }{}%
+ }{}%
+ \let\scr@dsc@tocstyle@options\@empty
+ \let\scr@dsc@extra@relax@opts\@empty
+ \scr@ifundefinedorrelax{scr@dte@\scr@dsc@current @style}{}{%
+ \begingroup
+ \def\scr@dte@current{#2}%
+ \edef\reserved@a{%
+ \noexpand\@ExecuteTOCEntryStyleInitCode{%
+ \@nameuse{scr@dte@\scr@dsc@current @style}%
+ }{\scr@dsc@current}%
+ }\reserved@a
+ \def\do@endgroup{\endgroup}%
+ \def\do##1{%
+ \l@addto@macro\do@endgroup{%
+ \l@addto@macro\scr@dsc@extra@relax@opts{%
+ \RelaxFamilyKey[.dsc]{KOMAarg}{toc##1}%
+ }%
+ }%
+ \kernel@ifnextchar[%]
+ {\@dodefault{##1}}%
+ {\@donodefault{##1}}%
+ }%
+ \def\@donodefault##1{%
+ \l@addto@macro\do@endgroup{%
+ \DefineFamilyKey[.dsc]{KOMAarg}{toc##1}{%
+ \l@addto@macro{\scr@dsc@tocstyle@options}{##1={####1},}%
+ \FamilyKeyStateProcessed
+ }%
+ }%
+ }%
+ \def\@dodefault##1[##2]{%
+ \l@addto@macro\do@endgroup{%
+ \DefineFamilyKey[.dsc]{KOMAarg}{toc##1}[##2]{%
+ \l@addto@macro{\scr@dsc@tocstyle@options}{##1={####1},}%
+ \FamilyKeyStateProcessed
+ }%
+ }%
+ }%
+ \scr@dte@doopts
+ \do@endgroup
+ }%
+ \DefineFamilyKey[.dsc]{KOMAarg}{style}{\FamilyKeyStateProcessed}%
+ \DefineFamilyKey[.dsc]{KOMAarg}{tocstyle}{\FamilyKeyStateProcessed}%
\FamilyBoolKey[.dsc]{KOMAarg}{expandtopt}{scr@dsc@expandtopt}%
\scr@dsc@expandtoptfalse
\scr@ifundefinedorrelax{scr@local@levelincrease}{%
@@ -3137,64 +3336,38 @@
\let\scr@local@counterwithout\relax
\FamilyStringKey[.dsc]{KOMAarg}{counterwithin}{\scr@local@counterwithin}%
\let\scr@local@counterwithin\relax
- \scr@ifundefinedorrelax{scr@local@tocleveloffset}{%
- \edef\reserved@a{%
- \noexpand\FamilyCounterMacroKey[.dsc]{KOMAarg}{toclevel}{%
- \expandafter\noexpand\csname \scr@dsc@current tocdepth\endcsname}%
- }\reserved@a
- }{%
- \edef\reserved@a{%
- \noexpand\DefineFamilyKey[.dsc]{KOMAarg}{toclevel}{%
- \noexpand\FamilySetCounterMacro{KOMAarg}{toclevel}{%
- \expandafter\noexpand\csname \scr@dsc@current tocdepth\endcsname
- }%
- \unexpanded{%
- {\numexpr ##1+\scr@local@tocleveloffset\relax}%
- \edef\scr@local@tocleveloffset{%
- \the\numexpr\scr@local@tocleveloffset
- +\scr@local@levelincrease\relax
+ \scr@ifundefinedorrelax{scr@local@tocleveloffset}{}{%
+ \scr@ifundefinedorrelax{KV@KOMAarg.dsc@toclevel}{%
+ }{%
+ \DefineFamilyKey[.dsc]{KOMAarg}{toclevel}{%
+ \edef\reserved@a{%
+ \noexpand\l@addto@macro{\noexpand\scr@dsc@tocstyle@options}{%
+ level=\the\numexpr ##1+\scr@local@tocleveloffset\relax,%
}%
+ }\reserved@a
+ \edef\scr@local@tocleveloffset{%
+ \the\numexpr\scr@local@tocleveloffset+\scr@local@levelincrease\relax
}%
+ \FamilyKeyStateProcessed
}%
- }\reserved@a
- }%
- \DefineFamilyKey[.dsc]{KOMAarg}{tocindent}{%
- \FamilySetLength{KOMAarg}{#2}{\@tempskipa}{##1}%
- \ifx\FamilyKeyState\FamilyKeyStateProcessed
- \ifscr@dsc@expandtopt
- \expandafter\edef\csname scr@\scr@dsc@current @tocindent\endcsname{%
- \the\@tempskipa}%
- \else
- \expandafter\edef\csname scr@\scr@dsc@current @tocindent\endcsname{%
- ##1}%
- \fi
- \fi
- }%
- \DefineFamilyKey[.dsc]{KOMAarg}{tocnumwidth}{%
- \FamilySetLength{KOMAarg}{#2}{\@tempskipa}{##1}%
- \ifx\FamilyKeyState\FamilyKeyStateProcessed
- \ifscr@dsc@expandtopt
- \expandafter\edef\csname scr@\scr@dsc@current @tocnumwidth\endcsname{%
- \the\@tempskipa}%
- \else
- \expandafter\edef\csname scr@\scr@dsc@current @tocnumwidth\endcsname{%
- ##1}%
- \fi
- \fi
+ }%
}%
\FamilyExecuteOptions[.dsc]{KOMAarg}{#1}%
+ \scr@dsc@extra@relax@opts
+ \let\scr@dsc@extra@relax@opts\relax
+ \RelaxSectionCommandOptions
+ \RelaxFamilyKey[.dsc]{KOMAarg}{style}%
+ \RelaxFamilyKey[.dsc]{KOMAarg}{tocstyle}%
+ \RelaxFamilyKey[.dsc]{KOMAarg}{expandtopt}%
+ \scr@ifundefinedorrelax{scr@local@levelincrease}{}{%
+ \RelaxFamilyKey[.dsc]{KOMAarg}{increaselevel}%
+ }%
+ \RelaxFamilyKey[.dsc]{KOMAarg}{level}%
+ \RelaxFamilyKey[.dsc]{KOMAarg}{counterwithin}%
\begingroup
\scr@ifundefinedorrelax{\scr@dsc@current numdepth}{%
\scr@declaresectioncommanderror{\scr@dsc@current}{section level}{level}%
}{}%
- \scr@ifundefinedorrelax{scr@\scr@dsc@current @tocindent}{%
- \scr@declaresectioncommanderror{\scr@dsc@current}{toc entry indent}
- {tocindent}%
- }{}%
- \scr@ifundefinedorrelax{scr@\scr@dsc@current @tocnumwidth}{%
- \scr@declaresectioncommanderror{\scr@dsc@current}{toc entry number
- width}{tocnumwidth}%
- }{}%
\@nameuse{scr@dsc@style@%
\@nameuse{scr@\scr@dsc@current @style}%
@neededoptionstest}%
@@ -3214,7 +3387,7 @@
\else
\@removefromreset{#2}{\scr@local@counterwithin}%
\@addtoreset{#2}{\scr@local@counterwithin}%
- \expandafter\def\csname the#2\expandafter\endcsname{%
+ \expandafter\def\csname the#2\expandafter\endcsname\expandafter{%
\csname the\scr@local@counterwithin\endcsname.\arabic{#2}}%
\fi
\fi
@@ -3251,22 +3424,23 @@
}{%
\DeclareSectionNumberDepth{#2}{\csname #2numdepth\endcsname}%
}%
- \scr@ifundefinedorrelax{#2tocdepth}{%
- \expandafter\let\csname #2tocdepth\expandafter\endcsname
- \csname #2numdepth\endcsname
- }{}%
\expandafter\providecommand\expandafter*%
\csname add#2tocentry\endcsname[2]{%
\addtocentrydefault{#2}{##1}{##2}%
}%
+ \scr@ifundefinedorrelax{scr@dte@#2@style}{%
+ }{%
+ \DeclareTOCStyleEntry[\scr@dsc@tocstyle@options]{%
+ \@nameuse{scr@dte@#2@style}%
+ }{#2}%
+ }%
\scr@ifundefinedorrelax{l@#2}{%
- \expandafter\edef\csname l@#2\endcsname{%
- \noexpand\bprot@dottedtocline
- \expandafter\noexpand\csname #2tocdepth\endcsname
- \expandafter\noexpand\csname scr@#2@tocindent\endcsname
- \expandafter\noexpand\csname scr@#2@tocnumwidth\endcsname
- }%
+ \DeclareTOCStyleEntry[\scr@dsc@tocstyle@options]{default}{#2}%
}{}%
+ \scr@ifundefinedorrelax{toclevel@part}{}{%
+ \expandafter\let\csname toclevel@#2\expandafter\endcsname
+ \csname #2tocdepth\endcsname
+ }%
}%
}%
\let\scr@dsc@current\relax
@@ -3326,9 +3500,9 @@
}
\newcommand*{\DeclareSectionCommands}[2][]{%
\edef\reserved@a{#2}%
- \let\scr@local@levelincrease\z@
- \let\scr@local@leveloffset\z@
- \let\scr@local@tocleveloffset\z@
+ \def\scr@local@levelincrease{\z@}%
+ \def\scr@local@leveloffset{\z@}%
+ \def\scr@local@tocleveloffset{\z@}%
\@for\reserved@a:=\reserved@a\do{%
\edef\reserved@a{%
\unexpanded{\DeclareSectionCommand[{#1}]}{\reserved@a}%
@@ -3341,9 +3515,9 @@
}
\newcommand*{\DeclareNewSectionCommands}[2][]{%
\edef\reserved@a{#2}%
- \let\scr@local@levelincrease\z@
- \let\scr@local@leveloffset\z@
- \let\scr@local@tocleveloffset\z@
+ \def\scr@local@levelincrease{\z@}%
+ \def\scr@local@leveloffset{\z@}%
+ \def\scr@local@tocleveloffset{\z@}%
\@for\reserved@a:=\reserved@a\do{%
\@ifundefined{\reserved@a}{}{%
\ClassError{\KOMAClassName}{%
@@ -3371,9 +3545,9 @@
}
\newcommand*{\RedeclareSectionCommands}[2][]{%
\edef\reserved@a{#2}%
- \let\scr@local@levelincrease\z@
- \let\scr@local@leveloffset\z@
- \let\scr@local@tocleveloffset\z@
+ \def\scr@local@levelincrease{\z@}%
+ \def\scr@local@leveloffset{\z@}%
+ \def\scr@local@tocleveloffset{\z@}%
\@for\reserved@a:=\reserved@a\do{%
\@ifundefined{\reserved@a}{%
\ClassError{\KOMAClassName}{%
@@ -3399,9 +3573,9 @@
}
\newcommand*{\ProvideSectionCommands}[2][]{%
\edef\reserved@a{#2}%
- \let\scr@local@levelincrease\z@
- \let\scr@local@leveloffset\z@
- \let\scr@local@tocleveloffset\z@
+ \def\scr@local@levelincrease{\z@}%
+ \def\scr@local@leveloffset{\z@}%
+ \def\scr@local@tocleveloffset{\z@}%
\@for\reserved@a:=\reserved@a\do{%
\@ifundefined{\reserved@a}{%
\edef\reserved@a{%
@@ -3409,7 +3583,7 @@
}%
\reserved@a
}{%
- \scr@dsc@dummyoptions
+ \DefineFamilyKey[.dsc]{KOMAarg}{@else@}{\FamilyKeyStateProcessed}%
\FamilyCounterMacroKey[.dsc]{KOMAarg}{increaselevel}[1]%
{\scr@local@levelincrease}%
\DefineFamilyKey[.dsc]{KOMAarg}{level}{%
@@ -3417,11 +3591,18 @@
\edef\scr@local@leveloffset{%
\the\numexpr\scr@local@leveloffset+\scr@local@levelincrease\relax
}%
+ }%
+ \DefineFamilyKey[.dsc]{KOMAarg}{toclevel}{%
+ \FamilySetCounterMacro{KOMAarg}{toclevel}{\reserved@b}{##1}%
\edef\scr@local@tocleveloffset{%
\the\numexpr\scr@local@tocleveloffset+\scr@local@levelincrease\relax
}%
}%
\FamilyExecuteOptions[.dsc]{KOMAarg}{#1}%
+ \RelaxFamilyKey[.dsc]{KOMAarg}{toclevel}%
+ \RelaxFamilyKey[.dsc]{KOMAarg}{level}%
+ \RelaxFamilyKey[.dsc]{KOMAarg}{increaselevel}%
+ \RelaxFamilyKey[.dsc]{KOMAarg}{@else@}%
}%
}%
\let\scr@local@levelincrease\relax
@@ -3431,19 +3612,11 @@
\newcommand*{\bprot@dottedtocline}[5]{%
\expandafter\ifnum\scr@v@is@gt{2.96}\relax
\ifnum #1>\c@tocdepth \else
- \begingroup
- \@tempcnta 20010
- \advance \@tempcnta by -#1
- \ifnum \@tempcnta>\lastpenalty
- \endgroup
+ \ifnum \lastpenalty<\numexpr 20010-#1\relax
\addpenalty{\@lowpenalty}%
- \else
- \endgroup
\fi
\@dottedtocline{#1}{#2}{#3}{#4}{#5}%
- \@tempcnta 20009
- \advance \@tempcnta by -#1
- \penalty\@tempcnta
+ \penalty \numexpr 20009-#1\relax
\fi
\else
\@dottedtocline{#1}{#2}{#3}{#4}{#5}%
@@ -3594,39 +3767,6 @@
\part*{#1}%
\addpartmark{}%
}
-\newcommand*\l@part[2]{%
- \ifnum \c@tocdepth <\parttocdepth \else
- \addpenalty{\@secpenalty}%
- \addvspace{2.25em \@plus\p@}%
- \setlength{\@tempdima}{\scr@part@tocnumwidth}%
- \if@tocleft
- \ifx\toc@l@number\@empty\else
- \setlength\@tempdima{0\toc@l@number}%
- \fi
- \fi
- \begingroup
- \parindent \z@ \rightskip \@pnumwidth
- \parfillskip -\@pnumwidth
- \leavevmode
- \advance\leftskip\@tempdima
- \hskip -\leftskip
- \usekomafont{partentry}{#1\nobreak
- \usekomafont{partentrypagenumber}{\hfil\nobreak
- \hb@xt@\@pnumwidth{\hss#2}}}\par
- \expandafter\ifnum\scr@v@is@gt{2.96}\relax
- \endgroup
- \penalty20010
- \else
- \if@compatibility
- \global\@nobreaktrue
- \everypar{\global\@nobreakfalse\everypar{}}%
- \else
- \penalty\@highpenalty
- \fi
- \endgroup
- \fi
- \fi
-}
\newcounter{part}
\renewcommand*{\thepart}{\@Roman\c@part}
\newcommand*{\partformat}{\partname~\thepart\autodot}
@@ -3647,42 +3787,6 @@
\aliaskomafont{partprefix}{partnumber}
\newkomafont{partentry}{\usekomafont{disposition}\large}
\newkomafont{partentrypagenumber}{}
-\newcommand*\l@section[2]{%
- \ifnum \c@tocdepth <\sectiontocdepth\else
- \ifnum \lastpenalty<20009
- \addpenalty{\@secpenalty}%
- \fi
- \addvspace{1.0em \@plus\p@}%
- \setlength\@tempdima{\dimexpr\scr@section@tocnumwidth}%
- \if@tocleft
- \ifx\toc@l@number\@empty\else
- \setlength\@tempdima{0\toc@l@number}%
- \fi
- \fi
- \begingroup
- \raggedsectionentry
- \parindent \z@ \advance\rightskip \@pnumwidth
- \parfillskip -\@pnumwidth
- \interlinepenalty\@M
- \leavevmode
- \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip
- \edef\@pnumwidth{\the\dimexpr\@pnumwidth\relax}%
- \usekomafont{sectionentry}{#1\nobreak
- \usekomafont{sectionentrypagenumber}{%
- {\usekomafont{sectionentrydots}{%
- \if@sectionentrywithdots
- \leaders\hbox{$\m@th
- \mkern \@dotsep mu\hbox{.}\mkern \@dotsep
- mu$}%
- \fi
- \hfill}}\nobreak
- \hb@xt@\@pnumwidth{\hss#2}}}\par
- \endgroup
- \expandafter\ifnum\scr@v@is@gt{2.96}\relax
- \penalty20008
- \fi
- \fi
-}
\newcommand*{\raggedsectionentry}{}
\newcommand\addsec{\SecDef\@addsec\@saddsec}
\newcommand*{\@addsec}{}
@@ -3777,9 +3881,10 @@
\DeclareSectionCommand[%
style=part,%
level=\z@,%
+ tocstyle=part,%
toclevel=\m@ne,%
tocindent=\z@,%
- tocnumwidth=2em
+ tocnumwidth=2em%
]{part}
\DeclareSectionCommand[%
style=section,%
@@ -3787,6 +3892,7 @@
indent=\z@,%
beforeskip=-3.5ex \@plus -1ex \@minus -.2ex,%
afterskip=2.3ex \@plus.2ex,%
+ tocstyle=section,%
tocindent=0pt,%
tocnumwidth=1.5em%
]{section}
@@ -3796,6 +3902,7 @@
indent=\z@,%
beforeskip=-3.25ex\@plus -1ex \@minus -.2ex,%
afterskip=1.5ex \@plus .2ex,%
+ tocstyle=subsection,%
tocindent=1.5em,%
tocnumwidth=2.3em%
]{subsection}
@@ -3805,6 +3912,7 @@
indent=\z@,%
beforeskip=-3.25ex\@plus -1ex \@minus -.2ex,%
afterskip=1.5ex \@plus .2ex,%
+ tocstyle=subsection,%
tocindent=3.8em,%
tocnumwidth=3.2em%
]{subsubsection}
@@ -3814,6 +3922,7 @@
indent=\z@,%
beforeskip=3.25ex \@plus1ex \@minus.2ex,%
afterskip=-1em,%
+ tocstyle=subsection,%
tocindent=7.0em,%
tocnumwidth=4.1em%
]{paragraph}
@@ -3823,6 +3932,7 @@
indent=\scr@parindent,%
beforeskip=3.25ex \@plus1ex \@minus .2ex,%
afterskip=-1em,%
+ tocstyle=subsection,%
tocindent=10em,%
tocnumwidth=5em%
]{subparagraph}
@@ -3833,7 +3943,7 @@
\fi
\newcommand*{\scr@fnt@disposition}{\sectfont}
\aliaskomafont{sectioning}{disposition}
-%%% From File: $Id: scrkernel-miscellaneous.dtx 2028 2015-03-23 12:19:51Z kohm $
+%%% From File: $Id: scrkernel-miscellaneous.dtx 2429 2016-04-12 12:10:19Z kohm $
\newif\if@restonecol
\newcommand{\dictum}[2][]{\par%
\begingroup
@@ -3854,7 +3964,7 @@
\newcommand*{\dictumauthorformat}[1]{(#1)}
\newcommand*{\raggeddictumtext}{\raggedright}
\newcommand*{\raggeddictumauthor}{\raggedleft}
-\newkomafont{dictum}{\normalfont\normalcolor\sffamily\small}
+\newkomafont{dictum}{\normalfont\normalcolor\@gr@gsffamily\small}
\newkomafont{dictumauthor}{\itshape}
\aliaskomafont{dictumtext}{dictum}
\setlength{\skip\@mpfootins}{\skip\footins}
@@ -3864,6 +3974,13 @@
\@arabic\c@equation
}
\newcommand*{\new@tpo@label}{\@newl@bel{tpo}}
+\AtBeginDocument{%
+ \if@filesw
+ \immediate\write\@auxout{%
+ \string\providecommand*\string\new@tpo@label[2]{}%
+ }%
+ \fi
+}
\newcommand*{\scr@tpo}{0}
\newcommand*{\is@thispageodd}[1][\is@thispageodd@setlabel]{%
\@bsphack
@@ -3886,9 +4003,11 @@
\fi
\endgroup
\edef\is@thispageodd@setlabel{%
- \unexpanded{\protected@write\@auxout{\let\arabic\relax}}{%
- \noexpand\string
- \noexpand\new@tpo@label{\scr@tpo}{\noexpand\arabic{page}}}%
+ \if@filesw
+ \unexpanded{\protected@write\@auxout{\let\arabic\relax}}{%
+ \noexpand\string
+ \noexpand\new@tpo@label{\scr@tpo}{\noexpand\arabic{page}}}%
+ \fi
}%
#1%
\@esphack
@@ -3948,7 +4067,7 @@
\let\scr@ttl@saved@subparagraph\subparagraph
}
\AfterPackage{titlesec}{%
- \@ifpackagelater{titlesec}{2014/10/09}{%
+ \@ifpackagelater{titlesec}{2016/03/22}{%
\ClassInfo{\KOMAClassName}{%
Deactivating the `titlesec` workaround,\MessageBreak
because package is newer than expected%
@@ -4008,7 +4127,7 @@
\let\scr@ttl@@extract\relax
}%
}
-%%% From File: $Id: scrkernel-pagestyles.dtx 2162 2015-07-15 07:30:52Z kohm $
+%%% From File: $Id: scrkernel-pagestyles.dtx 2304 2015-12-12 08:55:47Z kohm $
\newcommand*{\set@tempdima@hw}{%
\setlength{\@tempdima}{\textwidth}%
\if@mincl
@@ -4103,7 +4222,7 @@
\newcommand*{\indexpagestyle}{plain}
\pagestyle{plain}
\pagenumbering{arabic}
-%%% From File: $Id: scrkernel-floats.dtx 2002 2015-03-12 12:06:17Z kohm $
+%%% From File: $Id: scrkernel-floats.dtx 2429 2016-04-12 12:10:19Z kohm $
\newcommand\marginline[1]{%
\marginpar[\raggedleft{#1}]{\raggedright #1}%
}
@@ -4123,21 +4242,21 @@
\newif\ifscap@alt
\newcommand*{\@captionbeside}{}
\long\def\@captionbeside[#1]#2{%
- \@ifnextchar [%]
+ \kernel@ifnextchar [%]
{\@@captionbeside[{#1}]{#2}}
{\c@pti@nb@sid@[{#1}]{#2}}%
}
\newcommand*{\@@captionbeside}{}
\long\def\@@captionbeside[#1]#2[#3]{%
\def\scap@pos{#3}%
- \@ifnextchar [%]
+ \kernel@ifnextchar [%]
{\@@@captionbeside[{#1}]{#2}}
{\c@pti@nb@sid@[{#1}]{#2}}%
}
\newcommand*{\@@@captionbeside}{}
\long\def\@@@captionbeside[#1]#2[#3]{%
\def\scap@width{#3}%
- \@ifnextchar [%]
+ \kernel@ifnextchar [%]
{\@@@@captionbeside[{#1}]{#2}}
{\setlength{\@tempdima}{#3}%
\addtolength{\@tempdima}{-\linewidth}%
@@ -4148,7 +4267,7 @@
\newcommand*{\@@@@captionbeside}{}
\long\def\@@@@captionbeside[#1]#2[#3]{%
\def\scap@move{#3}%
- \@ifstar
+ \kernel@ifstar
{\scap@alttrue\c@pti@nb@sid@[{#1}]{#2}}
{\scap@altfalse\c@pti@nb@sid@[{#1}]{#2}}%
}
@@ -4229,7 +4348,7 @@
\newif\ifdofullc@p
\dofullc@ptrue
\newif\if@capbreak\@capbreakfalse
-\newcommand*{\setcapindent}{\@ifstar{\@@setcapindent}{\@setcapindent}}
+\newcommand*{\setcapindent}{\kernel@ifstar{\@@setcapindent}{\@setcapindent}}
\newcommand*{\@setcapindent}[1]{%
\setlength{\@tempdima}{#1}%
\ifdim\@tempdima>\hsize
@@ -4256,7 +4375,7 @@
`\string\setcapindent'%
}%
\captionstyle{indent}%
- \@ifstar{\setlength{\captionindent}}{\setlength{\captionindent}}%
+ \kernel@ifstar{\setlength{\captionindent}}{\setlength{\captionindent}}%
}%
}
\newcommand*{\setcaphanging}{\dofullc@ptrue\@capbreakfalse}
@@ -4365,9 +4484,103 @@
\setcaptionwidth{#2}%
}%
}%
+\newcommand*{\setcapdynwidth}[2][]{%
+ \def\cap@width{#2}%
+ \begingroup
+ \edef\@tempa{#1}%
+ \def\@tempb{c}\ifx\@tempa\@tempb
+ \endgroup
+ \def\cap@margin{%
+ \ifdim \cap@width<\z@
+ \ClassWarning{\KOMAClassName}{%
+ caption width less than 0pt not allowed.\MessageBreak
+ Setting caption width to 0pt%
+ }%
+ \let\cap@width\z@
+ \fi
+ \let\cap@left=\hfill\let\cap@right=\hfill}%
+ \else
+ \def\@tempb{l}\ifx\@tempa\@tempb
+ \endgroup
+ \def\cap@margin{%
+ \ifdim \cap@width<\z@
+ \ClassWarning{\KOMAClassName}{%
+ caption width less than 0pt not allowed.\MessageBreak
+ Setting caption width to 0pt%
+ }%
+ \let\cap@width\z@
+ \fi
+ \let\cap@left=\relax\let\cap@right\hfill}%
+ \else
+ \def\@tempb{r}\ifx\@tempa\@tempb
+ \endgroup
+ \def\cap@margin{%
+ \ifdim \cap@width<\z@
+ \ClassWarning{\KOMAClassName}{%
+ caption width less than 0pt not allowed.\MessageBreak
+ Setting caption width to 0pt%
+ }%
+ \let\cap@width\z@
+ \fi
+ \let\cap@left=\hfill\let\cap@right=\relax}%
+ \else
+ \def\@tempb{i}\ifx\@tempa\@tempb
+ \endgroup
+ \def\cap@margin{%
+ \ifdim \cap@width<\z@
+ \ClassWarning{\KOMAClassName}{%
+ caption width less than 0pt not allowed.\MessageBreak
+ Setting caption width to 0pt%
+ }%
+ \let\cap@width\z@
+ \fi
+ \let\cap@left=\relax
+ \let\cap@right=\hfill
+ \if@twoside
+ \ifthispageodd{}{%
+ \let\cap@left=\hfill
+ \let\cap@right=\relax
+ }%
+ \fi
+ }%
+ \else
+ \def\@tempb{o}\ifx\@tempa\@tempb
+ \endgroup
+ \def\cap@margin{%
+ \ifdim \cap@width<\z@
+ \ClassWarning{\KOMAClassName}{%
+ caption width less than 0pt not allowed.\MessageBreak
+ Setting caption width to 0pt%
+ }%
+ \let\cap@width\z@
+ \fi
+ \let\cap@left=\hfill
+ \let\cap@right=\relax
+ \if@twoside
+ \ifthispageodd{}{%
+ \let\cap@left=\relax
+ \let\cap@right=\hfill
+ }%
+ \fi
+ }%
+ \else
+ \ifx \@tempa\@empty\else
+ \ClassError{\KOMAClassName}{%
+ unknown optional position argument%
+ }{%
+ You've used `#1' as position argument at
+ \string\setcaptionwidth,\MessageBreak
+ but only ONE of `c', `l', `r', `i`, `o` ist
+ allowed.\MessageBreak
+ Argument will be ignored, if you'll continue.%
+ }%
+ \fi
+ \endgroup
+ \fi\fi\fi\fi\fi
+}
\newcommand*{\cap@margin}{}
\let\cap@margin=\relax%
-\newcommand*{\setcapmargin}{\@ifstar{\@setcapmargin}{\@@setcapmargin}}
+\newcommand*{\setcapmargin}{\kernel@ifstar{\@setcapmargin}{\@@setcapmargin}}
\newcommand*{\@setcapmargin}[2][\@tempdimb]{%
\def\cap@margin{%
\onelinecaptionsfalse
@@ -4609,15 +4822,19 @@
\newcommand*{\ext@figure}{lof}
\newcommand*{\fnum@figure}{\figureformat}
\newenvironment{figure}{%
- \if@figurecaptionabove\let\caption\captionabove
- \else\let\caption\captionbelow\fi
+ \def\caption{%
+ \if@figurecaptionabove\expandafter\captionabove
+ \else\expandafter\captionbelow\fi
+ }%
\@float{figure}%
}{%
\end@float
}
\newenvironment{figure*}{%
- \if@figurecaptionabove\let\caption\captionabove
- \else\let\caption\captionbelow\fi
+ \def\caption{%
+ \if@figurecaptionabove\expandafter\captionabove
+ \else\expandafter\captionbelow\fi
+ }%
\@dblfloat{figure}%
}{%
\end@dblfloat
@@ -4634,15 +4851,19 @@
\newcommand*{\ext@table}{lot}
\newcommand*{\fnum@table}{\tableformat}
\newenvironment{table}{%
- \if@tablecaptionabove\let\caption\captionabove
- \else\let\caption\captionbelow\fi
+ \def\caption{%
+ \if@tablecaptionabove\expandafter\captionabove
+ \else\expandafter\captionbelow\fi
+ }%
\@float{table}%
}{%
\end@float
}
\newenvironment{table*}{%
- \if@tablecaptionabove\let\caption\captionabove
- \else\let\caption\captionbelow\fi
+ \def\caption{%
+ \if@tablecaptionabove\expandafter\captionabove
+ \else\expandafter\captionbelow\fi
+ }%
\@dblfloat{table}%
}{%
\end@dblfloat
@@ -4784,18 +5005,11 @@
\endgroup
\@footnotemark
}
-%%% From File: $Id: scrkernel-listsof.dtx 2206 2015-09-27 08:08:34Z kohm $
-\renewcommand*{\numberline}[1]{%
- \numberline@box{%
- \numberline@prefix
- \ifstr{#1}{}{#1}{\numberline@numberformat{#1}}%
- \numberline@postfix
- }%
-}
-\newcommand*{\numberline@prefix}{}
-\newcommand*{\numberline@postfix}{\hfil}
-\newcommand*{\numberline@numberformat}[1]{\ifstr{#1}{}{}{#1\autodot}}
-\newcommand*{\numberline@box}[1]{\hb@xt@\@tempdima{#1}}
+%%% From File: $Id: scrkernel-listsof.dtx 2384 2016-03-15 11:58:53Z kohm $
+\g@addto@macro{\numberline@numberpostfix}{\autodot}
+\usetocbasicnumberline[%
+ \ClassInfo{\KOMAClassName}{Redefining `\string\numberline'}%
+]
\newcommand*\@pnumwidth{1.55em}
\newcommand*\@tocrmarg {2.55em}
\newcommand*\@dotsep{4.5}
@@ -4811,7 +5025,7 @@
\setlength{\@tempdima}{\last@l@number}%
\fi%
}
-\newcommand*{\before@starttoc}[1]{
+\newcommand*{\before@starttoc}[1]{%
\let\scr@dottedtocline=\@dottedtocline
\renewcommand*{\@dottedtocline}[3]{%
\scr@dottedtocline{##1}{\z@}{\last@l@number}}%
@@ -4828,6 +5042,24 @@
\expandafter=\csname#1@l@number\endcsname
\fi
}%
+ \begingroup
+ \def\do@endgroup{\endgroup}%
+ \def\do##1{%
+ \scr@ifundefinedorrelax{scr@tso@##1@numwidth}{}{%
+ \typeout{Setting numwidth of `##1' to \last@l@number}%
+ \l@addto@macro\do@endgroup{%
+ \@namedef{scr@tso@##1@numwidth}{\last@l@number}%
+ }%
+ }%
+ \scr@ifundefinedorrelax{scr@tso@##1@indent}{}{%
+ \typeout{Setting indent of `##1' to \string\z@}%
+ \l@addto@macro\do@endgroup{%
+ \@namedef{scr@tso@##1@indent}{\z@}%
+ }%
+ }%
+ }%
+ \@nameuse{scr@dte@donumwidth}%
+ \do@endgroup
}
\newcommand*{\after@starttoc}[1]{%
\protected@write\@auxout{}{%
@@ -5047,7 +5279,7 @@
\par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax
}
\newcommand*\indexname{Index}
-%%% From File: $Id: scrkernel-listsandtabulars.dtx 2028 2015-03-23 12:19:51Z kohm $
+%%% From File: $Id: scrkernel-listsandtabulars.dtx 2318 2016-01-29 11:40:15Z kohm $
\if@twocolumn
\setlength{\leftmargini}{2em}
\else
@@ -5194,7 +5426,7 @@
}%
\item\is@thispageodd@setlabel\nobreak\ignorespaces
}
-\newcommand*\descfont{\sffamily\bfseries}
+\newcommand*\descfont{\@gr@gsffamily\bfseries}
\newcommand*{\scr@fnt@descriptionlabel}{\descfont}
\newkomafont{labelinglabel}{}
\newkomafont{labelingseparator}{}