From 83b4f07dfc662cf6c2632a34e88a1aad0009e35a Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Mon, 19 Jan 2015 23:43:25 +0000 Subject: koma-script (19jan15) git-svn-id: svn://tug.org/texlive/trunk@36095 c570f23f-e606-0410-a88d-b1316a301751 --- .../texmf-dist/tex/latex/koma-script/scrartcl.cls | 916 +++++++++++++++------ 1 file changed, 661 insertions(+), 255 deletions(-) (limited to 'Master/texmf-dist/tex/latex/koma-script/scrartcl.cls') diff --git a/Master/texmf-dist/tex/latex/koma-script/scrartcl.cls b/Master/texmf-dist/tex/latex/koma-script/scrartcl.cls index 32a5b3a8b58..bcd6de7667a 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-sections.dtx (with options: `class,article,prepare') %% scrkernel-compatibility.dtx (with options: `class,article,option') %% scrkernel-miscellaneous.dtx (with options: `class,article,option') %% scrkernel-language.dtx (with options: `class,article,option') @@ -72,7 +73,7 @@ %% find a complete unmodified copy of LaTeX2e at %% . %% -%%% From File: $Id: scrkernel-version.dtx 1815 2014-10-28 10:15:59Z kohm $ +%%% From File: $Id: scrkernel-version.dtx 1900 2015-01-14 07:16:26Z kohm $ \begingroup \catcode`\@11\relax \ifx\KOMAScriptVersion\undefined @@ -94,7 +95,7 @@ \fi } \fi - \@CheckKOMAScriptVersion{2014/10/28 v3.14 KOMA-Script}% + \@CheckKOMAScriptVersion{2015/01/14 v3.15 KOMA-Script}% \endgroup \newcommand*{\KOMAClassName}{% scrartcl% @@ -103,19 +104,54 @@ article% } \ProvidesClass{\KOMAClassName}[% - 2014/10/28 v3.14 KOMA-Script + 2015/01/14 v3.15 KOMA-Script document class (\ClassName)% ] -%%% From File: $Id: scrkernel-basics.dtx 1809 2014-10-17 08:02:00Z kohm $ +%%% From File: $Id: scrkernel-basics.dtx 1897 2015-01-02 12:04:12Z kohm $ \RequirePackage{scrkbase}[\KOMAScriptVersion] -%%% From File: $Id: tocbasic.dtx 1782 2014-08-18 10:48:22Z kohm $ +%%% From File: $Id: tocbasic.dtx 1871 2014-12-10 09:06:20Z kohm $ \RequirePackage{tocbasic}[% - 2014/10/28 v3.14 KOMA-Script + 2015/01/14 v3.15 KOMA-Script ] \addtotoclist{toc} \addtotoclist[float]{lof} \addtotoclist[float]{lot} -%%% From File: $Id: scrkernel-compatibility.dtx 1814 2014-10-28 10:06:00Z kohm $ +%%% From File: $Id: scrkernel-sections.dtx 1891 2014-12-23 17:19:04Z kohm $ +\newcommand*{\scr@dotchangeatdocument}[1]{% + \ClassError{\KOMAClassName}{% + change of end dot feature after \string\begin{document}% + }{% + You've tried to set `numbers=#1' after \string\begin{document},\MessageBreak + but this option is only allowed at the document preamble.\MessageBreak + See KOMA-Script manual for more information about.% + }% +} +\newcommand*{\scr@osectarg}{0} +\newcommand*{\scr@activate@xsection}[1]{% + \renewcommand*{\scr@osectarg}{#1}% +} +\newif\if@altsecnumformat\@altsecnumformatfalse +\newif\if@autodot +\renewcommand*{\@autodottrue}{\global\let\if@autodot\iftrue} +\renewcommand*{\@autodotfalse}{\global\let\if@autodot\iffalse} +\@autodotfalse +\newcommand*{\scr@altsecnumhook}{} +\AtBeginDocument{\scr@altsecnumhook} +\newcommand*{\scr@altsecnumhooktrue}{% + \@altsecnumformattrue\global\let\@altsecnumformatfalse\@altsecnumformattrue +} +\newcommand*{\scr@altsecnumhookfalse}{% + \@altsecnumformatfalse\global\let\@altsecnumformattrue\@altsecnumformatfalse +} +\newcommand*{\size@part}{} +\newcommand*{\size@partnumber}{} +\newcommand*{\size@section}{} +\newcommand*{\size@subsection}{} +\newcommand*{\size@subsubsection}{} +\newcommand*{\size@paragraph}{} +\newcommand*{\size@subparagraph}{} +\newcommand*{\sectfont}{\normalcolor\sffamily\bfseries} +%%% From File: $Id: scrkernel-compatibility.dtx 1870 2014-12-10 09:04:55Z kohm $ \newif\if@scr@emulatestandardclasses \let\scr@emulatestandardclassestrue\relax \let\scr@emulatestandardclassesfalse\relax @@ -221,6 +257,7 @@ \@namedef{scr@v@3.13}{12} \@namedef{scr@v@3.13a}{13} \@namedef{scr@v@3.14}{13} +\@namedef{scr@v@3.15}{14} \@namedef{scr@v@last}{14} %%% From File: $Id: scrkernel-miscellaneous.dtx 1803 2014-10-09 08:18:02Z kohm $ \KOMA@key{draft}[true]{% @@ -238,7 +275,7 @@ \DeclareOption{leqno}{\input{leqno.clo}} \DeclareOption{fleqn}{\input{fleqn.clo}} %%% From File: $Id: scrkernel-language.dtx 1767 2014-06-26 09:20:18Z kohm $ -%%% From File: $Id: scrkernel-fonts.dtx 1483 2013-10-31 15:12:30Z mjk $ +%%% From File: $Id: scrkernel-fonts.dtx 1829 2014-11-21 09:27:52Z kohm $ \newcommand*\@ptsize{% 11% } @@ -374,7 +411,7 @@ {onecolumn}{twocolumn=false} \DeclareOption*{% \x@paper} -%%% From File: $Id: scrkernel-paragraphs.dtx 1767 2014-06-26 09:20:18Z kohm $ +%%% From File: $Id: scrkernel-paragraphs.dtx 1824 2014-11-14 08:02:28Z kohm $ \newcommand*{\setparsizes}[3]{% \edef\f@parindent{\the\parindent}% \edef\f@parskip{\the\parskip}% @@ -507,7 +544,7 @@ \KOMA@DeclareDeprecatedOption{halfparskip+}{parskip=half+} \KOMA@DeclareDeprecatedOption{halfparskip*}{parskip=half*} \KOMA@DeclareDeprecatedOption{parindent}{parskip=false} -%%% From File: $Id: scrkernel-title.dtx 1675 2014-02-03 07:37:48Z mjk $ +%%% From File: $Id: scrkernel-title.dtx 1868 2014-12-09 12:45:22Z kohm $ \newif\if@titlepage \@titlepagefalse \newif\if@titlepageiscoverpage @@ -530,16 +567,7 @@ \KOMA@ifkey{abstract}{@abstrt} \KOMA@DeclareStandardOption{abstracton}{abstract=true} \KOMA@DeclareStandardOption{abstractoff}{abstract=false} -%%% From File: $Id: scrkernel-sections.dtx 1788 2014-09-11 13:41:04Z kohm $ -\newcommand*{\scr@dotchangeatdocument}[1]{% - \ClassError{\KOMAClassName}{% - change of end dot feature after \string\begin{document}% - }{% - You've tried to set `numbers=#1' after \string\begin{document},\MessageBreak - but this option is only allowed at the document preamble.\MessageBreak - See KOMA-Script manual for more information about.% - }% -} +%%% From File: $Id: scrkernel-sections.dtx 1891 2014-12-23 17:19:04Z kohm $ \KOMA@key{numbers}{% \KOMA@set@ncmdkey{numbers}{@tempa}{% {autoendperiod}{0},{autoenddot}{0},{auto}{0},% @@ -564,24 +592,9 @@ \fi \fi } -\newcommand*{\scr@altsecnumhook}{} -\AtBeginDocument{\scr@altsecnumhook} -\newcommand*{\scr@altsecnumhooktrue}{% - \@altsecnumformattrue\global\let\@altsecnumformatfalse\@altsecnumformattrue -} -\newcommand*{\scr@altsecnumhookfalse}{% - \@altsecnumformatfalse\global\let\@altsecnumformattrue\@altsecnumformatfalse -} \KOMA@DeclareDeprecatedOption{pointednumbers}{numbers=enddot} \KOMA@DeclareDeprecatedOption{pointlessnumbers}{numbers=noenddot} -\newcommand*{\sectfont}{\normalcolor\sffamily\bfseries} -\newcommand*{\size@part}{} -\newcommand*{\size@partnumber}{} -\newcommand*{\size@section}{} -\newcommand*{\size@subsection}{} -\newcommand*{\size@subsubsection}{} -\newcommand*{\size@paragraph}{} -\newcommand*{\size@subparagraph}{} +\KOMA@ifkey{sectionentrydots}{@sectionentrywithdots} \KOMA@key{headings}{% \KOMA@set@ncmdkey{headings}{@tempa}{% {big}{0},% @@ -645,10 +658,6 @@ \KOMA@DeclareDeprecatedOption{bigheadings}{headings=big} \KOMA@DeclareDeprecatedOption{normalheadings}{headings=normal} \KOMA@DeclareDeprecatedOption{smallheadings}{headings=small} -\newcommand*{\scr@osectarg}{0} -\newcommand*{\scr@activate@xsection}[1]{% - \renewcommand*{\scr@osectarg}{#1}% -} %%% From File: $Id: scrkernel-pagestyles.dtx 1774 2014-07-07 07:15:22Z kohm $ \newif\if@hsl \KOMA@key{headsepline}[true]{% @@ -864,7 +873,7 @@ \csname FN@mf@prepare\endcsname \ifhmode\spacefactor\@x@sf\fi \relax} -%%% From File: $Id: scrkernel-listsof.dtx 1720 2014-03-05 08:03:10Z kohm $ +%%% From File: $Id: scrkernel-listsof.dtx 1872 2014-12-10 12:51:37Z kohm $ \newif\if@tocleft \KOMA@key{toc}{% \KOMA@set@ncmdkey{toc}{@tempa}{% @@ -880,7 +889,9 @@ {flat}{8},{left}{8},% {graduated}{9},{indent}{9},{indented}{9},% {indenttextentries}{10},{indentunnumbered}{10},{numberline}{10},% - {leftaligntextentries}{11},{leftalignunnumbered}{11},{nonumberline}{11}% + {leftaligntextentries}{11},{leftalignunnumbered}{11},{nonumberline}{11},% + {sectionentrywithdots}{12},{sectionentrydotfill}{12}, + {sectionentrywithoutdots}{13},{sectionentryfill}{13}% }{#1}% \ifx\FamilyKeyState\FamilyKeyStateProcessed \ifcase \@tempa\relax @@ -907,6 +918,10 @@ \setuptoc{toc}{numberline}% \or \unsettoc{toc}{numberline}% + \or + \KOMAoptions{sectionentrydots=true}% + \or + \KOMAoptions{sectionentrydots=false}% \fi \fi } @@ -1165,8 +1180,8 @@ headings=big% } \KOMAProcessOptions\relax -%%% From File: $Id: scrkernel-compatibility.dtx 1814 2014-10-28 10:06:00Z kohm $ -%%% From File: $Id: scrkernel-fonts.dtx 1483 2013-10-31 15:12:30Z mjk $ +%%% From File: $Id: scrkernel-compatibility.dtx 1870 2014-12-10 09:04:55Z kohm $ +%%% From File: $Id: scrkernel-fonts.dtx 1829 2014-11-21 09:27:52Z kohm $ \newcommand*\scr@setlength[4]{% \ifnum\scr@compatibility<\@nameuse{scr@v@3.12}\relax \setlength{#1}{#2 \@plus#3 \@minus#4}% @@ -1644,7 +1659,7 @@ }\reserved@a \fi \fi -%%% From File: $Id: scrkernel-paragraphs.dtx 1767 2014-06-26 09:20:18Z kohm $ +%%% From File: $Id: scrkernel-paragraphs.dtx 1824 2014-11-14 08:02:28Z kohm $ \setlength{\lineskip}{\p@} \setlength{\normallineskip}{\p@} \setlength{\columnsep}{10\p@} @@ -1772,7 +1787,7 @@ \@lowpenalty = 51 \@medpenalty =151 \@highpenalty =301 -%%% From File: $Id: scrkernel-title.dtx 1675 2014-02-03 07:37:48Z mjk $ +%%% From File: $Id: scrkernel-title.dtx 1868 2014-12-09 12:45:22Z kohm $ \newcommand*{\@extratitle}{}% \newcommand{\extratitle}[1]{\gdef\@extratitle{% #1% @@ -2109,24 +2124,31 @@ \if@twocolumn\else\endquotation\fi \fi } -%%% From File: $Id: scrkernel-sections.dtx 1788 2014-09-11 13:41:04Z kohm $ -\newcommand*\appendix{\par% - \setcounter{section}{0}% - \setcounter{subsection}{0}% - \gdef\thesection{\@Alph\c@section}% - \csname appendixmore\endcsname +\newcommand*\abstractname{Abstract} +%%% From File: $Id: scrkernel-sections.dtx 1891 2014-12-23 17:19:04Z kohm $ +\setcounter{secnumdepth}{3} +\newcommand*{\ifnumbered}[1]{% + \scr@ifundefinedorrelax{#1numdepth}{% + \@secondoftwo + }{% + \expandafter\ifnum \@nameuse{#1numdepth}>\c@secnumdepth + \expandafter\@secondoftwo + \else + \expandafter\@firstoftwo + \fi + }% } -\newcommand*\addsecmark[1]{% - \begingroup - \c@secnumdepth=\m@ne - \sectionmark{#1}% - \endgroup +\newcommand*{\ifunnumbered}[1]{% + \scr@ifundefinedorrelax{#1numdepth}{% + \@firstoftwo + }{% + \expandafter\ifnum \@nameuse{#1numdepth}>\c@secnumdepth + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + }% } -\newif\if@altsecnumformat\@altsecnumformatfalse -\newif\if@autodot -\renewcommand*{\@autodottrue}{\global\let\if@autodot\iftrue} -\renewcommand*{\@autodotfalse}{\global\let\if@autodot\iffalse} -\@autodotfalse \newcommand{\@maybeautodot}[1]{\if@autodot\else\begingroup% \expandafter\@@maybeautodot #1\@stop\endgroup\fi } @@ -2145,6 +2167,7 @@ \fi \@@maybeautodot } +\newcommand*\autodot{\if@altsecnumformat.\fi} \newcommand*{\scr@saved@startsection}[6]{% \if@noskipsec \leavevmode \fi \par @@ -2367,75 +2390,425 @@ \if@autodot\if@filesw\immediate\write\@mainaux{% \string\global\string\@altsecnumformattrue}% \fi\fi} -\newcommand*\autodot{\if@altsecnumformat.\fi} -\setcounter{secnumdepth}{3} -\newcommand*{\partnumdepth}{% - \z@ -} -\newcommand*{\sectionnumdepth}{\@ne} -\newcommand*{\subsectionnumdepth}{\tw@} -\newcommand*{\subsubsectionnumdepth}{\thr@@} -\newcommand*{\paragraphnumdepth}{4} -\newcommand*{\subparagraphnumdepth}{5} -\newcommand*{\ifnumbered}[1]{% - \scr@ifundefinedorrelax{#1numdepth}{% - \@secondoftwo +\newcommand*{\raggedsection}{} +\let\raggedsection\raggedright +\DefineFamily{KOMAarg} +\DefineFamilyMember[.dsc]{KOMAarg} +\newcommand*{\DeclareSectionCommand}[2][]{% + \edef\reserved@a{% + \noexpand\FamilyStringKey[.dsc]{KOMAarg}{style}{% + \expandafter\noexpand\csname scr@#2@style\endcsname + }% + }\reserved@a + \scr@ifundefinedorrelax{scr@local@levelincrease}{% + \RelaxFamilyKey[.dsc]{KOMAarg}{increaselevel}% }{% - \expandafter\ifnum \@nameuse{#1numdepth}>\c@secnumdepth - \expandafter\@secondoftwo - \else - \expandafter\@firstoftwo + \FamilyCounterMacroKey[.dsc]{KOMAarg}{increaselevel}[1]% + {\scr@local@levelincrease}% + }% + \scr@ifundefinedorrelax{scr@local@leveloffset}{% + \edef\reserved@a{% + \noexpand\FamilyCounterMacroKey[.dsc]{KOMAarg}{level}{% + \expandafter\noexpand\csname #2numdepth\endcsname}% + }\reserved@a + }{% + \edef\reserved@a{% + \noexpand\DefineFamilyKey[.dsc]{KOMAarg}{level}{% + \noexpand\FamilySetCounterMacro{KOMAarg}{level}{% + \expandafter\noexpand\csname #2numdepth\endcsname + }% + \unexpanded{% + {\numexpr ##1+\scr@local@leveloffset\relax}% + \edef\scr@local@leveloffset{% + \the\numexpr\scr@local@leveloffset+\scr@local@levelincrease\relax + }% + }% + }% + }\reserved@a + }% + \edef\reserved@a{% + \noexpand\FamilyLengthMacroKey[.dsc]{KOMAarg}{indent}{% + \expandafter\noexpand\csname scr@#2@sectionindent\endcsname}% + }\reserved@a + \edef\reserved@a{% + \noexpand\FamilyLengthMacroKey[.dsc]{KOMAarg}{beforeskip}{% + \expandafter\noexpand\csname scr@#2@sectionbeforeskip\endcsname}% + }\reserved@a + \edef\reserved@a{% + \noexpand\FamilyLengthMacroKey[.dsc]{KOMAarg}{afterskip}{% + \expandafter\noexpand\csname scr@#2@sectionafterskip\endcsname}% + }\reserved@a + \edef\reserved@a{% + \noexpand\DefineFamilyKey[.dsc]{KOMAarg}{font}{% + \noexpand\IfExistskomafont{#2}{% + \noexpand\setkomafont + }{% + \noexpand\newkomafont + }{#2}{####1}% + \noexpand\FamilyKeyStateProcessed + }% + }\reserved@a + \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 #2tocdepth\endcsname}% + }\reserved@a + }{% + \edef\reserved@a{% + \noexpand\DefineFamilyKey[.dsc]{KOMAarg}{toclevel}{% + \noexpand\FamilySetCounterMacro{KOMAarg}{toclevel}{% + \expandafter\noexpand\csname #2tocdepth\endcsname + }% + \unexpanded{% + {\numexpr ##1+\scr@local@tocleveloffset\relax}% + \edef\scr@local@tocleveloffset{% + \the\numexpr\scr@local@tocleveloffset+\scr@local@levelincrease\relax + }% + }% + }% + }\reserved@a + }% + \edef\reserved@a{% + \noexpand\FamilyLengthMacroKey[.dsc]{KOMAarg}{tocindent}{% + \expandafter\noexpand\csname scr@#2@tocindent\endcsname}% + }\reserved@a + \edef\reserved@a{% + \noexpand\FamilyLengthMacroKey[.dsc]{KOMAarg}{tocnumwidth}{% + \expandafter\noexpand\csname scr@#2@tocnumwidth\endcsname}% + }\reserved@a + \FamilyExecuteOptions[.dsc]{KOMAarg}{#1}% + \begingroup + \scr@ifundefinedorrelax{#2numdepth}{% + \scr@declaresectioncommanderror{#2}{section level}{level}% + }{}% + \scr@ifundefinedorrelax{scr@#2@sectionindent}{% + \scr@declaresectioncommanderror{#2}{section indent}{indent}% + }{}% + \scr@ifundefinedorrelax{scr@#2@sectionbeforeskip}{% + \scr@declaresectioncommanderror{#2}{before section skip}{beforeskip}% + }{}% + \scr@ifundefinedorrelax{scr@#2@sectionafterskip}{% + \scr@declaresectioncommanderror{#2}{after section skip}{afterskip}% + }{}% + \IfExistskomafont{#2}{}{% + \scr@declaresectioncommanderror{#2}{font}{font}% + }{}% + \scr@ifundefinedorrelax{scr@#2@tocindent}{% + \scr@declaresectioncommanderror{#2}{toc entry indent}{tocindent}% + }{}% + \scr@ifundefinedorrelax{scr@#2@tocnumwidth}{% + \scr@declaresectioncommanderror{#2}{toc entry number + width}{tocnumwidth}% + }{}% + \endgroup + \@firstofone{% + \@ifundefined{c@#2}{\newcounter{#2}}{}% + \ifx\scr@local@counterwithin\relax + \else\ifx\scr@local@counterwithin\@empty + \@namedef{the#2}{\arabic{#2}}% + \else + \@removefromreset{#2}{\scr@local@counterwithin}% + \@addtoreset{#2}{\scr@local@counterwithin}% + \expandafter\def\csname the#2\expandafter\endcsname{% + \csname the\scr@local@counterwithin\endcsname.\arabic{#2}}% + \fi \fi + \@ifundefined{#2format}{% + \@namedef{#2format}{\csname the#2\endcsname\autodot\enskip}% + }{}% + \ifstr{\csname scr@#2@style\endcsname}{}{% + \ClassInfo{\KOMAClassName}{% + not defining `\string\csname #2\endcsname' due to\MessageBreak + empty section style% + }% + }{% + \scr@ifundefinedorrelax{scr@#2@style}{% + \ClassWarning{\KOMAClassName}{using default section style}% + \@namedef{scr@#2@style}{section}% + }{}% + \expandafter\edef\csname #2\endcsname{% + \noexpand\scr@ifundefinedorrelax{% + scr@start\csname scr@#2@style\endcsname}{% + \noexpand\ClassError{\noexpand\KOMAClassName}{% + section style `\csname scr@#2@style\endcsname' not defined}{% + A not yet defined section style `\csname scr@#2@style\endcsname' + has been setup for\MessageBreak + `\expandafter\string\csname #2\endcsname'. You should either setup + another style\MessageBreak + or define the style.\MessageBreak + If you'll continue, style `section' will be used as an emergency + fallback.% + }% + \noexpand\def\expandafter\noexpand\csname scr@#2@style\endcsname + {section}% + }{}% + \expandafter\noexpand + \csname scr@start\csname scr@#2@style\endcsname\endcsname + {#2}% + \expandafter\noexpand\csname #2numdepth\endcsname + \expandafter\noexpand\csname scr@#2@sectionindent\endcsname + \expandafter\noexpand\csname scr@#2@sectionbeforeskip\endcsname + \expandafter\noexpand\csname scr@#2@sectionafterskip\endcsname{% + \noexpand\ifdim\noexpand\glueexpr + \expandafter\noexpand\csname scr@#2@sectionbeforeskip\endcsname + <\noexpand\z@ + \unexpanded{% + \ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax + \setlength{\parfillskip}{\z@ plus 1fil}% + \fi + }% + \noexpand\fi + \unexpanded{% + \raggedsection\normalfont\sectfont\nobreak\usekomafont{#2}% + }% + }% + }% + }% + \@ifundefined{DeclareSectionNumberDepth}{% + \@ifundefined{#2markformat}{% + \@namedef{#2markformat}{\csname the#2\endcsname\autodot\endskip}% + }{}% + \@ifundefined{#2mark}{% + \expandafter\let\csname #2mark\endcsname\@gobble + }{}% + }{% + \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{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 + }% + }{}% }% } -\newcommand*{\ifunnumbered}[1]{% - \scr@ifundefinedorrelax{#1numdepth}{% - \@firstoftwo +\newcommand*{\scr@declaresectioncommanderror}[3]{% + \ClassError{\KOMAClassName}{% + #2 of \expandafter\string\csname #1\endcsname\space unknown% }{% - \expandafter\ifnum \@nameuse{#1numdepth}>\c@secnumdepth - \expandafter\@firstoftwo - \else - \expandafter\@secondoftwo - \fi + Please use option `#3' to declare the #2.\MessageBreak + If you'll continue, declaration will be ignored% }% + \aftergroup\@gobbletwo } -\newcounter{part} -\renewcommand*{\thepart}{\@Roman\c@part} -\newcommand*{\partformat}{\partname~\thepart\autodot} -\newcounter{section} -\renewcommand*{\thesection}{\@arabic\c@section} -\newcommand*\sectionmarkformat{\thesection\autodot\enskip} -\newcounter{subsection}[section] -\renewcommand*{\thesubsection}{\thesection.\@arabic\c@subsection} -\newcommand*\subsectionmarkformat{\thesubsection\autodot\enskip} -\newcounter{subsubsection}[subsection] -\renewcommand*{\thesubsubsection}{% - \thesubsection.\@arabic\c@subsubsection +\newcommand*{\DeclareNewSectionCommand}[2][]{% + \@ifundefined{#2}{% + \DeclareSectionCommand[{#1}]{#2}% + }{% + \ClassError{\KOMAClassName}{% + command `\expandafter\string\csname #1\endcsname` already defined% + }{% + You've tried to define the section command `\expandafter\string\csname + #1\endcsname` newly,\MessageBreak + but a command, token, box or length with this name already + exists.\MessageBreak + Maybe you should use one of \string\DeclareSectionCommand, + \string\RedeclareSectionCommand,\MessageBreak + or \string\ProvideSectionCommand.\MessageBreak + If you'll continue, the command will be irgnored.% + }% + }% } -\newcounter{paragraph}[subsubsection] -\renewcommand*{\theparagraph}{\thesubsubsection.\@arabic\c@paragraph} -\newcounter{subparagraph}[paragraph] -\renewcommand*{\thesubparagraph}{% - \theparagraph.\@arabic\c@subparagraph +\newcommand*{\RedeclareSectionCommand}[2][]{% + \@ifundefined{#2}{% + \ClassError{\KOMAClassName}{% + command `\expandafter\string\csname #1\endcsname` not defined% + }{% + You've tried to re-define the section command `\expandafter\string\csname + #1\endcsname`,\MessageBreak + but a command with this name does not exists.\MessageBreak + Maybe you should use one of \string\DeclareSectionCommand, + \string\DeclareNewSectionCommand,\MessageBreak + or \string\ProvideSectionCommand.\MessageBreak + If you'll continue, the command will be irgnored.% + }% + }{% + \DeclareSectionCommand[{#1}]{#2}% + }% } -\newcommand*{\othersectionlevelsformat}[3]{#3\autodot\enskip} -\renewcommand*{\@seccntformat}[1]{% - \protect\othersectionlevelsformat{#1}{% - \expandafter\aftergroup\noexpand\@gobble}{\csname the#1\endcsname}% +\newcommand*{\ProvideSectionCommand}[2][]{% + \@ifundefined{#2}{% + \DeclareSectionCommand[{#1}]{#2}% + }{% + \ClassInfo{\KOMAClassName}{% + \string\ProvideSectionCommand{#1} ignored% + }% + }% +} +\newcommand*{\DeclareSectionCommands}[2][]{% + \edef\reserved@a{#2}% + \let\scr@local@levelincrease\z@ + \let\scr@local@leveloffset\z@ + \let\scr@local@tocleveloffset\z@ + \@for\reserved@a:=\reserved@a\do{% + \edef\reserved@a{% + \unexpanded{\DeclareSectionCommand[{#1}]}{\reserved@a}% + }% + \reserved@a + }% + \let\scr@local@levelincrease\relax + \let\scr@local@leveloffset\relax + \let\scr@local@tocleveloffset\relax +} +\newcommand*{\DeclareNewSectionCommands}[2][]{% + \edef\reserved@a{#2}% + \let\scr@local@levelincrease\z@ + \let\scr@local@leveloffset\z@ + \let\scr@local@tocleveloffset\z@ + \@for\reserved@a:=\reserved@a\do{% + \@ifundefined{\reserved@a}{}{% + \ClassError{\KOMAClassName}{% + command `\expandafter\string\csname\reserved@a\endcsname` already + defined% + }{% + You've tried to define the section command + `\expandafter\string\csname\reserved@a\endcsname` newly,\MessageBreak + but a command, token, box or length with this name already + exists.\MessageBreak + Maybe you should use one of \string\DeclareSectionCommand, + \string\RedeclareSectionCommand,\MessageBreak + or \string\ProvideSectionCommand.\MessageBreak + Nevertheless, if you'll continue, the command will be defined.% + }% + }% + \edef\reserved@a{% + \unexpanded{\DeclareSectionCommand[{#1}]}{\reserved@a}% + }% + \reserved@a + }% + \let\scr@local@levelincrease\relax + \let\scr@local@leveloffset\relax + \let\scr@local@tocleveloffset\relax +} +\newcommand*{\RedeclareSectionCommands}[2][]{% + \edef\reserved@a{#2}% + \let\scr@local@levelincrease\z@ + \let\scr@local@leveloffset\z@ + \let\scr@local@tocleveloffset\z@ + \@for\reserved@a:=\reserved@a\do{% + \@ifundefined{\reserved@a}{% + \ClassError{\KOMAClassName}{% + command `\expandafter\string\csname\reserved@a\endcsname` not defined% + }{% + You've tried to re-define the section command + `\expandafter\string\csname\reserved@a\endcsname`,\MessageBreak + but a command with this name does not exists.\MessageBreak + Maybe you should use one of \string\DeclareSectionCommand, + \string\DeclareNewSectionCommand,\MessageBreak + or \string\ProvideSectionCommand.\MessageBreak + Nevertheless, if you'll continue, the command will be defined.% + }% + }{}% + \edef\reserved@a{% + \unexpanded{\DeclareSectionCommand[{#1}]}{\reserved@a}% + }% + \reserved@a + }% + \let\scr@local@levelincrease\relax + \let\scr@local@leveloffset\relax + \let\scr@local@tocleveloffset\relax +} +\newcommand*{\ProvideSectionCommands}[2][]{% + \edef\reserved@a{#2}% + \let\scr@local@levelincrease\z@ + \let\scr@local@leveloffset\z@ + \let\scr@local@tocleveloffset\z@ + \@for\reserved@a:=\reserved@a\do{% + \@ifundefined{\reserved@a}{% + \edef\reserved@a{% + \unexpanded{\DeclareSectionCommand[{#1}]}{\reserved@a}% + }% + \reserved@a + }{% + \DefineFamilyKey[.dsc]{KOMAarg}{style}{}% + \FamilyCounterMacroKey[.dsc]{KOMAarg}{increaselevel}[1]% + {\scr@local@levelincrease}% + \DefineFamilyKey[.dsc]{KOMAarg}{level}{% + \FamilySetCounterMacro{KOMAarg}{level}{\reserved@b}{##1}% + \edef\scr@local@leveloffset{% + \the\numexpr\scr@local@leveloffset+\scr@local@levelincrease\relax + }% + \edef\scr@local@tocleveloffset{% + \the\numexpr\scr@local@tocleveloffset+\scr@local@levelincrease\relax + }% + }% + \DefineFamilyKey[.dsc]{KOMAarg}{indent}{}% + \DefineFamilyKey[.dsc]{KOMAarg}{beforeskip}{}% + \DefineFamilyKey[.dsc]{KOMAarg}{afterskip}{}% + \DefineFamilyKey[.dsc]{KOMAarg}{font}{}% + \DefineFamilyKey[.dsc]{KOMAarg}{counterwidthin}{}% + \DefineFamilyKey[.dsc]{KOMAarg}{toclevel}{}% + \DefineFamilyKey[.dsc]{KOMAarg}{tocindent}{}% + \DefineFamilyKey[.dsc]{KOMAarg}{tocnumwidth}{}% + \FamilyExecuteOptions[.dsc]{KOMAarg}{#1}% + }% + }% + \let\scr@local@levelincrease\relax + \let\scr@local@leveloffset\relax + \let\scr@local@tocleveloffset\relax +} +\newcommand*{\bprot@dottedtocline}[5]{% + \ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax + \ifnum #1>\c@tocdepth \else + \begingroup + \@tempcnta 20010 + \advance \@tempcnta by -#1 + \ifnum \@tempcnta>\lastpenalty + \endgroup + \addpenalty{\@lowpenalty}% + \else + \endgroup + \fi + \@dottedtocline{#1}{#2}{#3}{#4}{#5}% + \@tempcnta 20009 + \advance \@tempcnta by -#1 + \penalty\@tempcnta + \fi + \else + \@dottedtocline{#1}{#2}{#3}{#4}{#5}% + \fi +} +\newcommand*\appendix{\par% + \setcounter{section}{0}% + \setcounter{subsection}{0}% + \gdef\thesection{\@Alph\c@section}% + \csname appendixmore\endcsname +} +\newcommand*{\partnumdepth}{% + \z@ +} +\newcommand*{\scr@part@sectionbeforeskip}{% + 4ex } -\newcommand*\partname{Part} -\newcommand*\abstractname{Abstract} -\newcommand*\appendixname{Appendix} \newcommand*{\partheadstartvskip}{% - \addvspace{4ex}% + \addvspace{\@tempskipa}% } \newcommand*{\partheadmidvskip}{% \par\nobreak } +\newcommand*{\scr@part@sectionafterskip}{% + 3ex +} \newcommand*{\partheadendvskip}{% - \vskip 3ex + \vskip\@tempskipa } +\newcommand*{\scr@part@sectionindent}{\z@} +\newcommand*{\scr@part@style}{} \newcommand\part{\par + \@tempskipa=\glueexpr\scr@part@sectionbeforeskip\relax + \ifdim\@tempskipa<\z@\@tempskipa-\@tempskipa\fi \partheadstartvskip% \@afterindentfalse \SecDef\@part\@spart @@ -2488,6 +2861,8 @@ \fi \endgroup \nobreak + \@tempskipa=\glueexpr\scr@part@sectionafterskip\relax + \ifdim\@tempskipa<\z@\@tempskipa-\@tempskipa\fi \partheadendvskip \@afterheading } @@ -2500,6 +2875,8 @@ \sectfont\nobreak\size@part{#1}\strut\@mkboth{}{}\par \endgroup \nobreak + \@tempskipa=\glueexpr\scr@part@sectionafterskip\relax + \ifdim\@tempskipa<\z@\@tempskipa-\@tempskipa\fi \partheadendvskip \@afterheading } @@ -2548,126 +2925,16 @@ \newcommand*{\@saddpart}{\@spart} \newcommand*{\partmark}{} \let\partmark\@gobble -\newcommand*\addsec{\SecDef\@addsec\@saddsec} -\newcommand*{\@addsec}{} -\def\@addsec[#1]#2{\section*{#2}% - \ifnum \scr@osectarg=\z@ - \@scr@tempswafalse - \else - \scr@istest#1=\@nil - \fi - \if@scr@tempswa - \setkeys{KOMAarg.section}{tocentry={#2},head={#2},#1}% - \else - \ifcase \scr@osectarg\relax - \setkeys{KOMAarg.section}{tocentry={#1},head={#1}}% - \or - \setkeys{KOMAarg.section}{tocentry={#2},head={#1}}% - \or - \setkeys{KOMAarg.section}{tocentry={#1},head={#2}}% - \or - \setkeys{KOMAarg.section}{tocentry={#1},head={#1}}% - \fi - \fi - \ifx\scr@ds@tocentry\@empty\else - \addsectiontocentry{}{\scr@ds@tocentry}% - \fi - \addsecmark{\scr@ds@head}% -} -\newcommand*{\@saddsec}[1]{\section*{#1}\addsecmark{}} -\newcommand*{\addsectiontocentry}[2]{% - \addtocentrydefault{section}{#1}{#2}% -} -\newcommand*{\addsubsectiontocentry}[2]{% - \addtocentrydefault{subsection}{#1}{#2}% -} -\newcommand*{\addparagraphtocentry}[2]{% - \addtocentrydefault{paragraph}{#1}{#2}% -} -\newcommand*{\addsubparagraphtocentry}[2]{% - \addtocentrydefault{subparagraph}{#1}{#2}% -} -\newcommand\section{% - \scr@startsection{section}{\sectionnumdepth}{\z@}% - {-3.5ex \@plus -1ex \@minus -.2ex}% - {2.3ex \@plus.2ex}% - {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax - \setlength{\parfillskip}{\z@ plus 1fil}\fi - \raggedsection\normalfont\sectfont\nobreak\size@section}% -} -\newcommand\subsection{% - \scr@startsection{subsection}{\subsectionnumdepth}{\z@}% - {-3.25ex\@plus -1ex \@minus -.2ex}% - {1.5ex \@plus .2ex}% - {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax - \setlength{\parfillskip}{\z@ plus 1fil}\fi - \raggedsection\normalfont\sectfont\nobreak\size@subsection - }% -} -\newcommand\subsubsection{% - \scr@startsection{subsubsection}{\subsubsectionnumdepth}{\z@}% - {-3.25ex\@plus -1ex \@minus -.2ex}% - {1.5ex \@plus .2ex}% - {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax - \setlength{\parfillskip}{\z@ plus 1fil}\fi - \raggedsection\normalfont\sectfont\nobreak\size@subsubsection - }% -} -\newcommand\paragraph{% - \scr@startsection{paragraph}{\paragraphnumdepth}{\z@}% - {3.25ex \@plus1ex \@minus.2ex}% - {-1em}% - {\raggedsection\normalfont\sectfont\nobreak\size@paragraph}% -} -\newcommand\subparagraph{% - \scr@startsection{subparagraph}{\subparagraphnumdepth}{\parindent}% - {3.25ex \@plus1ex \@minus .2ex}% - {-1em}% - {\raggedsection\normalfont\sectfont\nobreak\size@subparagraph}% -} -\newkomafont{minisec}{} -\newcommand\minisec[1]{% - \ifnum \scr@compatibility<\@nameuse{scr@v@3.13a}\relax - \@afterindentfalse \vskip 1.5ex - \else - \if@noskipsec \leavevmode \fi - \par - \@afterindentfalse - \if@nobreak - \everypar{}% - \else - \addpenalty\@secpenalty\addvspace{1.5ex}% - \fi - \fi - {\parindent \z@ - \ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax - \setlength{\parfillskip}{\z@ plus 1fil}\fi - \raggedsection\normalfont\sectfont\nobreak - \usekomafont{minisec}#1\par\nobreak}\nobreak% - \@afterheading -} -\newcommand*{\raggedsection}{} -\let\raggedsection\raggedright -\newcommand*{\raggedpart}{} -\let\raggedpart\raggedsection -\newkomafont{partentry}{\usekomafont{disposition}\large} -\newkomafont{partentrypagenumber}{} -\newkomafont{sectionentry}{\usekomafont{disposition}} -\newkomafont{sectionentrypagenumber}{} -\newcommand*{\scr@fnt@disposition}{\sectfont} -\aliaskomafont{sectioning}{disposition} -\newcommand*{\scr@fnt@part}{\size@part} -\newcommand*{\scr@fnt@partnumber}{\size@partnumber} -\newcommand*{\scr@fnt@section}{\size@section} -\newcommand*{\scr@fnt@subsection}{\size@subsection} -\newcommand*{\scr@fnt@subsubsection}{\size@subsubsection} -\newcommand*{\scr@fnt@paragraph}{\size@paragraph} -\newcommand*{\scr@fnt@subparagraph}{\size@subparagraph} +\newcommand*{\parttocdepth}{\m@ne} +\let\parttocdepth\m@ne +\newcommand*{\scr@part@tocindent}{\z@} +\let\scr@part@tocindent\z@ +\newcommand*{\scr@part@tocnumwidth}{2em} \newcommand*\l@part[2]{% - \ifnum \c@tocdepth >-2\relax + \ifnum \c@tocdepth <\parttocdepth \else \addpenalty{\@secpenalty}% \addvspace{2.25em \@plus\p@}% - \setlength{\@tempdima}{2em}% + \setlength{\@tempdima}{\scr@part@tocnumwidth}% \if@tocleft \ifx\toc@l@number\@empty\else \setlength\@tempdima{0\toc@l@number}% @@ -2696,13 +2963,23 @@ \fi \fi } +\newcounter{part} +\renewcommand*{\thepart}{\@Roman\c@part} +\newcommand*{\partformat}{\partname~\thepart\autodot} +\newcommand*\partname{Part} +\newcommand*{\raggedpart}{} +\let\raggedpart\raggedsection +\newcommand*{\scr@fnt@part}{\size@part} +\newcommand*{\scr@fnt@partnumber}{\size@partnumber} +\newkomafont{partentry}{\usekomafont{disposition}\large} +\newkomafont{partentrypagenumber}{} \newcommand*\l@section[2]{% - \ifnum \c@tocdepth >\z@ + \ifnum \c@tocdepth <\sectiontocdepth\else \ifnum \lastpenalty<20009 \addpenalty{\@secpenalty}% \fi \addvspace{1.0em \@plus\p@}% - \setlength\@tempdima{1.5em}% + \setlength\@tempdima{\dimexpr\scr@section@tocnumwidth}% \if@tocleft \ifx\toc@l@number\@empty\else \setlength\@tempdima{0\toc@l@number}% @@ -2715,9 +2992,16 @@ \interlinepenalty\@M \leavevmode \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip + \edef\@pnumwidth{\the\dimexpr\@pnumwidth\relax}% \usekomafont{sectionentry}{#1\nobreak \usekomafont{sectionentrypagenumber}{% - \hfill\nobreak + {\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 \ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax @@ -2726,31 +3010,153 @@ \fi } \newcommand*{\raggedsectionentry}{} -\newcommand*\l@subsection{\bprot@dottedtocline{2}{1.5em}{2.3em}} -\newcommand*\l@subsubsection{\bprot@dottedtocline{3}{3.8em}{3.2em}} -\newcommand*\l@paragraph{\bprot@dottedtocline{4}{7.0em}{4.1em}} -\newcommand*\l@subparagraph{\bprot@dottedtocline{5}{10em}{5em}} -\newcommand*{\bprot@dottedtocline}[5]{% - \ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax - \ifnum #1>\c@tocdepth \else - \begingroup - \@tempcnta 20010 - \advance \@tempcnta by -#1 - \ifnum \@tempcnta>\lastpenalty - \endgroup - \addpenalty{\@lowpenalty}% - \else - \endgroup - \fi - \@dottedtocline{#1}{#2}{#3}{#4}{#5}% - \@tempcnta 20009 - \advance \@tempcnta by -#1 - \penalty\@tempcnta +\newcommand*\addsec{\SecDef\@addsec\@saddsec} +\newcommand*{\@addsec}{} +\def\@addsec[#1]#2{\section*{#2}% + \ifnum \scr@osectarg=\z@ + \@scr@tempswafalse + \else + \scr@istest#1=\@nil + \fi + \if@scr@tempswa + \setkeys{KOMAarg.section}{tocentry={#2},head={#2},#1}% + \else + \ifcase \scr@osectarg\relax + \setkeys{KOMAarg.section}{tocentry={#1},head={#1}}% + \or + \setkeys{KOMAarg.section}{tocentry={#2},head={#1}}% + \or + \setkeys{KOMAarg.section}{tocentry={#1},head={#2}}% + \or + \setkeys{KOMAarg.section}{tocentry={#1},head={#1}}% \fi + \fi + \ifx\scr@ds@tocentry\@empty\else + \addsectiontocentry{}{\scr@ds@tocentry}% + \fi + \addsecmark{\scr@ds@head}% +} +\newcommand*{\@saddsec}[1]{\section*{#1}\addsecmark{}} +\newkomafont{minisec}{} +\newcommand\minisec[1]{% + \ifnum \scr@compatibility<\@nameuse{scr@v@3.13a}\relax + \@afterindentfalse \vskip 1.5ex \else - \@dottedtocline{#1}{#2}{#3}{#4}{#5}% + \if@noskipsec \leavevmode \fi + \par + \@afterindentfalse + \if@nobreak + \everypar{}% + \else + \addpenalty\@secpenalty\addvspace{1.5ex}% + \fi \fi + {\parindent \z@ + \ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax + \setlength{\parfillskip}{\z@ plus 1fil}\fi + \raggedsection\normalfont\sectfont\nobreak + \usekomafont{minisec}#1\par\nobreak}\nobreak% + \@afterheading +} +\newcommand*{\addsectiontocentry}[2]{% + \addtocentrydefault{section}{#1}{#2}% +} +\newcommand*{\addsubsectiontocentry}[2]{% + \addtocentrydefault{subsection}{#1}{#2}% +} +\newcommand*{\addparagraphtocentry}[2]{% + \addtocentrydefault{paragraph}{#1}{#2}% +} +\newcommand*{\addsubparagraphtocentry}[2]{% + \addtocentrydefault{subparagraph}{#1}{#2}% +} +\newcounter{section} +\renewcommand*{\thesection}{\@arabic\c@section} +\newcommand*\sectionmarkformat{\thesection\autodot\enskip} +\newcounter{subsection}[section] +\renewcommand*{\thesubsection}{\thesection.\@arabic\c@subsection} +\newcommand*\subsectionmarkformat{\thesubsection\autodot\enskip} +\newcounter{subsubsection}[subsection] +\renewcommand*{\thesubsubsection}{% + \thesubsection.\@arabic\c@subsubsection +} +\newcounter{paragraph}[subsubsection] +\renewcommand*{\theparagraph}{\thesubsubsection.\@arabic\c@paragraph} +\newcounter{subparagraph}[paragraph] +\renewcommand*{\thesubparagraph}{% + \theparagraph.\@arabic\c@subparagraph +} +\newcommand*{\othersectionlevelsformat}[3]{#3\autodot\enskip} +\renewcommand*{\@seccntformat}[1]{% + \protect\othersectionlevelsformat{#1}{% + \expandafter\aftergroup\noexpand\@gobble}{\csname the#1\endcsname}% +} +\newcommand*\addsecmark[1]{% + \begingroup + \c@secnumdepth=\m@ne + \sectionmark{#1}% + \endgroup } +\newcommand*{\scr@fnt@section}{\size@section} +\newcommand*{\scr@fnt@subsection}{\size@subsection} +\newcommand*{\scr@fnt@subsubsection}{\size@subsubsection} +\newcommand*{\scr@fnt@paragraph}{\size@paragraph} +\newcommand*{\scr@fnt@subparagraph}{\size@subparagraph} +\newkomafont{sectionentry}{\usekomafont{disposition}} +\newkomafont{sectionentrypagenumber}{} +\newkomafont{sectionentrydots}{\normalfont} +\DeclareSectionCommand[% + style=section,% + level=1,% + indent=\z@,% + beforeskip=-3.5ex \@plus -1ex \@minus -.2ex,% + afterskip=2.3ex \@plus.2ex,% + tocindent=0pt,% + tocnumwidth=1.5em% +]{section} +\DeclareSectionCommand[% + style=section,% + level=2,% + indent=\z@,% + beforeskip=-3.25ex\@plus -1ex \@minus -.2ex,% + afterskip=1.5ex \@plus .2ex,% + tocindent=1.5em,% + tocnumwidth=2.3em% +]{subsection} +\DeclareSectionCommand[% + style=section,% + level=3,% + indent=\z@,% + beforeskip=-3.25ex\@plus -1ex \@minus -.2ex,% + afterskip=1.5ex \@plus .2ex,% + tocindent=3.8em,% + tocnumwidth=3.2em% +]{subsubsection} +\DeclareSectionCommand[% + style=section,% + level=4,% + indent=\z@,% + beforeskip=3.25ex \@plus1ex \@minus.2ex,% + afterskip=-1em,% + tocindent=7.0em,% + tocnumwidth=4.1em% +]{paragraph} +\DeclareSectionCommand[% + style=section,% + level=5,% + indent=\scr@parindent,% + beforeskip=3.25ex \@plus1ex \@minus .2ex,% + afterskip=-1em,% + tocindent=10em,% + tocnumwidth=5em% +]{subparagraph} +\ifnum \scr@compatibility<\@nameuse{scr@v@3.15}\relax + \let\scr@subparagraph@sectionindent\parindent +\else + \def\scr@subparagraph@sectionindent{\scr@parindent}% +\fi +\newcommand*{\scr@fnt@disposition}{\sectfont} +\aliaskomafont{sectioning}{disposition} %%% From File: $Id: scrkernel-miscellaneous.dtx 1803 2014-10-09 08:18:02Z kohm $ \newif\if@restonecol \newcommand{\dictum}[2][]{\par% @@ -3706,7 +4112,7 @@ \endgroup \@footnotemark } -%%% From File: $Id: scrkernel-listsof.dtx 1720 2014-03-05 08:03:10Z kohm $ +%%% From File: $Id: scrkernel-listsof.dtx 1872 2014-12-10 12:51:37Z kohm $ \renewcommand*{\numberline}[1]{% \numberline@box{% \numberline@prefix -- cgit v1.2.3