summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/koma-script
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2008-11-12 00:44:32 +0000
committerKarl Berry <karl@freefriends.org>2008-11-12 00:44:32 +0000
commite0fa36719ae8b943d0c515ccc2a4f1e2670cc614 (patch)
treecfd7d451101897cf222cd885a36573ccacd922c4 /Master/texmf-dist/tex/latex/koma-script
parent6d06dddb5a2041f7c07b6502a3bfa973f0d86635 (diff)
koma-script update (11nov08)
git-svn-id: svn://tug.org/texlive/trunk@11262 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/koma-script')
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/DIN.lco2
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/DINmtext.lco2
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/KOMAold.lco2
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/KakuLL.lco2
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/NipponEH.lco2
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/NipponEL.lco2
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/NipponLH.lco2
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/NipponLL.lco2
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/NipponRL.lco2
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/SN.lco2
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/SNleft.lco2
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/scrartcl.cls1223
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/scrbase.sty813
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/scrbook.cls1450
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/scrdoc.cls4
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/scrextend.sty1142
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/scrjura.sty455
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/scrkbase.sty557
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/scrlfile.sty32
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/scrlttr2.cls361
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/scrpage.sty14
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/scrpage2.sty19
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/scrreprt.cls1449
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/scrsize10pt.clo162
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/scrsize11pt.clo162
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/scrsize12pt.clo162
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/tocbasic.sty406
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/tocstyle.sty94
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/typearea.sty159
29 files changed, 6340 insertions, 2346 deletions
diff --git a/Master/texmf-dist/tex/latex/koma-script/DIN.lco b/Master/texmf-dist/tex/latex/koma-script/DIN.lco
index 05692e32a95..c5fcc7520aa 100644
--- a/Master/texmf-dist/tex/latex/koma-script/DIN.lco
+++ b/Master/texmf-dist/tex/latex/koma-script/DIN.lco
@@ -60,7 +60,7 @@
\fi
}
\fi
- \@CheckKOMAScriptVersion{2007/12/24 v2.98 KOMA-Script}%
+ \@CheckKOMAScriptVersion{2008/11/03 v3.00 KOMA-Script}%
\endgroup
%%% From File: scrklco.dtx
\ProvidesFile{%
diff --git a/Master/texmf-dist/tex/latex/koma-script/DINmtext.lco b/Master/texmf-dist/tex/latex/koma-script/DINmtext.lco
index 72ebf05c936..3793a25d073 100644
--- a/Master/texmf-dist/tex/latex/koma-script/DINmtext.lco
+++ b/Master/texmf-dist/tex/latex/koma-script/DINmtext.lco
@@ -60,7 +60,7 @@
\fi
}
\fi
- \@CheckKOMAScriptVersion{2007/12/24 v2.98 KOMA-Script}%
+ \@CheckKOMAScriptVersion{2008/11/03 v3.00 KOMA-Script}%
\endgroup
%%% From File: scrklco.dtx
\ProvidesFile{%
diff --git a/Master/texmf-dist/tex/latex/koma-script/KOMAold.lco b/Master/texmf-dist/tex/latex/koma-script/KOMAold.lco
index 0155d40623b..1d0b29f9602 100644
--- a/Master/texmf-dist/tex/latex/koma-script/KOMAold.lco
+++ b/Master/texmf-dist/tex/latex/koma-script/KOMAold.lco
@@ -61,7 +61,7 @@
\fi
}
\fi
- \@CheckKOMAScriptVersion{2007/12/24 v2.98 KOMA-Script}%
+ \@CheckKOMAScriptVersion{2008/11/03 v3.00 KOMA-Script}%
\endgroup
%%% From File: scrklco.dtx
\ProvidesFile{%
diff --git a/Master/texmf-dist/tex/latex/koma-script/KakuLL.lco b/Master/texmf-dist/tex/latex/koma-script/KakuLL.lco
index d8defb766fb..f87b625ec3a 100644
--- a/Master/texmf-dist/tex/latex/koma-script/KakuLL.lco
+++ b/Master/texmf-dist/tex/latex/koma-script/KakuLL.lco
@@ -60,7 +60,7 @@
\fi
}
\fi
- \@CheckKOMAScriptVersion{2007/12/24 v2.98 KOMA-Script}%
+ \@CheckKOMAScriptVersion{2008/11/03 v3.00 KOMA-Script}%
\endgroup
%%% From File: japanlco.dtx
\ProvidesFile{%
diff --git a/Master/texmf-dist/tex/latex/koma-script/NipponEH.lco b/Master/texmf-dist/tex/latex/koma-script/NipponEH.lco
index 59588ba3642..7a8a4f4fb4e 100644
--- a/Master/texmf-dist/tex/latex/koma-script/NipponEH.lco
+++ b/Master/texmf-dist/tex/latex/koma-script/NipponEH.lco
@@ -60,7 +60,7 @@
\fi
}
\fi
- \@CheckKOMAScriptVersion{2007/12/24 v2.98 KOMA-Script}%
+ \@CheckKOMAScriptVersion{2008/11/03 v3.00 KOMA-Script}%
\endgroup
%%% From File: japanlco.dtx
\ProvidesFile{%
diff --git a/Master/texmf-dist/tex/latex/koma-script/NipponEL.lco b/Master/texmf-dist/tex/latex/koma-script/NipponEL.lco
index 0fe362401cb..5ec193c74b3 100644
--- a/Master/texmf-dist/tex/latex/koma-script/NipponEL.lco
+++ b/Master/texmf-dist/tex/latex/koma-script/NipponEL.lco
@@ -60,7 +60,7 @@
\fi
}
\fi
- \@CheckKOMAScriptVersion{2007/12/24 v2.98 KOMA-Script}%
+ \@CheckKOMAScriptVersion{2008/11/03 v3.00 KOMA-Script}%
\endgroup
%%% From File: japanlco.dtx
\ProvidesFile{%
diff --git a/Master/texmf-dist/tex/latex/koma-script/NipponLH.lco b/Master/texmf-dist/tex/latex/koma-script/NipponLH.lco
index 43be3c342a2..4cf876780dc 100644
--- a/Master/texmf-dist/tex/latex/koma-script/NipponLH.lco
+++ b/Master/texmf-dist/tex/latex/koma-script/NipponLH.lco
@@ -60,7 +60,7 @@
\fi
}
\fi
- \@CheckKOMAScriptVersion{2007/12/24 v2.98 KOMA-Script}%
+ \@CheckKOMAScriptVersion{2008/11/03 v3.00 KOMA-Script}%
\endgroup
%%% From File: japanlco.dtx
\ProvidesFile{%
diff --git a/Master/texmf-dist/tex/latex/koma-script/NipponLL.lco b/Master/texmf-dist/tex/latex/koma-script/NipponLL.lco
index 102653fa69f..3cf08f9f442 100644
--- a/Master/texmf-dist/tex/latex/koma-script/NipponLL.lco
+++ b/Master/texmf-dist/tex/latex/koma-script/NipponLL.lco
@@ -60,7 +60,7 @@
\fi
}
\fi
- \@CheckKOMAScriptVersion{2007/12/24 v2.98 KOMA-Script}%
+ \@CheckKOMAScriptVersion{2008/11/03 v3.00 KOMA-Script}%
\endgroup
%%% From File: japanlco.dtx
\ProvidesFile{%
diff --git a/Master/texmf-dist/tex/latex/koma-script/NipponRL.lco b/Master/texmf-dist/tex/latex/koma-script/NipponRL.lco
index 0581ed23660..abb06dd244a 100644
--- a/Master/texmf-dist/tex/latex/koma-script/NipponRL.lco
+++ b/Master/texmf-dist/tex/latex/koma-script/NipponRL.lco
@@ -60,7 +60,7 @@
\fi
}
\fi
- \@CheckKOMAScriptVersion{2007/12/24 v2.98 KOMA-Script}%
+ \@CheckKOMAScriptVersion{2008/11/03 v3.00 KOMA-Script}%
\endgroup
%%% From File: japanlco.dtx
\ProvidesFile{%
diff --git a/Master/texmf-dist/tex/latex/koma-script/SN.lco b/Master/texmf-dist/tex/latex/koma-script/SN.lco
index 21f83a696f7..a09a6215f7a 100644
--- a/Master/texmf-dist/tex/latex/koma-script/SN.lco
+++ b/Master/texmf-dist/tex/latex/koma-script/SN.lco
@@ -60,7 +60,7 @@
\fi
}
\fi
- \@CheckKOMAScriptVersion{2007/12/24 v2.98 KOMA-Script}%
+ \@CheckKOMAScriptVersion{2008/11/03 v3.00 KOMA-Script}%
\endgroup
%%% From File: scrklco.dtx
\ProvidesFile{%
diff --git a/Master/texmf-dist/tex/latex/koma-script/SNleft.lco b/Master/texmf-dist/tex/latex/koma-script/SNleft.lco
index 88e876b73a9..699adafb9b6 100644
--- a/Master/texmf-dist/tex/latex/koma-script/SNleft.lco
+++ b/Master/texmf-dist/tex/latex/koma-script/SNleft.lco
@@ -60,7 +60,7 @@
\fi
}
\fi
- \@CheckKOMAScriptVersion{2007/12/24 v2.98 KOMA-Script}%
+ \@CheckKOMAScriptVersion{2008/11/03 v3.00 KOMA-Script}%
\endgroup
%%% From File: scrklco.dtx
\ProvidesFile{%
diff --git a/Master/texmf-dist/tex/latex/koma-script/scrartcl.cls b/Master/texmf-dist/tex/latex/koma-script/scrartcl.cls
index dd0a30e7592..bda5b6d1a5b 100644
--- a/Master/texmf-dist/tex/latex/koma-script/scrartcl.cls
+++ b/Master/texmf-dist/tex/latex/koma-script/scrartcl.cls
@@ -6,6 +6,7 @@
%%
%% scrkvers.dtx (with options: `class,article')
%% scrkbase.dtx (with options: `load')
+%% tocbasic.dtx (with options: `load')
%% scrkcomp.dtx (with options: `class,article,option')
%% scrkmisc.dtx (with options: `class,article,option')
%% scrklang.dtx (with options: `class,article,option')
@@ -91,7 +92,7 @@
\fi
}
\fi
- \@CheckKOMAScriptVersion{2007/12/24 v2.98 KOMA-Script}%
+ \@CheckKOMAScriptVersion{2008/11/03 v3.00 KOMA-Script}%
\endgroup
\newcommand*{\KOMAClassName}{%
scrartcl%
@@ -104,6 +105,13 @@
]
%%% From File: scrkbase.dtx
\RequirePackage{scrkbase}[\KOMAScriptVersion]
+%%% From File: tocbasic.dtx
+\def\tocbasicversion{2008/10/06 v1.0}
+\edef\@tempa{\noexpand\RequirePackage{tocbasic}[\tocbasicversion]}
+\@tempa
+\addtotoclist{toc}
+\addtotoclist[float]{lof}
+\addtotoclist[float]{lot}
%%% From File: scrkcomp.dtx
\newcommand*{\scr@compatibility}{0}
\KOMA@key{version}[last]{%
@@ -123,7 +131,8 @@
\ClassError{\KOMAClassName}{%
Option `version' too late%
}{%
- Option `version' may be set only while loading the class.\MessageBreak
+ Option `version' may be set only while loading the
+ class.\MessageBreak
But you've tried to set it up later.%
}%
}%
@@ -144,7 +153,11 @@
\@namedef{scr@v@2.97d}{5}
\@namedef{scr@v@2.97e}{6}
\@namedef{scr@v@2.98}{6}
-\@namedef{scr@v@last}{6}
+\@namedef{scr@v@2.98a}{6}
+\@namedef{scr@v@2.98b}{6}
+\@namedef{scr@v@2.98c}{7}
+\@namedef{scr@v@3.00}{8}
+\@namedef{scr@v@last}{8}
%%% From File: scrkmisc.dtx
\KOMA@key{draft}[true]{%
\KOMA@set@ifkey{draft}{@tempswa}{#1}%
@@ -169,16 +182,41 @@
\def\@pt@@scan #1pt#2\@pt@@scan{%
\ifstr{#2}{pt}{%
\ifnumber{#1}{%
- \KOMA@UseObsoleteOption{\PackageInfoNoLine}{#1#2}{fontsize=#1#2}%
+ \KOMA@UseObsoleteOption{\PackageInfoNoLine{\KOMAClassName}}%
+ {#1#2}{fontsize=#1#2}%
}{\@headlines}%
}{\@headlines}%
}
+\providecommand*{\@fontsizefilebase}{scrsize}
\KOMA@key{fontsize}{%
\scr@ifundefinedorrelax{changefontsizes}{%
\@defaultunits\@tempdima#1pt\relax\@nnil
\edef\@ptsize{#1}%
}{%
- \changefontsizes{#1}%
+ \expandafter\@defaultunits\expandafter\@tempdima#1 pt\relax\@nnil
+ \edef\@tempa{#1}%
+ \setlength{\@tempdimb}{\@tempdima}%
+ \edef\@tempb{\strip@pt\@tempdimb}%
+ \addtolength{\@tempdimb}{-10\p@}%
+ \edef\@ptsize{\strip@pt\@tempdimb}%
+ \edef\@tempa{%
+ \noexpand\makeatletter
+ \noexpand\InputIfFileExists{\@fontsizefilebase\@tempa.clo}{%
+ \noexpand\ClassInfo{\KOMAClassName}{%
+ File `\@fontsizefilebase\@tempa.clo' used to setup font sizes}%
+ }{%
+ \noexpand\InputIfFileExists{\@fontsizefilebase\@tempb pt.clo}{%
+ \noexpand\ClassInfo{\KOMAClassName}{%
+ File `\@fontsizefilebase\@tempb pt.clo' used instead of%
+ \noexpand\MessageBreak
+ file `\@fontsizefilebase\@tempa.clo' to setup font sizes}%
+ }{%
+ \noexpand\changefontsizes{#1}%
+ }%
+ }%
+ \noexpand\catcode`\noexpand\@=\the\catcode`\@
+ }%
+ \@tempa
}%
}
%%% From File: scrktare.dtx
@@ -244,7 +282,7 @@
}
\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{oneside}{twoside=false}
\KOMA@key{twocolumn}[true]{%
- \if@atdocument\else\PassOptionsToPackage{twoside=#1}{typearea}\fi%
+ \if@atdocument\else\PassOptionsToPackage{twocolumn=#1}{typearea}\fi%
}
\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{onecolumn}{twocolumn=false}
\DeclareOption*{%
@@ -354,154 +392,138 @@
\endgroup
\fi
}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{parskip-}{parskip=full-}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{parskip+}{parskip=full+}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{parskip*}{parskip=full*}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{halfparskip}{parskip=half}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{halfparskip-}{parskip=half-}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{halfparskip+}{parskip=half+}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{halfparskip*}{parskip=half*}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{parindent}{parskip=false}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{parskip-}{parskip=full-}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{parskip+}{parskip=full+}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{parskip*}{parskip=full*}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{halfparskip}{parskip=half}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{halfparskip-}{parskip=half-}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{halfparskip+}{parskip=half+}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{halfparskip*}{parskip=half*}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{parindent}{parskip=false}
%%% From File: scrktitl.dtx
\newif\if@titlepage
\@titlepagefalse
-\KOMA@ifkey{titlepage}{@titlepage}
-\KOMA@DeclareObsoleteOption[\ClassInfo]{notitlepage}{titlepage=false}
+\KOMA@ifkey{titlepage}{@titlepage}%
+\KOMA@DeclareObsoleteOption%
+ [\PackageInfoNoLine]%
+ {notitlepage}{titlepage=false}
\newif\if@abstrt\@abstrtfalse
\KOMA@ifkey{abstract}{@abstrt}
-\KOMA@DeclareObsoleteOption[\ClassInfo]{abstracton}{abstract=true}
-\KOMA@DeclareObsoleteOption[\ClassInfo]{abstractoff}{abstract=false}
+\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{abstracton}{abstract=true}
+\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{abstractoff}{abstract=false}
%%% From File: scrksect.dtx
-\DeclareOption{pointednumbers}{%
- \AtEndOfClass{\@altsecnumformattrue
- \global\let\@altsecnumformatfalse\@altsecnumformattrue}%
-}
-\DeclareOption{pointednumber}{%
- \AtEndOfClass{\@altsecnumformattrue
- \global\let\@altsecnumformatfalse\@altsecnumformattrue}%
- \ClassError{\KOMAClassName}{%
- undefined option `pointednumber' instead of `pointednumbers'%
- }{%
- You've used the class-option `pointednumber'.\MessageBreak
- This name was an implementation-error at versions from 2.3h till
- 2.4f.\MessageBreak
- The correct name is `pointednumbers'.
- Change this at your document.\MessageBreak
- If you'll continue, the option `pointednumbers' will be used%
- }%
-}
-\DeclareOption{pointlessnumbers}{%
- \AtEndOfClass{\@altsecnumformatfalse
- \global\let\@altsecnumformattrue\@altsecnumformatfalse}%
-}
-\DeclareOption{pointlessnumber}{%
- \AtEndOfClass{\@altsecnumformatfalse
- \global\let\@altsecnumformattrue\@altsecnumformatfalse}%
+%% \fi
+\newcommand*{\scr@dotchangeatdocument}[1]{%
\ClassError{\KOMAClassName}{%
- undefined option `pointlessnumber' instead of `pointlessnumbers'%
+ change of end dot feature after \string\begin{document}%
}{%
- You've used the class-option `pointlessnumber'.\MessageBreak
- This name was an implementation-error at versions from 2.3h till
- 2.4f.\MessageBreak
- The correct name is `pointlessnumbers'.
- Change this at your document.\MessageBreak
- If you'll continue, the option `pointlessnumbers' will be used%
- }%
-}
-\newcommand\@bigheadings{%
- \AtEndOfClass{%
- \let\size@part\Huge
- \let\size@partnumber\huge
- \let\size@section\Large
- \let\size@subsection\large
- \let\size@subsubsection\normalsize
- \let\size@paragraph\normalsize
- \let\size@subparagraph\normalsize
+ 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.%
}%
}
-\DeclareOption{bigheadings}{\@bigheadings}
-\DeclareOption{bigheading}{%
- \@bigheadings
- \ClassError{\KOMAClassName}{%
- undefined option `bigheading' instead of `bigheadings'%
- }{%
- You've used the old option name `bigheading'!\MessageBreak
- The correct name of the option is `bigheadings'.\MessageBreak
- The old name was an implementation error from\MessageBreak
- version 2.3h till 2.4f.\MessageBreak
- You should change this at your document!\MessageBreak
- If you'll continue, option `bigheadings' will be used%
- }%
-}
-\newcommand\@normalheadings{%
- \AtEndOfClass{%
- \let\size@part\huge
- \let\size@partnumber\huge
- \let\size@section\large
- \let\size@subsection\normalsize
- \let\size@subsubsection\normalsize
- \let\size@paragraph\normalsize
- \let\size@subparagraph\normalsize
- }%
+\KOMA@key{numbers}{%
+ \KOMA@set@ncmdkey{numbers}{@tempa}{%
+ {autoendperiod}{0},{autoenddot}{0},{auto}{0},%
+ {endperiod}{1},{withendperiod}{1},{periodatend}{1},%
+ {enddot}{1},{withenddot}{1},{dotatend}{1},%
+ {noendperiod}{2},{noperiodatend}{2},%
+ {noenddot}{2},{nodotatend}{2}%
+ }{#1}%
+ \ifcase \@tempa\relax
+ \if@atdocument\scr@dotchangeatdocument{#1}\else
+ \let\scr@altsecnumhook\@empty
+ \fi
+ \or
+ \if@atdocument\scr@dotchangeatdocument{#1}\else
+ \let\scr@altsecnumhook\scr@altsecnumhooktrue
+ \fi
+ \or
+ \if@atdocument\scr@dotchangeatdocument{#1}\else
+ \let\scr@altsecnumhook\scr@altsecnumhookfalse
+ \fi
+ \fi
}
-\DeclareOption{normalheadings}{\@normalheadings}
-\DeclareOption{normalheading}{%
- \@normalheadings
- \ClassError{\KOMAClassName}{%
- undefined option `normalheading' instead of `normalheadings'%
- }{%
- You've used the old option name `normalheading'!\MessageBreak
- The correct name of the option is `normalheadings'.\MessageBreak
- The old name was an implementation error from\MessageBreak
- version 2.3h till 2.4f.\MessageBreak
- You should change this at your document!\MessageBreak
- If you'll continue, option `normalheadings' will be used%
- }%
+\newcommand*{\scr@altsecnumhook}{}
+\AtBeginDocument{\scr@altsecnumhook}
+\newcommand*{\scr@altsecnumhooktrue}{%
+ \@altsecnumformattrue\global\let\@altsecnumformatfalse\@altsecnumformattrue
}
-\newcommand\@smallheadings{%
- \AtEndOfClass{
- \let\size@part\LARGE
- \let\size@partnumber\LARGE
- \let\size@section\normalsize
- \let\size@subsection\normalsize
- \let\size@subsubsection\normalsize
- \let\size@paragraph\normalsize
- \let\size@subparagraph\normalsize
- }%
+\newcommand*{\scr@altsecnumhookfalse}{%
+ \@altsecnumformatfalse\global\let\@altsecnumformattrue\@altsecnumformatfalse
}
-\DeclareOption{smallheadings}{\@smallheadings}
-\DeclareOption{smallheading}{%
- \@smallheadings
- \ClassError{\KOMAClassName}{%
- undefined option `smallheading' instead of `smallheadings'%
- }{%
- You've used the old option name `smallheading'!\MessageBreak
- The correct name of the option is `smallheadings'.\MessageBreak
- The old name was an implementation error from\MessageBreak
- version 2.3h till 2.4f.\MessageBreak
- You should change this at your document!\MessageBreak
- If you'll continue, option `smallheadings' will be used%
- }%
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{pointednumbers}%
+ {numbers=enddot}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{pointlessnumbers}%
+ {numbers=noenddot}
+\newcommand*{\size@part}{}
+\newcommand*{\size@partnumber}{}
+\newcommand*{\size@section}{}
+\newcommand*{\size@subsection}{}
+\newcommand*{\size@subsubsection}{}
+\newcommand*{\size@paragraph}{}
+\newcommand*{\size@subparagraph}{}
+\newcommand*{\chapterheadstartvskip}{}
+\newcommand*{\chapterheadendvskip}{}
+\KOMA@key{headings}{%
+ \KOMA@set@ncmdkey{headings}{@tempa}{%
+ {big}{0},%
+ {normal}{1},%
+ {small}{2}%
+ }{#1}%
+ \ifcase \@tempa\relax
+ \renewcommand*{\size@part}{\Huge}%
+ \renewcommand*{\size@partnumber}{\huge}%
+ \renewcommand*{\size@section}{\Large}%
+ \renewcommand*{\size@subsection}{\large}%
+ \renewcommand*{\size@subsubsection}{\normalsize}%
+ \renewcommand*{\size@paragraph}{\normalsize}%
+ \renewcommand*{\size@subparagraph}{\normalsize}%
+ \or
+ \renewcommand*{\size@part}{\huge}%
+ \renewcommand*{\size@partnumber}{\huge}%
+ \renewcommand*{\size@section}{\large}%
+ \renewcommand*{\size@subsection}{\normalsize}%
+ \renewcommand*{\size@subsubsection}{\normalsize}%
+ \renewcommand*{\size@paragraph}{\normalsize}%
+ \renewcommand*{\size@subparagraph}{\normalsize}%
+ \or
+ \renewcommand*{\size@part}{\LARGE}%
+ \renewcommand*{\size@partnumber}{\LARGE}%
+ \renewcommand*{\size@section}{\normalsize}%
+ \renewcommand*{\size@subsection}{\normalsize}%
+ \renewcommand*{\size@subsubsection}{\normalsize}%
+ \renewcommand*{\size@paragraph}{\normalsize}%
+ \renewcommand*{\size@subparagraph}{\normalsize}%
+ \or
+ \or
+ \or
+ \or
+ \or
+ \or
+ \or
+ \fi
}
-\@bigheadings
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{bigheadings}%
+ {headings=big}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{normalheadings}%
+ {headings=normal}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{smallheadings}%
+ {headings=small}
%%% From File: scrkpage.dtx
\newif\if@hsl
\KOMA@key{headsepline}[true]{%
\KOMA@set@ifkey{headsepline}{@hsl}{#1}%
- \@ifpackageloaded{typearea}{%
- \KOMAoptions{headinclude=#1}%
- }{}%
+ \KOMA@options{headinclude=#1}{}%
}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{headnosepline}{%
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{headnosepline}{%
headsepline=false}
\newif\if@fsl
\KOMA@key{footsepline}[true]{%
\KOMA@set@ifkey{footsepline}{@fsl}{#1}%
- \@ifpackageloaded{typearea}{%
- \KOMAoptions{footinclude=#1}%
- }{}%
+ \KOMA@options{footinclude=#1}{}%
}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{footnosepline}{%
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{footnosepline}{%
footsepline=false}
\@twosidefalse
\KOMA@key{cleardoublepage}{%
@@ -513,131 +535,365 @@
}%
\ifstr{#1}{current}{%
\def\@tempc{\endgroup%
- \let\cleardoublepage\cleardoublestandardpage
+ \def\cleardoublepage{\cleardoublestandardpage}%
+ \def\cleardoubleoddpage{\cleardoubleoddstandardpage}%
+ \def\cleardoubleevenpage{\cleardoubleevenstandardpage}%
}%
}{%
\ifnotundefined{ps@#1}{%
\def\@tempc{\endgroup%
\def\cleardoublepage{\cleardoublepageusingstyle{#1}}%
+ \def\cleardoubleoddpage{\cleardoubleoddpageusingstyle{#1}}%
+ \def\cleardoubleevenpage{\cleardoubleevenpageusingstyle{#1}}%
}%
}{}%
}%
\@tempc
}
-\newcommand*{\cleardoublestandardpage}{}
-\let\cleardoublestandardpage\cleardoublepage
+\newcommand*{\cleardoubleoddstandardpage}{}
+\let\cleardoubleoddstandardpage=\cleardoublepage
+\newcommand*{\cleardoubleoddpageusingstyle}[1]{\clearpage
+ {\thispagestyle{#1}\cleardoubleoddstandardpage}}
+\newcommand*{\cleardoubleoddemptypage}{\cleardoubleoddpageusingstyle{empty}}
+\newcommand*{\cleardoubleoddplainpage}{\cleardoubleoddpageusingstyle{plain}}
+\newcommand*{\cleardoubleevenstandardpage}{%
+ \clearpage
+ \if@twoside\ifodd\c@page
+ \hbox{}\newpage\if@twocolumn\hbox{}\newpage\fi
+ \fi\fi
+}
+\newcommand*{\cleardoubleevenpageusingstyle}[1]{\clearpage
+ {\thispagestyle{#1}\cleardoubleevenstandardpage}}
+\newcommand*{\cleardoubleevenemptypage}{\cleardoubleevenpageusingstyle{empty}}
+\newcommand*{\cleardoubleevenplainpage}{\cleardoubleevenpageusingstyle{plain}}
+\newcommand*{\cleardoublestandardpage}{\cleardoubleoddstandardpage}
+\renewcommand*{\cleardoublepage}{%
+ \expandafter\ifnum \@nameuse{scr@v@2.98c}<\scr@compatibility\relax
+ \cleardoubleemptypage
+ \else
+ \cleardoublestandardpage
+ \fi
+}
+\newcommand*{\cleardoubleoddpage}{\cleardoubleoddemptypage}
+\newcommand*{\cleardoubleevenpage}{\cleardoubleevenemptypage}
\newcommand*{\cleardoublepageusingstyle}[1]{\clearpage
{\thispagestyle{#1}\cleardoublestandardpage}}
\newcommand*{\cleardoubleemptypage}{\cleardoublepageusingstyle{empty}}
\newcommand*{\cleardoubleplainpage}{\cleardoublepageusingstyle{plain}}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{cleardoubleempty}{%
- cleardoublepage=empty%
-}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{cleardoubleplain}{%
- cleardoublepage=plain%
-}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{cleardoublestandard}{%
- cleardoublepage=current%
-}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{cleardoubleempty}%
+ {cleardoublepage=empty}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{cleardoubleplain}%
+ {cleardoublepage=plain}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{cleardoublestandard}%
+ {cleardoublepage=current}
%%% From File: scrkfloa.dtx
\newif\if@tablecaptionabove\@tablecaptionabovefalse
-\DeclareOption{tablecaptionabove}{\@tablecaptionabovetrue}
-\DeclareOption{tablecaptionbelow}{\@tablecaptionabovefalse}
-\newif\if@komalongtable\@komalongtabletrue
-\DeclareOption{origlongtable}{\@komalongtablefalse}
\newif\ifonelinecaptions\onelinecaptionstrue
-\DeclareOption{onelinecaption}{\onelinecaptionstrue
- \PassOptionsToPackage{oneline}{caption2}%
-}
-\DeclareOption{noonelinecaption}{\onelinecaptionsfalse
- \PassOptionsToPackage{nooneline}{caption2}%
+\newcommand*{\scap@pos}{r}
+\newcommand*{\scap@valign}{b}
+\KOMA@key{captions}{%
+ \KOMA@set@ncmdkey{captions}{@tempa}{%
+ {tableheading}{0},%
+ {tableabove}{0},{abovetable}{0},{abovetabular}{0},{topattable}{0},%
+ {tablesignature}{1},%
+ {tablebelow}{1},{belowtable}{1},{belowtabular}{1},{bottomattable}{1},%
+ {oneline}{2},%
+ {nooneline}{3},%
+ {rightbeside}{4},{besideright}{4},%
+ {leftbeside}{5},{besideleft}{5},%
+ {innerbeside}{6},{besideinner}{6},%
+ {outerbeside}{7},{besideouter}{7},%
+ {topbeside}{8},{besidetop}{8},%
+ {centeredbeside}{9},{besidecentered}{9},%
+ {middlebeside}{9},{besidemiddle}{9},%
+ {bottombeside}{10},{besidebottom}{10}%
+ }{#1}%
+ \ifcase \@tempa\relax
+ \@tablecaptionabovetrue
+ \or
+ \@tablecaptionabovefalse
+ \or
+ \onelinecaptionstrue
+ \or
+ \onelinecaptionsfalse
+ \or
+ \renewcommand*{\scap@pos}{r}%
+ \or
+ \renewcommand*{\scap@pos}{l}%
+ \or
+ \renewcommand*{\scap@pos}{i}%
+ \or
+ \renewcommand*{\scap@pos}{o}%
+ \or
+ \renewcommand*{\scap@valign}{t}%
+ \or
+ \renewcommand*{\scap@valign}{c}%
+ \or
+ \renewcommand*{\scap@valign}{b}%
+ \fi
}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{tablecaptionabove}%
+ {captions=tableheading}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{tablecaptionbelow}%
+ {captions=tablesignature}
+\newif\if@komalongtable\@komalongtabletrue
+\DeclareOption{origlongtable}{\@komalongtablefalse}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{onelinecaption}
+ {captions=oneline}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{noonelinecaption}
+ {captions=nooneline}
%%% From File: scrkftn.dtx
-%%% From File: scrkliof.dtx
-\newif\if@tocleft
-\DeclareOption{tocleft}{\@toclefttrue}
-\DeclareOption{tocindent}{\@tocleftfalse}
-\DeclareOption{liststotoc}{%
- \AtEndOfClass{%
- \renewcommand*{\float@listhead}[1]{%
- \addsec{#1}
- \@mkboth{#1}{#1}%
- \if@dynlist
- \newcommand*{\scr@starttoc}{}%
- \let\scr@starttoc=\@starttoc
- \renewcommand*{\@starttoc}[1]{%
- \before@starttoc{##1}\scr@starttoc{##1}\after@starttoc{##1}}%
- \fi
+\KOMA@key{footnotes}{%
+ \ifx\@footnotemark\scr@saved@footnotemark
+ \else
+ \ifx\@footnotemark\scr@footnotemark
+ \else
+ \ClassWarning{\KOMAClassName}{%
+ Change of `\string\@footnotemark' detected!\MessageBreak
+ Use of `footnotes=#1' may break\MessageBreak
+ another package!\MessageBreak
+ Maybe you should remove the usage of\MessageBreak
+ option `footnotes=#1'}%
+ \fi
+ \fi
+ \ifstr{#1}{multiple}{%
+ \let\@footnotemark\scr@footnotemark
+ \let\FN@mf@prepare\scr@mf@prepare
+ \def\scr@footmisc@options{multiple}%
+ }{%
+ \ifstr{#1}{nomultiple}{%
+ \let\@footnotemark\scr@saved@footnotemark
+ \let\FN@mf@prepare\relax
+ \let\scr@footmisc@options\@empty
+ }{%
+ \KOMA@unknown@keyval{footnotes}{#1}{`multiple' and `nomultiple'}%
}%
}%
}
-\DeclareOption{liststotocnumbered}{%
- \AtEndOfClass{%
- \renewcommand*{\float@listhead}[1]{%
- \section{#1}
- \@mkboth{\sectionmarkformat #1}{\sectionmarkformat #1}%
- \if@dynlist
- \newcommand*{\scr@starttoc}{}%
- \let\scr@starttoc=\@starttoc
- \renewcommand*{\@starttoc}[1]{%
- \before@starttoc{##1}\scr@starttoc{##1}\after@starttoc{##1}}%
- \fi
- }%
- }%
+\newcommand*{\scr@footmisc@options}{}
+\PassOptionsToPackage{\noexpand\scr@footmisc@options}{footmisc}
+\newcommand*{\scr@saved@footnotemark}{%
+ \leavevmode
+ \ifhmode\edef\@x@sf{\the\spacefactor}\nobreak\fi
+ \@makefnmark
+ \ifhmode\spacefactor\@x@sf\fi
+ \relax}
+\expandafter\CheckCommand\expandafter*\expandafter\@footnotemark
+\expandafter{\scr@saved@footnotemark}
+\newcommand*{\scr@footnotemark}{%
+ \leavevmode
+ \ifhmode\edef\@x@sf{\the\spacefactor}\FN@mf@check\nobreak\fi
+ \@makefnmark
+ \csname FN@mf@prepare\endcsname
+ \ifhmode\spacefactor\@x@sf\fi
+ \relax}
+%%% From File: scrkliof.dtx
+\newif\if@tocleft
+\KOMA@key{toc}{%
+ \KOMA@set@ncmdkey{toc}{@tempa}{%
+ {noindex}{0},{noidx}{0},%
+ {index}{1},{idx}{1},%
+ {nolistof}{2},%
+ {listof}{3},%
+ {listofnumbered}{4},{numberedlistof}{4},%
+ {nobibliography}{5},{nobib}{5},%
+ {bibliography}{6},{bib}{6},%
+ {bibliographynumbered}{7},{bibnumbered}{7},{numberedbibliography}{7},%
+ {numberedbib}{7},%
+ {flat}{8},{left}{8},%
+ {graduated}{9},{indent}{9},{indented}{9}%
+ }{#1}%
+ \ifcase \@tempa\relax
+ \KOMA@options{index=notoc}{}%
+ \or
+ \KOMA@options{index=totoc}{}%
+ \or
+ \KOMA@options{listof=notoc}{}%
+ \or
+ \KOMA@options{listof=totoc}{}%
+ \or
+ \KOMA@options{listof=numbered}{}%
+ \or
+ \KOMA@options{bibliography=nottotoc}{}%
+ \or
+ \KOMA@options{bibliography=totoc}{}%
+ \or
+ \KOMA@options{bibliography=totocnumbered}{}%
+ \or
+ \@toclefttrue
+ \or
+ \@tocleftfalse
+ \fi
+}
+\KOMA@DeclareObsoleteOption[\ClassWarningNoLine]{tocleft}{toc=flat}
+\KOMA@DeclareObsoleteOption[\ClassWarningNoLine]{tocindent}{toc=graduated}
+\newcommand*{\float@@listhead}{%
+ \section*
}
\newif\if@dynlist
-\DeclareOption{listsleft}{\@dynlisttrue}
-\DeclareOption{listsindent}{\@dynlistfalse}
-\newcommand*{\@chapterlistsgap}{10\p@}
-\newif\if@chaptertolists\@chaptertolistsfalse
-\KOMA@key{chapteratlists}[entry]{%
- \ifstr{#1}{entry}{%
- \@chaptertoliststrue\renewcommand*{\@chapterlistsgap}{\z@}%
- }{%
- \@chaptertolistsfalse\renewcommand*{\@chapterlistsgap}{#1}%
- }%
+\KOMA@key{listof}{%
+ \KOMA@set@ncmdkey{listof}{@tempa}{%
+ {notoc}{0},{nottotoc}{0},{plainheading}{0},%
+ {totoc}{1},{toc}{1},{notnumbered}{1},%
+ {numbered}{2},{totocnumbered}{2},{tocnumbered}{2},{numberedtotoc}{2},%
+ {numberedtoc}{2},%
+ {flat}{3},{left}{3},%
+ {graduated}{4},{indent}{4},{indented}{4},%
+ {leveldown}{5},
+ }{#1}%
+ \ifcase \@tempa\relax
+ \renewcommand*{\float@@listhead}{%
+ \section*
+ }%
+ \doforeachtocfile[float]{%
+ \unsettoc{\@currext}{numbered}%
+ \unsettoc{\@currext}{totoc}%
+ }%
+ \or% totoc
+ \renewcommand*{\float@@listhead}{%
+ \addsec
+ }%
+ \doforeachtocfile[float]{%
+ \unsettoc{\@currext}{numbered}%
+ \setuptoc{\@currext}{totoc}%
+ }%
+ \or% numbered
+ \renewcommand*{\float@@listhead}{%
+ \section
+ }%
+ \doforeachtocfile[float]{%
+ \setuptoc{\@currext}{numbered}%
+ \setuptoc{\@currext}{totoc}%
+ }%
+ \or% flat
+ \@dynlisttrue
+ \or% graduated
+ \@dynlistfalse
+ \or% leveldown
+ \doforeachtocfile[float]{%
+ \setuptoc{\@currext}{leveldown}%
+ }%
+ \fi
}
+\KOMA@DeclareObsoleteOption[\ClassWarningNoLine]{liststotoc}{listof=totoc}
+\KOMA@DeclareObsoleteOption[\ClassWarningNoLine]{liststotocnumbered}
+ {listof=numbered}
+\KOMA@DeclareObsoleteOption[\ClassWarningNoLine]{listsleft}{listof=flat}
+\KOMA@DeclareObsoleteOption[\ClassWarningNoLine]{listsindent}{listof=graduated}
%%% From File: scrkbib.dtx
-\DeclareOption{openbib}{%
- \AtEndOfPackage{%
- \renewcommand*\@openbib@code{%
- \advance\leftmargin\bibindent
- \itemindent -\bibindent
- \listparindent \itemindent
- \parsep \z@
+\newcommand{\newbibstyle}[3][]{%
+ \scr@ifundefinedorrelax{scr@bibstyle@#2}{%
+ \scr@ifundefinedorrelax{scr@bibstyle@#1}{%
+ \ClassError{\KOMAClassName}{%
+ parent bibliography style `#1' does not exist}{%
+ You've told me to define the new bibliography style `#2'\MessageBreak
+ to be a child of bibliography style `#1', but bibliography
+ style\MessageBreak
+ `#1' does not exist.\MessageBreak
+ You have to remove the parent declaration or use an existing parent!
+ See the KOMA-Script manual for more information.%
+ }%
+ }{%
+ \@namedef{scr@bibstyle@#2}{%
+ \let\@openbib@code\@empty
+ \let\newblock\@empty
+ \let\bib@beginhook\@empty
+ \let\bib@endhook\@empty
+ \csname scr@bibstyle@#1\endcsname
+ #3%
+ }%
+ \g@addto@macro\scr@bibstylelist{, `#2'}%
+ }%
+ }{%
+ \ClassError{\KOMAClassName}{bibliography style `#2' already exists}{%
+ You've told me to define the new bibliography style `#2',\MessageBreak
+ but this style already exists.\MessageBreak
+ You have to use another bibliography style name.\MessageBreak
+ See the KOMA-Script manual for more information.%
}%
- \renewcommand*\newblock{\par}%
}%
}
-\DeclareOption{bibtotoc}{%
- \AtEndOfClass{%
- \renewcommand*\bib@heading{%
- \addsec{\refname}%
- \@mkboth{\refname}{\refname}%
- }%
+\newcommand*{\scr@bibstyle@}{}
+\newcommand*{\bib@beginhook}{}
+\newcommand*{\bib@endhook}{}
+\newcommand*{\scr@bibstylelist}{\@gobble}
+\newcommand*{\@openbib@code}{}
+\newcommand*{\newblock}{}
+\newbibstyle{openstyle}{%
+ \renewcommand*{\@openbib@code}{%
+ \advance\leftmargin\bibindent
+ \itemindent -\bibindent
+ \listparindent \itemindent
+ \parsep \z@
}%
+ \renewcommand*{\newblock}{\par}%
}
-\DeclareOption{bibtotocnumbered}{%
- \AtEndOfClass{%
- \renewcommand*\bib@heading{%
- \section{\refname}%
- \@mkboth{\sectionmarkformat \refname}{\sectionmarkformat \refname}%
- }%
+\newbibstyle{oldstyle}{%
+ \renewcommand*{\newblock}{\hskip .11em\@plus.33em\@minus.07em}%
+}
+\scr@bibstyle@oldstyle
+\newcommand*\bib@heading{%
+ \section*{\refname}%
+ \@mkboth{\refname}{\refname}%
+}
+\KOMA@key{bibliography}{%
+ \scr@ifundefinedorrelax{scr@bibstyle@#1}{%
+ \let\FamilyElseValues\scr@bibstylelist
+ \KOMA@set@ncmdkey{bibliography}{@tempa}{%
+ {notoc}{0},{nottotoc}{0},{plainheading}{0},%
+ {totoc}{1},{toc}{1},{notnumbered}{1},%
+ {numbered}{2},{totocnumbered}{2},{tocnumbered}{2},{numberedtotoc}{2},%
+ {numberedtoc}{2}%
+ }{#1}%
+ \ifcase \@tempa\relax
+ \renewcommand*\bib@heading{%
+ \section*{\refname}%
+ \@mkboth{\refname}{\refname}%
+ }%
+ \or% totoc
+ \renewcommand*\bib@heading{%
+ \addsec{\refname}%
+ \@mkboth{\refname}{\refname}%
+ }%
+ \or% numbered
+ \renewcommand*\bib@heading{%
+ \section{\refname}%
+ \@mkboth{\sectionmarkformat \refname}{\sectionmarkformat \refname}%
+ }
+ \fi
+ }{%
+ \csname scr@bibstyle@#1\endcsname
}%
}
+\KOMA@DeclareObsoleteOption[\ClassInfoNoLine]{openbib}{bibliography=openstyle}
+\KOMA@DeclareObsoleteOption[\ClassWarningNoLine]{bibtotoc}{bibliography=totoc}
+\KOMA@DeclareObsoleteOption[\ClassWarningNoLine]{bibtotocnumbered}{%
+ bibliography=totocnumbered}
%%% From File: scrkidx.dtx
-\DeclareOption{idxtotoc}{%
- \AtEndOfClass{%
- \renewcommand*\idx@heading{%
- \twocolumn[\addsec{\indexname}]%
- \@mkboth{\indexname}{\indexname}%
+\newcommand*{\idx@@heading}{%
+ \section*
+}
+\KOMA@key{index}{%
+ \KOMA@set@ncmdkey{index}{@tempa}{%
+ {notoc}{0},{nottotoc}{0},{default}{0},{plainheading}{0},%
+ {totoc}{1},{toc}{1},{notnumbered}{1}%
+ }{#1}%
+ \ifcase \@tempa\relax
+ \renewcommand*{\idx@@heading}{%
+ \section*
}%
- }%
+ \or
+ \renewcommand*{\idx@@heading}{%
+ \addsec
+ }%
+ \fi
}
+\KOMA@DeclareObsoleteOption[\ClassWarningNoLine]{idxtotoc}{index=totoc}
%%% From File: scrklist.dtx
%%% From File: scrkmisc.dtx
\KOMAExecuteOptions{%
- parskip=false%
+ parskip=false,%
+ headings=big%
}
\KOMAProcessOptions\relax
%%% From File: scrkcomp.dtx
@@ -884,7 +1140,6 @@
\setlength\partopsep{.2\@tempdimc \@plus.1\@tempdimc \@minus.1\@tempdimc}%
}%
}
-\providecommand*{\@fontsizefilebase}{scrsize}
\expandafter\@defaultunits\expandafter\@tempdima\@ptsize pt\relax\@nnil
\edef\@tempa{\@ptsize}%
\setlength{\@tempdimb}{\@tempdima}%
@@ -1023,119 +1278,6 @@
}%
}
%%% From File: scrklang.dtx
-\newcommand*{\providecaptionname}[3]{%
- \@ifundefined{captions#1}{%
- \@ifundefined{cap@info@#1@done}{%
- \ClassInfo{\KOMAClassName}{%
- No captions found for `#1'\MessageBreak
- --> skipped%
- }%
- \expandafter\let\csname cap@info@#1@done\endcsname\@empty
- }{}%
- }{%
- \begingroup
- \let\@tempa\endgroup
- \csname captions#1\endcsname
- \ifx #2\undefined
- \edef\@tempb{#1}%
- \@onelevel@sanitize\@tempb
- \@onelevel@sanitize\languagename
- \ifx\@tempb\languagename
- \def\@tempa{\endgroup%
- \expandafter\g@addto@macro\csname captions#1\endcsname{%
- \def#2{#3}}%
- \csname captions#1\endcsname
- }%
- \else
- \def\@tempa{\endgroup%
- \expandafter\g@addto@macro\csname captions#1\endcsname{%
- \def#2{#3}}%
- }%
- \fi
- \else
- \ClassInfo{\KOMAClassName}{%
- `\string#2' at language `#1' already
- defined\MessageBreak
- --> skipped%
- }%
- \fi
- \@tempa
- }%
-}
-\newcommand*{\newcaptionname}[3]{%
- \@ifundefined{captions#1}{%
- \ClassInfo{\KOMAClassName}{%
- No captions found for `#1' --> defining%
- }%
- \@namedef{captions#1}{}%
- }{}%
- \begingroup
- \csname captions#1\endcsname
- \ifx #2\undefined\else
- \ClassError{\KOMAClassName}{%
- `\string#2' at language `#1' already defined%
- }{%
- You've told me to define `\string#2' at language
- `#1',\MessageBreak
- but it is already defined.\MessageBreak
- It will be redefined, if you'll continue.%
- }%
- \fi
- \endgroup
- \expandafter\g@addto@macro\csname captions#1\endcsname{%
- \def#2{#3}%
- }%
- \begingroup
- \edef\@tempb{#1}%
- \@onelevel@sanitize\@tempb
- \@onelevel@sanitize\languagename
- \ifx\@tempb\languagename
- \def\@tempa{\endgroup\csname captions#1\endcsname}%
- \else
- \let\@tempa\endgroup
- \fi
- \@tempa
-}
-\newcommand*{\renewcaptionname}[3]{%
- \@ifundefined{captions#1}{%
- \ClassError{\KOMAClassName}{%
- No captions found for `#1'%
- }{%
- You've told me to redefine the caption `\string#2' at language
- `#1',\MessageBreak
- but `\expandafter\string\csname captions#1\endcsname' is not
- defined.\MessageBreak
- If you'll continue it will be defined.%
- }
- \@namedef{captions#1}{}%
- }{}%
- \begingroup
- \csname captions#1\endcsname
- \ifx #2\undefined
- \ClassError{\KOMAClassName}{%
- `\string#2' not defined at language `#1'%
- }{%
- You've told me to redefine `\string#2' at language
- `#1',\MessageBreak
- but it is not defined.\MessageBreak
- If you'll continue it will be defined.%
- }%
- \fi
- \endgroup
- \expandafter\g@addto@macro\csname captions#1\endcsname{%
- \def#2{#3}%
- }%
- \begingroup
- \edef\@tempb{#1}%
- \@onelevel@sanitize\@tempb
- \@onelevel@sanitize\languagename
- \ifx\@tempb\languagename
- \def\@tempa{\endgroup\csname captions#1\endcsname}%
- \else
- \let\@tempa\endgroup
- \fi
- \@tempa
-}
\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
@@ -1240,44 +1382,62 @@
\addtolength{#1}{\@tempskipa}%
\fi
}
-\g@addto@macro{\@listi}{\@list@extra}
-\let\@listI=\@listi
-\g@addto@macro{\@listii}{\@list@extra}
-\g@addto@macro{\@listiii}{\@list@extra}
+\newcommand*{\@list@extra}{%
+ \ifdim\parskip>\z@\topsep\z@\parsep\parskip\itemsep\z@\fi
+}
\newcommand*{\add@extra@listi}[1]{%
\expandafter\let\csname #1@listi\endcsname=\@listi
\def\@listi{\csname #1@listi\endcsname\@list@extra}%
}
-\g@addto@macro{\footnotesize}{\protect\add@extra@listi{ftns}}
-\g@addto@macro{\small}{\protect\add@extra@listi{sml}}
-\newcommand*{\@list@extra}{%
- \ifdim\parskip>\z@\topsep\z@\parsep\parskip\itemsep\z@\fi
-}
+ \l@addto@macro{\@listi}{\@list@extra}%
+ \let\@listI=\@listi
+ \l@addto@macro{\@listii}{\@list@extra}%
+ \l@addto@macro{\@listiii}{\@list@extra}%
+ \l@addto@macro{\footnotesize}{\protect\add@extra@listi{ftns}}%
+ \l@addto@macro{\small}{\protect\add@extra@listi{sml}}%
\@lowpenalty = 51
\@medpenalty =151
\@highpenalty =301
%%% From File: scrktitl.dtx
-\newcommand*{\@extratitle}{}
-\newcommand{\extratitle}[1]{\gdef\@extratitle{#1}}
-\newcommand*{\@titlehead}{}
-\newcommand{\titlehead}[1]{\gdef\@titlehead{#1}}
-\newcommand*{\@subject}{}
-\newcommand*{\subject}[1]{\gdef\@subject{#1}}
-\newcommand*{\subtitle}[1]{\gdef\@subtitle{#1}}
-\newcommand*{\@subtitle}{}
-\newcommand*{\@publishers}{}
-\newcommand{\publishers}[1]{\gdef\@publishers{#1}}
-\newcommand*{\@uppertitleback}{}
-\newcommand{\uppertitleback}[1]{\gdef\@uppertitleback{#1}}
-\newcommand*{\@lowertitleback}{}
-\newcommand{\lowertitleback}[1]{\gdef\@lowertitleback{#1}}
-\newcommand*{\@dedication}{}
-\newcommand{\dedication}[1]{\gdef\@dedication{#1}}
-\newcommand*{\next@tpage}{\clearpage\thispagestyle{empty}}
+\newcommand*{\@extratitle}{}%
+\newcommand{\extratitle}[1]{\gdef\@extratitle{%
+ #1%
+}}%
+\newcommand*{\@titlehead}{}%
+\newcommand{\titlehead}[1]{\gdef\@titlehead{%
+ #1%
+}}%
+\newcommand*{\@subject}{}%
+\newcommand*{\subject}[1]{\gdef\@subject{%
+ #1%
+}}%
+\newcommand*{\subtitle}[1]{\gdef\@subtitle{%
+ #1%
+}}%
+\newcommand*{\@subtitle}{}%
+\newcommand*{\@publishers}{}%
+\newcommand{\publishers}[1]{\gdef\@publishers{%
+ #1%
+}}%
+\newcommand*{\@uppertitleback}{}%
+\newcommand{\uppertitleback}[1]{\gdef\@uppertitleback{%
+ #1%
+}}%
+\newcommand*{\@lowertitleback}{}%
+\newcommand{\lowertitleback}[1]{\gdef\@lowertitleback{%
+ #1%
+}}%
+\newcommand*{\@dedication}{}%
+\newcommand{\dedication}[1]{\gdef\@dedication{%
+ #1%
+}}%
+\newcommand*{\next@tpage}{\clearpage\thispagestyle{empty}}%
\if@titlepage
\newcommand*\maketitle[1][1]{%
\begin{titlepage}
- \setcounter{page}{#1}%
+ \setcounter{page}{%
+ #1%
+ }%
\let\footnotesize\small
\let\footnoterule\relax
\let\footnote\thanks
@@ -1359,10 +1519,12 @@
\global\let\dedication\relax
\global\let\date\relax
\global\let\and\relax
- }
+ }%
\else
\newcommand*\maketitle[1][1]{\par
- \@tempcnta=#1\relax\ifnum\@tempcnta=1\else
+ \@tempcnta=%
+ #1%
+ \relax\ifnum\@tempcnta=1\else
\ClassWarning{\KOMAClassName}{%
Optional argument of \string\maketitle\space ignored
at\MessageBreak
@@ -1413,7 +1575,7 @@
\global\let\dedication\relax
\global\let\date\relax
\global\let\and\relax
- }
+ }%
\fi
\newcommand*{\@maketitle}{%
\clearpage
@@ -1455,12 +1617,25 @@
\end{center}%
\par
\vskip 2em
-}
-\newcommand*\titlefont{\sectfont}
-\newcommand*{\subject@font}{\normalfont\normalcolor\bfseries\Large}
-\newkomafont{subtitle}{\usekomafont{title}\large}
-\newcommand*{\scr@fnt@title}{\titlefont}
-\newcommand*{\scr@fnt@subject}{\subject@font}
+}%
+\newenvironment{titlepage}{%
+ \if@twocolumn
+ \@restonecoltrue\onecolumn
+ \else
+ \@restonecolfalse\newpage
+ \fi
+ \thispagestyle{empty}%
+ \if@compatibility
+ \setcounter{page}{0}%
+ \fi
+}{%
+ \if@restonecol\twocolumn \else \newpage \fi
+}%
+\newcommand*\titlefont{\sectfont}%
+\newcommand*{\subject@font}{\normalfont\normalcolor\bfseries\Large}%
+\newkomafont{subtitle}{\usekomafont{title}\large}%
+\newcommand*{\scr@fnt@title}{\titlefont}%
+\newcommand*{\scr@fnt@subject}{\subject@font}%
\if@titlepage
\newenvironment{abstract}{%
\titlepage
@@ -1494,19 +1669,6 @@
\if@twocolumn\else\endquotation\fi
}
\fi
-\newenvironment{titlepage}{%
- \if@twocolumn
- \@restonecoltrue\onecolumn
- \else
- \@restonecolfalse\newpage
- \fi
- \thispagestyle{empty}%
- \if@compatibility
- \setcounter{page}{0}%
- \fi
-}{%
- \if@restonecol\twocolumn \else \newpage \fi
-}
%%% From File: scrksect.dtx
\newcommand*\appendix{\par%
\setcounter{section}{0}%
@@ -1515,22 +1677,25 @@
\csname appendixmore\endcsname
}
\newif\if@altsecnumformat\@altsecnumformatfalse
-\newif\if@autodot\@autodotfalse
+\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
}
\newcommand*{\@@maybeautodot}[1]{%
\ifx #1\@stop\let\@@maybeautodot\relax
\else
- \ifx #1\Alph \aftergroup\@autodottrue\fi
- \ifx #1\alph \aftergroup\@autodottrue\fi
- \ifx #1\Roman \aftergroup\@autodottrue\fi
- \ifx #1\roman \aftergroup\@autodottrue\fi
- \ifx #1\@Alph \aftergroup\@autodottrue\fi
- \ifx #1\@alph \aftergroup\@autodottrue\fi
- \ifx #1\@Roman \aftergroup\@autodottrue\fi
- \ifx #1\@roman \aftergroup\@autodottrue\fi
- \ifx #1\romannumeral \aftergroup\@autodottrue\fi
+ \ifx #1\Alph \@autodottrue\fi
+ \ifx #1\alph \@autodottrue\fi
+ \ifx #1\Roman \@autodottrue\fi
+ \ifx #1\roman \@autodottrue\fi
+ \ifx #1\@Alph \@autodottrue\fi
+ \ifx #1\@alph \@autodottrue\fi
+ \ifx #1\@Roman \@autodottrue\fi
+ \ifx #1\@roman \@autodottrue\fi
+ \ifx #1\romannumeral \@autodottrue\fi
\fi
\@@maybeautodot
}
@@ -1630,7 +1795,9 @@
\secdef\@addpart\@saddpart
}
\newcommand*{\@addpart}{}
-\def\@addpart[#1]#2{\addcontentsline{toc}{part}{#1}\@spart{#2}%
+\def\@addpart[#1]#2{%
+ \csname phantomsection\endcsname
+ \addcontentsline{toc}{part}{#1}\@spart{#2}%
\ifx\partmark\@gobble\else\@mkboth{#1}{}\fi
}
\newcommand*{\@saddpart}{\@spart}
@@ -1645,23 +1812,23 @@
\newcommand\section{\@startsection{section}{1}{\z@}%
{-3.5ex \@plus -1ex \@minus -.2ex}%
{2.3ex \@plus.2ex}%
- {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\setlength{\parfillskip}{\z@
- plus 1fil}\fi
+ {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax
+ \setlength{\parfillskip}{\z@ plus 1fil}\fi
\raggedsection\normalfont\sectfont\nobreak\size@section}%
}
\newcommand\subsection{\@startsection{subsection}{2}{\z@}%
{-3.25ex\@plus -1ex \@minus -.2ex}%
{1.5ex \@plus .2ex}%
- {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\setlength{\parfillskip}{\z@
- plus 1fil}\fi
+ {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax
+ \setlength{\parfillskip}{\z@ plus 1fil}\fi
\raggedsection\normalfont\sectfont\nobreak\size@subsection
}%
}
\newcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%
{-3.25ex\@plus -1ex \@minus -.2ex}%
{1.5ex \@plus .2ex}%
- {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\setlength{\parfillskip}{\z@
- plus 1fil}\fi
+ {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax
+ \setlength{\parfillskip}{\z@ plus 1fil}\fi
\raggedsection\normalfont\sectfont\nobreak\size@subsubsection
}%
}
@@ -1693,14 +1860,8 @@
\newkomafont{partentrypagenumber}{}
\newkomafont{sectionentry}{\usekomafont{sectioning}}
\newkomafont{sectionentrypagenumber}{}
-\newcommand*{\size@part}{}
-\newcommand*{\size@partnumber}{}
-\newcommand*{\size@section}{}
-\newcommand*{\size@subsection}{}
-\newcommand*{\size@subsubsection}{}
-\newcommand*{\size@paragraph}{}
-\newcommand*{\size@subparagraph}{}
\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}
@@ -1708,7 +1869,6 @@
\newcommand*{\scr@fnt@subsubsection}{\size@subsubsection}
\newcommand*{\scr@fnt@paragraph}{\size@paragraph}
\newcommand*{\scr@fnt@subparagraph}{\size@subparagraph}
-\aliaskomafont{sectioning}{disposition}
\newcommand*\l@part[2]{%
\ifnum \c@tocdepth >\m@ne\relax
\addpenalty{\@secpenalty}%
@@ -1728,7 +1888,7 @@
\usekomafont{partentry}{#1\nobreak
\usekomafont{partentrypagenumber}{\hfil\nobreak
\hb@xt@\@pnumwidth{\hss#2}}}\par
- \ifnum \scr@compatibility>\@nameuse{scr@v@2.96}
+ \ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax
\endgroup
\penalty20010
\else
@@ -1766,7 +1926,7 @@
\hfill\nobreak
\hb@xt@\@pnumwidth{\hss#2}}}\par
\endgroup
- \ifnum \scr@compatibility>\@nameuse{scr@v@2.96}
+ \ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax
\penalty20008
\fi
\fi
@@ -1777,7 +1937,7 @@
\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}
+ \ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax
\ifnum #1>\c@tocdepth \else
\begingroup
\@tempcnta 20010
@@ -1875,16 +2035,19 @@
\addtolength{\@tempdima}{\marginparwidth}%
\fi
}
-\newcommand*\pnumfont{\normalfont\normalcolor}
-\newcommand*\headfont{\normalfont\normalcolor\slshape}
+\newcommand*{\pnumfont}{\normalfont\normalcolor}
+\newcommand*{\headfont}{\normalfont\normalcolor\slshape}
+\newcommand*{\footfont}{}
\newcommand*{\scr@fnt@pagenumber}{\pnumfont}
\aliaskomafont{pagination}{pagenumber}
-\newcommand*{\scr@fnt@pagehead}{\headfont}
-\newcommand*{\scr@fnt@wrn@pagehead}[1]{%
- `pagehead' and `pagefoot' are aliases for the same\MessageBreak
- font element, changed%
+\newcommand*{\scr@fnt@pageheadfoot}{\headfont}
+\aliaskomafont{pagehead}{pageheadfoot}
+\newcommand*{\scr@fnt@pagefoot}{\footfont}
+\newcommand*{\scr@fnt@wrn@pagefoot}[1]{%
+ This class does not use font element `pagefoot'!\MessageBreak
+ Maybe you should load package `scrpage2', before\MessageBreak
+ using this element%
}
-\aliaskomafont{pagefoot}{pagehead}
\newcommand*{\pagemark}{{\usekomafont{pagenumber}%
\thepage}}
\renewcommand*{\ps@plain}{%
@@ -1953,7 +2116,6 @@
\renewcommand*{\sectionmark}[1]{}%
}
\newcommand*{\titlepagestyle}{plain}
-\newcommand*{\partpagestyle}{plain}
\newcommand*{\indexpagestyle}{plain}
\pagestyle{plain}
\pagenumbering{arabic}
@@ -1983,8 +2145,6 @@
\AtBeginDocument{\let\scr@caption\caption}
\newcommand{\captionabove}{\@captionabovetrue\scr@caption}
\newcommand{\captionbelow}{\@captionabovefalse\scr@caption}
-\newcommand*{\scap@pos}{r}
-\newcommand*{\scap@valign}{b}
\newcommand*{\scap@caption}{}
\newcommand*{\scap@width}{\linewidth}
\newcommand*{\scap@move}{\z@}
@@ -2024,7 +2184,16 @@
\newbox\c@pti@nb@sid@b@x
\newcommand{\c@pti@nb@sid@}{}
\long\def\c@pti@nb@sid@[#1]#2{%
- \def\scap@caption{\captionbelow[{#1}]{#2}}%
+ \def\scap@caption{%
+ \if c\scap@valign
+ \setlength{\abovecaptionskip}{\z@}%
+ \setlength{\belowcaptionskip}{\z@}%
+ \else
+ \setlength{\abovecaptionskip}{-\ht\strutbox}%
+ \setlength{\belowcaptionskip}{-\dp\strutbox}%
+ \fi
+ \captionbelow[{#1}]{#2}%
+ }%
\begin{lrbox}{\c@pti@nb@sid@b@x}%
}
\newenvironment*{captionbeside}{%
@@ -2105,12 +2274,12 @@
\AfterPackage{caption2}{%
\renewcommand*{\setcapindent}{%
\ClassWarning{\KOMAClassName}{%
- You're using package caption2.\MessageBreak
- Because of this you should also use \string\captionstyle\space
+ You're using package `caption2'.\MessageBreak
+ Because of this you should also use `\string\captionstyle'
and\MessageBreak
- set length \string\captionindent\space instead if
+ set length '\string\captionindent' instead of
using\MessageBreak
- \string\setcapindent
+ `\string\setcapindent'%
}%
\captionstyle{indent}%
\@ifstar{\setlength{\captionindent}}{\setlength{\captionindent}}%
@@ -2120,10 +2289,10 @@
\AfterPackage{caption2}{%
\renewcommand*{\setcaphanging}{%
\ClassWarning{\KOMAClassName}{%
- You're using package caption2.\MessageBreak
+ You're using package `caption2'.\MessageBreak
Because of this you should also use
- \string\captionstyle\MessageBreak
- instead of \string\setcaphang
+ `\string\captionstyle'\MessageBreak
+ instead of `\string\setcaphang'%
}
\captionstyle{hang}%
}%
@@ -2213,11 +2382,11 @@
\AfterPackage{caption2}{%
\renewcommand*{\setcapwidth}[2][]{%
\ClassWarning{\KOMAClassName}{%
- Ignorring optional argument of \string\setcapwidth!\MessageBreak
- You're using package caption2.\MessageBreak
+ Ignorring optional argument of `\string\setcapwidth'!\MessageBreak
+ You're using package `caption2'.\MessageBreak
Because of this you should also use
- \string\setcaptionwidth\MessageBreak
- instead of \string\setcapwidth\MessageBreak
+ `\string\setcaptionwidth'\MessageBreak
+ instead of `\string\setcapwidth'%
}%
\setcaptionwidth{#2}%
}%
@@ -2276,10 +2445,10 @@
\ifdim\@tempdima\@tempdimb\else
\ClassWarning{\KOMAClassName}{%
Can set only centered caption!\MessageBreak
- You're using package caption2.\MessageBreak
+ You're using package `caption2'.\MessageBreak
Because of this you should also use
- \string\setcaptionmargin\MessageBreak
- instead of \string\setcapmargin
+ `\string\setcaptionmargin'\MessageBreak
+ instead of `\string\setcapmargin'%
}%
\fi
\addtolength{\@tempdimb}{\@tempdimb}%
@@ -2351,20 +2520,22 @@
\fi
\endgroup
}
+\newcommand*{\scr@caption@before@longtable@warning}[1]{%
+ \ClassWarning{\KOMAClassName}{%
+ you've loaded package `#1' before package\MessageBreak
+ `longtable'!\MessageBreak
+ Because of this package `#1' isn't able to\MessageBreak
+ control `\string\caption' at longtables. \space After loading
+ \MessageBreak
+ package `#1' KOMA-Script also doesn't control\MessageBreak
+ `\string\caption'.\MessageBreak
+ I think, you should load package `caption' after\MessageBreak
+ package `longtable'%
+ }%
+}
\AfterPackage{longtable}{%
\@ifpackageloaded{caption2}{\@komalongtablefalse
- \ClassWarning{\KOMAClassName}{%
- you've loaded package caption2 before package\MessageBreak
- longtable!\MessageBreak
- Because of this package caption2 isn't able to
- control\MessageBreak
- \string\caption\space at longtables. After loading package
- caption2\MessageBreak
- KOMA-Script also doesn't control \string\caption.\MessageBreak
- I think, you should load package caption after
- package\MessageBreak
- longtable and use the new interface%
- }%
+ \scr@caption@before@longtable@warning{caption2}%
}{}%
\if@komalongtable
\renewcommand{\LT@makecaption}[3]{%
@@ -2523,9 +2694,44 @@
\newcommand*{\ftntm@font}{}
\newcommand*{\scr@fnt@footnotereference}{\ftntm@font}
\newcommand*{\scr@fnt@footnoteref}{\ftntm@font}
+\newcommand*{\FN@mf@check}{%
+ \ifdim\lastkern=\multiplefootnotemarker\relax
+ \edef\@x@sf{\the\spacefactor}%
+ \unkern\multiplefootnoteseparator
+ \spacefactor\@x@sf\relax
+ \fi
+}
+\newcommand*{\scr@mf@prepare}{%
+ \kern-\multiplefootnotemarker
+ \kern\multiplefootnotemarker\relax
+}
+\@ifundefined{FN@mf@prepare}{}{}
+\newcommand*{\scr@saved@footnotetext}{}
+\let\scr@saved@footnotetext\@footnotetext
+\renewcommand*{\@footnotetext}[1]{%
+ \scr@saved@footnotetext{#1}%
+ \csname FN@mf@prepare\endcsname
+}
+\BeforePackage{footmisc}{%
+ \ifx\@footnotemark\scr@footnotemark
+ \let\@footnotemark\scr@saved@footnotemark
+ \fi
+ \let\@footnotetext\scr@saved@footnotetext
+}
+\newcommand*{\multiplefootnoteseparator}{%
+ \begingroup\let\thefootnotemark\multfootsep\@makefnmark\endgroup
+}
+\newcommand*{\multfootsep}{,}
+\newcommand*{\multiplefootnotemarker}{3sp}
\newcommand*{\thefootnotemark}{\@thefnmark}
\deffootnote[1em]{1.5em}{1em}{\textsuperscript{\thefootnotemark}}
\deffootnotemark{\textsuperscript{\thefootnotemark}}
+\newcommand*{\footref}[1]{%
+ \begingroup
+ \unrestored@protected@xdef\@thefnmark{\ref{#1}}%
+ \endgroup
+ \@footnotemark
+}
%%% From File: scrkliof.dtx
\renewcommand*{\numberline}[1]{%
\hb@xt@\@tempdima{#1\autodot\hfil}}
@@ -2569,24 +2775,39 @@
\string\gdef\expandafter\string\csname#1@l@number\endcsname{%
\@l@number}}%
}
+\g@addto@macro\tocbasic@@before@hook{%
+ \if@dynlist\expandafter\before@starttoc\expandafter{\@currext}\fi
+}
+\g@addto@macro\tocbasic@@after@hook{%
+ \if@dynlist\expandafter\after@starttoc\expandafter{\@currext}\fi
+}
\newcommand*\contentsname{Contents}
+\newcommand*\listoftocname{\contentsname}
\setcounter{tocdepth}{3}
\newcommand*\toc@heading{%
+ \ClassWarning{\KOMAClassName}{%
+ usage of deprecated \string\toc@heading!\MessageBreak
+ You should use the features of package `tocbasic'\MessageBreak
+ instead of \string\toc@heading.\MessageBreak
+ Definition of \string\toc@heading\space my be removed from\MessageBreak
+ KOMA-Script soon, so it should not be used
+ }%
\section*{\contentsname}%
\@mkboth{\contentsname}{\contentsname}%
}
\newcommand*{\toc@l@number}{}
\newcommand*{\tableofcontents}{%
- \begingroup
- \toc@heading%
- \setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative
- \if@tocleft\before@starttoc{toc}\fi
- \@starttoc{toc}%
- \if@tocleft\after@starttoc{toc}\fi
- \endgroup
+ \begingroup\let\if@dynlist\if@tocleft\listoftoc{toc}\endgroup
}
\newcommand*{\float@listhead}[1]{%
- \section*{#1}%
+ \ClassWarning{\KOMAClassName}{%
+ usage of deprecated \string\float@listhead!\MessageBreak
+ You should use the features of package `tocbasic'\MessageBreak
+ instead of \string\float@listhead.\MessageBreak
+ Definition of \string\float@listhead\space my be removed from\MessageBreak
+ KOMA-Script soon, so it should not be used
+ }%
+ \float@@listhead{#1}%
\@mkboth{#1}{#1}%
\if@dynlist%
\newcommand*{\scr@starttoc}{}%
@@ -2597,41 +2818,37 @@
\fi
}
\newcommand*\listfigurename{List of Figures}
+\newcommand*\listoflofname{\listfigurename}
\newcommand*\listtablename{List of Tables}
-\newcommand*\lof@heading{\float@listhead{\listfigurename}}
-\newcommand*\listoffigures{%
- \begingroup%
- \lof@heading%
- \setparsizes{0}{0}{\z@\@plus 1fil}\par@updaterelative
- \@starttoc{lof}%
- \endgroup
-}
+\newcommand*\listoflotname{\listtablename}
+\newcommand*\listoffigures{\listoftoc{lof}}
\newcommand*\l@figure{\@dottedtocline{1}{1.5em}{2.3em}}
-\newcommand*\lot@heading{\float@listhead{\listtablename}}
-\newcommand*\listoftables{%
- \begingroup
- \lot@heading
- \setparsizes{0}{0}{\z@\@plus 1fil}\par@updaterelative
- \@starttoc{lot}%
- \endgroup
-}
+\newcommand*\listoftables{\listoftoc{lot}}
\let\l@table\l@figure
%%% From File: scrkbib.dtx
\newcommand*\refname{References}
\newcommand*{\bibpreamble}{\relax}
\let\bibpreamble\relax
\newcommand{\setbibpreamble}[1]{\def\bibpreamble{#1}}
-\newcommand*\bib@heading{%
- \section*{\refname}%
- \@mkboth{\refname}{\refname}%
-}
\newdimen\bibindent
\bibindent=1.5em
\newenvironment{thebibliography}[1]{%
- \bib@heading
- \ifx\bibpreamble\relax\else\ifx\bibpreamble\@empty\else
- \noindent\bibpreamble\par\nobreak
- \fi\fi
+ \if@bib@break@
+ \bib@beginhook
+ \else
+ \bib@heading
+ \ifx\bibpreamble\relax\else\ifx\bibpreamble\@empty\else
+ \noindent\bibpreamble\par\nobreak
+ \fi\fi
+ \bib@beginhook
+ \bib@before@hook
+ \fi
+ \renewcommand{\BreakBibliography}[1]{%
+ \@bib@break
+ \end{thebibliography}%
+ \begingroup ##1\endgroup
+ \begin{thebibliography}{#1}
+ }%
\list{%
\@biblabel{\@arabic\c@enumiv}%
}{%
@@ -2639,26 +2856,66 @@
\leftmargin\labelwidth
\advance\leftmargin\labelsep
\@openbib@code
- \usecounter{enumiv}%
+ \if@bib@break@
+ \edef\@tempa{%
+ \noexpand\usecounter{enumiv}%
+ \noexpand\setcounter{enumiv}{\the\c@enumiv}%
+ }\@tempa
+ \no@bib@break
+ \else
+ \usecounter{enumiv}%
+ \fi
\let\p@enumiv\@empty
\renewcommand*\theenumiv{\@arabic\c@enumiv}%
}%
\sloppy\clubpenalty4000 \widowpenalty4000
\sfcode`\.=\@m
}{%
- \def\@noitemerr{%
- \@latex@warning{Empty `thebibliography' environment}%
- }%
+ \if@bib@break@
+ \def\@noitemerr{%
+ \@latex@warning{%
+ \string\BreakBibliography\space at begin of `thebibliography'
+ environment\MessageBreak
+ or following \string\BreakBibliography}%
+ }%
+ \else
+ \def\@noitemerr{%
+ \@latex@warning{%
+ Empty `thebibliography' environment or
+ \string\BreakBibliography\MessageBreak
+ before end of `thebibliography' environment}%
+ }%
+ \fi
\endlist
+ \if@bib@break@
+ \else
+ \bib@after@hook
+ \let\bib@before@hook\@empty
+ \let\bib@after@hook\@empty
+ \fi
+ \bib@endhook
+}
+\newif\if@bib@break@
+\newcommand{\no@bib@break}{\global\let\if@bib@break@\iffalse}
+\newcommand*{\@bib@break}{\global\let\if@bib@break@\iftrue}
+\newcommand*{\bib@before@hook}{}
+\newcommand*{\bib@after@hook}{}
+\newcommand{\BreakBibliography}[1]{%
+ \ClassWarning{\KOMAClassName}{%
+ You've used \string\BreakBibliography\space either outside of\MessageBreak
+ the bibliography or `thebibliography' was redefined\MessageBreak
+ incompatible, e.g., using a bibliography package.\MessageBreak
+ \string\BreakBibliography\space ignored%
+ }%
}
-\newcommand*\newblock{\hskip .11em\@plus.33em\@minus.07em}
-\let\@openbib@code\@empty
+\newcommand{\AfterBibliographyPreamble}{\g@addto@macro\bib@before@hook}
+\newcommand{\AtEndBibliography}{\g@addto@macro\bib@after@hook}
%%% From File: scrkidx.dtx
\newcommand*{\index@preamble}{}
\let\index@preamble=\relax
\newcommand{\setindexpreamble}[1]{\def\index@preamble{#1}}
\newcommand*{\idx@heading}{%
- \twocolumn[\section*{\indexname}]%
+ \twocolumn[\idx@@heading{\indexname}]%
\@mkboth{\indexname}{\indexname}%
}
\newenvironment{theindex}{%
diff --git a/Master/texmf-dist/tex/latex/koma-script/scrbase.sty b/Master/texmf-dist/tex/latex/koma-script/scrbase.sty
new file mode 100644
index 00000000000..648b5fdfa2f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/koma-script/scrbase.sty
@@ -0,0 +1,813 @@
+%%
+%% This is file `scrbase.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% scrkvers.dtx (with options: `package,scrbase')
+%% scrkbase.dtx (with options: `package,option,base')
+%% scrklang.dtx (with options: `package,option,base')
+%% scrlfile.dtx (with options: `load')
+%% scrkbase.dtx (with options: `package,body,base')
+%% scrklang.dtx (with options: `package,body,base')
+%% scrlogo.dtx (with options: `logo')
+%%
+%% Copyright (c) 1994-2007
+%% Markus Kohm and any individual authors listed elsewhere in this file.
+%%
+%% This file was generated from file(s) of the KOMA-Script bundle.
+%% ---------------------------------------------------------------
+%%
+%% It may be distributed under the conditions of the
+%% LaTeX Project Public License in the version distributed together
+%% with KOMA-Script, see file `lppl.txt' or `lppl-de.txt'.
+%%
+%% This file may only be distributed together with a copy of the
+%% KOMA-Script bundle. You may however distribute the
+%% KOMA-Script bundle without all such generated files. See also
+%% `lppl.txt' or `lppl-de.txt' for additional information.
+%%
+%% The list of files belonging to KOMA-Script distribution is given in
+%% the file `manifest.txt'. See also `lppl.txt' or `lppl-de.txt' for
+%% additional information.
+%%
+%% If this file is a beta version, you are not allowed to distribute it.
+%%
+%% English and German manuals are part of KOMA-Script bundle.
+%% ----------------------------------------------------------
+%%
+%% See `README'.
+%%
+%% The KOMA-Script bundle (but maybe not this file) was based upon the
+%% LaTeX2.09 Script family created by Frank Neukam 1993 and the LaTeX2e
+%% standard classes created by The LaTeX3 Project 1994-1996.
+%%
+%%% From File: scrkvers.dtx
+\begingroup
+ \makeatletter
+ \ifx\KOMAScriptVersion\undefined
+ \newcommand*{\@CheckKOMAScriptVersion}[1]{%
+ \gdef\KOMAScriptVersion{#1}%
+ }%
+ \else
+ \newcommand*{\@CheckKOMAScriptVersion}[1]{%
+ \def\@tempa{#1}%
+ \ifx\KOMAScriptVersion\@tempa\else
+ \@latex@warning@no@line{%
+ \noexpand\KOMAScriptVersion\space is
+ `\KOMAScriptVersion',\MessageBreak
+ but `#1' was expected!\MessageBreak
+ You should not use classes, packages or files
+ from\MessageBreak
+ different KOMA-Script versions%
+ }%
+ \fi
+ }
+ \fi
+ \@CheckKOMAScriptVersion{2008/11/03 v3.00 KOMA-Script}%
+\endgroup
+%%% From File: scrkbase.dtx
+\ProvidesPackage{%
+ scrbase%
+}[%
+ \KOMAScriptVersion\space package
+ (KOMA-Script-independent basics and keyval usage)]
+\RequirePackage{keyval}
+\begingroup\expandafter\expandafter\expandafter\endgroup
+\expandafter\ifx\csname ifcsname\endcsname\relax
+ \newcommand{\scr@ifundefinedorrelax}[1]{%
+ \begingroup\expandafter\expandafter\expandafter\endgroup
+ \expandafter\ifx\csname #1\endcsname\relax
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi
+ }
+\else
+ \newcommand{\scr@ifundefinedorrelax}[1]{%
+ \ifcsname #1\endcsname
+ \expandafter\ifx\csname #1\endcsname\relax
+ \expandafter\expandafter\expandafter\@firstoftwo
+ \else
+ \expandafter\expandafter\expandafter\@secondoftwo
+ \fi
+ \else
+ \expandafter\@firstoftwo
+ \fi
+ }
+\fi
+\newcommand*{\DefineFamily}[1]{%
+ \scr@ifundefinedorrelax{#1@key@familylist}{%
+ \@namedef{#1@key@familylist}{}%
+ }{}%
+}
+\newcommand*{\scr@if@family}[2]{%
+ \scr@ifundefinedorrelax{#1@key@familylist}{%
+ \PackageError{scrbase}{%
+ unknown family `#1'%
+ }{%
+ You've tried to #2 for family `#1'.\MessageBreak
+ This my be done only for previous defined families.\MessageBreak
+ You should call `\string\DefineFamily{#1}' first.%
+ }%
+ }%
+}
+\newcommand*{\DefineFamilyMember}[2][.\@currname.\@currext]{%
+ \scr@if@family{#2}{define a family member}{%
+ \edef\reserved@a{%
+ \noexpand\in@{#2#1,}{\csname #2@key@familylist\endcsname}}%
+ \reserved@a
+ \ifin@\else
+ \expandafter\edef\csname #2@key@familylist\endcsname{%
+ \@nameuse{#2@key@familylist}#2#1,}%
+ \fi
+ }%
+}
+\newcommand*{\scr@if@familymember}[3]{%
+ \scr@if@family{#2}{#3}{%
+ \edef\reserved@a{%
+ \noexpand\in@{#2#1,}{\csname #2@key@familylist\endcsname}}%
+ \reserved@a
+ \ifin@
+ \expandafter\@firstofone
+ \else
+ \PackageError{scrbase}{%
+ unknown member `#1' at family `#2'%
+ }{%
+ You've tried to #3 for member `#1' of family `#2'.\MessageBreak
+ This my be done only for previous defined family members.\MessageBreak
+ You should call `\string\DefineFamilyMember[{#1}]{#2}' first.%
+ }%
+ \expandafter\@gobble
+ \fi
+ }%
+}
+\newcommand*{\DefineFamilyKey}[2][.\@currname.\@currext]{%
+ \scr@if@familymember{#1}{#2}{define a key}{%
+ \define@key{#2#1}%
+ }%
+}
+\newcommand*{\@globaloptionslist}{}
+\let\@globaloptionslist\@classoptionslist
+\scr@ifundefinedorrelax{XKV@classoptionslist}{}{%
+ \ifx\XKV@classoptionslist\@empty\else
+ \let\@globaloptionslist\XKV@classoptionslist
+ \fi
+}
+\newcommand*{\FamilyProcessOptions}[2][.\@currname.\@currext]{%
+ \let\ds@\@empty
+ \edef\@curroptions{\@ptionlist{\@currname.\@currext}}%
+ \ifx\@currext\@clsextension\else
+ \@for\CurrentOption:=\@globaloptionslist\do{%
+ \ifx\CurrentOption\@empty\else
+ \@expandtwoargs\in@{,\CurrentOption,}{,\@declaredoptions,}%
+ \ifin@
+ \@use@ption
+ \expandafter\let\csname ds@\CurrentOption\endcsname\@empty
+ \else
+ \scr@optiontest{#2}\CurrentOption{}{%
+ \@use@ption
+ \@expandtwoargs\setkeys{#2}%
+ \CurrentOption
+ }%
+ \scr@optiontest{#2#1}\CurrentOption{}{%
+ \@use@ption
+ \@expandtwoargs\setkeys{#2#1}%
+ \CurrentOption
+ }%
+ \fi
+ \fi
+ }%
+ \fi
+ \@for\CurrentOption:=\@curroptions\do{%
+ \@use@ption
+ \scr@ifundefinedorrelax{ds@\CurrentOption}{%
+ \scr@optiontest{#2}\CurrentOption{%
+ \scr@optiontest{#2#1}\CurrentOption{%
+ \default@ds
+ }{%
+ \edef\reserved@a{%
+ \noexpand\setkeys{#2#1}{\CurrentOption}%
+ \noexpand\def\noexpand\CurrentOption{\CurrentOption}%
+ }\reserved@a
+ }%
+ }{%
+ \@expandtwoargs\setkeys{#2}%
+ \CurrentOption
+ \scr@optiontest{#2#1}\CurrentOption{}{%
+ \@expandtwoargs\setkeys{#2#1}%
+ \CurrentOption
+ }%
+ }%
+ }{%
+ }%
+ }%
+ \@for\CurrentOption:=\@declaredoptions\do{%
+ \expandafter\let\csname ds@\CurrentOption\endcsname\relax}%
+ \let\CurrentOption\@empty
+ \let\@fileswith@pti@ns\@@fileswith@pti@ns
+ \AtEndOfPackage{\let\@unprocessedoptions\relax}%
+}
+\@onlypreamble\FamilyProcessOptions
+\newcommand*{\scr@optiontest}[2]{%
+ \edef\reserved@a{\noexpand\scr@pti@ntest{#1}#2=\noexpand\@nil}%
+ \reserved@a
+}
+\newcommand*{\scr@pti@ntest}{}
+\def\scr@pti@ntest#1#2=#3\@nil{\scr@ifundefinedorrelax{KV@#1@#2}}
+\newcommand*{\dont@let@as@internal@defined}{/}
+\newif\if@let@as@internalonly@defined\@let@as@internalonly@definedfalse
+\DefineFamily{KOMA}
+\DefineFamilyMember{KOMA}
+\DefineFamilyKey{KOMA}{internalonly}[\relax]{%
+ \ifx\relax#1\relax
+ \@let@as@internalonly@definedtrue
+ \else
+ \@let@as@internalonly@definedfalse
+ \begingroup
+ \@expandtwoargs\in@{#1}\dont@let@as@internal@defined
+ \expandafter\endgroup
+ \ifin@\else\g@addto@macro\dont@let@as@internal@defined{#1/}\fi
+ \fi
+}
+\FamilyProcessOptions{KOMA}\relax
+%%% From File: scrklang.dtx
+%%% From File: scrlfile.dtx
+\def\scrlfileversion{2008/07/09 v3.00}
+\edef\@tempa{\noexpand\RequirePackage{scrlfile}[\scrlfileversion]}
+\@tempa
+%%% From File: scrkbase.dtx
+\newif\if@atdocument
+\AtBeginDocument{\@atdocumenttrue}
+\@onlypreamble\@atdocumentrue
+\@onlypreamble\@atdocumentfalse
+\newcommand*{\let@as@internal@defined}[1]{%
+ \begingroup
+ \if@let@as@internalonly@defined
+ \in@true
+ \else
+ \@expandtwoargs\in@{/#1/}\dont@let@as@internal@defined
+ \fi
+ \expandafter\endgroup
+ \ifin@
+ \PackageInfo{%
+ scrbase%
+ }{%
+ \expandafter\string\csname #1\endcsname\space excluded from being
+ defined%
+ }%
+ \else
+ \@ifundefined{#1}{%
+ \begingroup
+ \expandafter\def\expandafter\@tempa
+ \expandafter{\csname scr@#1\endcsname}
+ \expandafter\def\expandafter\@tempb
+ \expandafter{\csname #1\endcsname}
+ \expandafter\expandafter\expandafter\endgroup
+ \expandafter\expandafter\expandafter\let\expandafter\@tempb\@tempa
+ \if@atdocument\else
+ \g@addto@macro\document{%
+ \expandafter\ifx\csname #1\expandafter\endcsname
+ \csname scr@#1\endcsname
+ \else
+ \PackageWarning{scrbase}{%
+ \expandafter\string\csname #1\endcsname\space was
+ redefined\MessageBreak
+ at the document preamble.\MessageBreak
+ If you did not redefine it by yourself, have a\MessageBreak
+ a look at the description of this command at\MessageBreak
+ the manual of every package you are using\@gobble
+ }%
+ \fi
+ }%
+ \fi
+ }{%
+ \PackageInfo{%
+ scrbase%
+ }{%
+ \expandafter\string\csname #1\endcsname\space already
+ defined.\MessageBreak
+ If \expandafter\string\csname #1\endcsname\space does not behave
+ like\MessageBreak
+ it was described at the KOMA-Script manual, try to\MessageBreak
+ load `scrbase.sty' earlier or find out at which\MessageBreak
+ package or class \expandafter\string\csname #1\endcsname\space
+ was defined before\@gobble
+ }%
+ }%
+ \fi
+}
+\let@as@internal@defined{ifundefinedorrelax}
+\scr@ifundefinedorrelax{ifcsname}{%
+ \newcommand{\ifnotundefined}[1]{%
+ \begingroup\expandafter\expandafter\expandafter\endgroup
+ \expandafter\ifx\csname #1\endcsname\relax
+ \expandafter\@secondoftwo
+ \else
+ \expandafter\@firstoftwo
+ \fi
+ }%
+}{%
+ \newcommand{\ifnotundefined}[1]{%
+ \ifcsname #1\endcsname
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi
+ }%
+}
+\newcommand\ifstr[2]{%
+ \begingroup\edef\@tempa{#1}\edef\@tempb{#2}%
+ \ifx\@tempa\@tempb
+ \endgroup\expandafter\@firstoftwo
+ \else
+ \endgroup\expandafter\@secondoftwo
+ \fi
+}
+\newcommand\ifnumber[1]{%
+ \begingroup\@tempswafalse\let\scr@next\test@number
+ \expandafter\scr@next#1\scr@next
+ \if@tempswa
+ \endgroup\expandafter\@firstoftwo
+ \else
+ \endgroup\expandafter\@secondoftwo
+ \fi
+}
+\newcommand*{\test@number}[1]{%
+ \ifx \scr@next#1
+ \let\scr@next\relax
+ \else
+ \@tempcnta=\expandafter\expandafter\expandafter\number
+ \expandafter`#1\relax
+ \ifnum \@tempcnta>47
+ \ifnum \@tempcnta<58
+ \@tempswatrue
+ \else\@tempswafalse\fi
+ \else\@tempswafalse\fi
+ \if@tempswa\else\let\scr@next\gobble@till@scr@next\fi
+ \fi
+ \scr@next
+}
+\newcommand*{\gobble@till@scr@next}{}
+\def\gobble@till@scr@next#1\scr@next{}
+\newcommand{\ifdimen}[1]{%
+ \begingroup\@tempswatrue\let\scr@next\test@posdimen
+ \expandafter\test@dimen#1\scr@next
+ \if@tempswa
+ \endgroup\expandafter\@firstoftwo
+ \else
+ \endgroup\expandafter\@secondoftwo
+ \fi
+}
+\newcommand*{\test@dimen}[1]{%
+ \ifx -#1\else\ifx +#1\else
+ \def\scr@next{\let\scr@next\test@posdimen\scr@next#1}\fi\fi
+ \scr@next
+}
+\newcommand*{\test@posdimen}[1]{%
+ \ifx \scr@next#1%
+ \@tempswafalse\let\scr@next\relax
+ \else
+ \if .#1\else\if ,#1\else
+ \@tempcnta=%
+ \expandafter\expandafter\expandafter\number\expandafter`#1\relax
+ \ifnum \@tempcnta>47
+ \ifnum \@tempcnta<58
+ \else\def\scr@next{\test@dimunt#1}\fi
+ \else\def\scr@next{\test@dimunt#1}\fi
+ \fi\fi
+ \fi
+ \scr@next
+}
+\newcommand*{\test@dimunt}{}
+\def\test@dimunt#1\scr@next{%
+ \expandafter\test@trueunt#1truetrue\test@trueunt
+}
+\newcommand*{\test@trueunt}{}
+\def\test@trueunt#1true#2true#3\test@trueunt{%
+ \edef\@tempa{#1}
+ \ifx\@tempa\@empty\test@@ifdimunt{#2}\else\test@@ifdimunt{#1}\fi
+}
+\newcommand*\test@@ifdimunt[1]{%
+ \@tempswafalse
+ \ifstr{#1}{pt}{\@tempswatrue}{%
+ \ifstr{#1}{pc}{\@tempswatrue}{%
+ \ifstr{#1}{in}{\@tempswatrue}{%
+ \ifstr{#1}{bp}{\@tempswatrue}{%
+ \ifstr{#1}{cm}{\@tempswatrue}{%
+ \ifstr{#1}{mm}{\@tempswatrue}{%
+ \ifstr{#1}{dd}{\@tempswatrue}{%
+ \ifstr{#1}{cc}{\@tempswatrue}{%
+ \ifstr{#1}{sp}{\@tempswatrue}{}%
+ }%
+ }%
+ }%
+ }%
+ }%
+ }%
+ }%
+ }%
+}
+\newcommand{\scr@ifpdftex}{\ifnotundefined{pdftexversion}}
+\let@as@internal@defined{ifpdftex}
+\BeforePackage{pdfcprot}{\let\ifpdftex\relax}
+\AfterPackage{pdfcprot}{\let@as@internal@defined{ifpdftex}}
+\newcommand{\scr@ifVTeX}{\ifnotundefined{VTeXversion}}
+\let@as@internal@defined{ifVTeX}
+\newcommand{\scr@ifpdfoutput}{%
+ \scr@ifundefinedorrelax{pdfoutput}{%
+ \scr@ifundefinedorrelax{OpMode}{%
+ \expandafter\@secondoftwo%
+ }{%
+ \ifnum\OpMode=1
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi
+ }%
+ }{%
+ \ifnum\pdfoutput>0
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi
+ }%
+}%
+\let@as@internal@defined{ifpdfoutput}
+\newcommand*{\scr@ifpsoutput}{%
+ \ifnotundefined{if@dvips}{%
+ \if@dvips
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi
+ }{%
+ \ifnotundefined{OpMode}{%
+ \ifnum\OpMode=2
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi
+ }{%
+ \expandafter\@secondoftwo
+ }%
+ }%
+}
+\let@as@internal@defined{ifpsoutput}
+\newcommand*{\scr@ifdvioutput}{%
+ \scr@ifundefinedorrelax{pdfoutput}{%
+ \scr@ifundefinedorrelax{OpMode}{%
+ \expandafter\@firstoftwo
+ }{%
+ \ifnum\OpMode=0
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi
+ }%
+ }{%
+ \ifnum\pdfoutput=0
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi
+ }%
+}
+\let@as@internal@defined{ifdvioutput}
+\newcommand*{\scr@smashdp}[1]{%
+ \begingroup
+ \def\finsm@sh{\dp\z@\z@\box\z@}%
+ \smash{#1}%
+ \endgroup
+}
+\providecommand*{\PackageInfoNoLine}[2]{%
+ \PackageInfo{#1}{#2\@gobble}%
+}
+\providecommand*{\ClassInfoNoLine}[2]{%
+ \ClassInfo{#1}{#2\@gobble}%
+}
+\newcommand*{\FamilyExecuteOptions}[3][.\@currname.\@currext]{%
+ \def\reserved@a##1\@nil{%
+ \@for\scr@key@atlist:=#3\do{%
+ \expandafter\scr@key@split@name@value\scr@key@atlist==\@nil
+ \scr@ifundefinedorrelax{KV@#2@\scr@key@name}{}{%
+ \edef\reserved@a{\noexpand\setkeys{#2}{\scr@key@atlist}%
+ }%
+ \reserved@a
+ }%
+ \scr@ifundefinedorrelax{KV@#2#1@\scr@key@name}{}{%
+ \edef\reserved@a{%
+ \noexpand\setkeys{#2#1}{\scr@key@atlist}%
+ }%
+ \reserved@a
+ }%
+ \let\CurrentOption\scr@key@atlist
+ \csname ds@\CurrentOption\endcsname
+ }%
+ \edef\CurrentOption{##1}%
+ }%
+ \expandafter\reserved@a\CurrentOption\@nil
+}
+\@onlypreamble\FamilyExecuteOptions
+\newcommand*{\FamilyOptions}[2]{%
+ \Family@Options{#1}{#2}{%
+ \PackageError{scrbase}{%
+ option `\scr@key@name' unknown at family `#1'%
+ }{%
+ You have used \string\FamilyOptions{#1} to set
+ `\scr@key@atlist',\MessageBreak
+ but family `#1' does not know any option named
+ `\scr@key@name'.\MessageBreak
+ See the manual for the package or class using family `#1' for
+ more\MessageBreak
+ informations about options and their values.%
+ }%
+ }%
+}
+\newcommand*{\Family@Options}[3]{%
+ \@for\scr@key@atlist:=#2\do{%
+ \expandafter\scr@key@split@name@value\scr@key@atlist==\@nil
+ \scr@key@found@false
+ \edef\@tempa{\csname #1@key@familylist\endcsname}%
+ \@for\@tempa:=\@tempa\do{%
+ \scr@ifundefinedorrelax{KV@\@tempa @\scr@key@name}{}{%
+ \scr@key@found@true
+ \edef\reserved@a{\noexpand\setkeys{\@tempa}{\scr@key@atlist}%
+ \noexpand\edef\noexpand\@tempa{\@tempa}%
+ \noexpand\edef\noexpand\scr@key@atlist{\scr@key@atlist}%
+ \noexpand\edef\noexpand\scr@key@name{\scr@key@name}%
+ \noexpand\edef\noexpand\scr@key@value{\scr@key@value}%
+ }%
+ \reserved@a
+ }%
+ }%
+ \ifscr@key@found@\else#3\fi
+ }%
+}
+\newif\ifscr@key@found@
+\newcommand*{\scr@key@atlist}{}
+\newcommand*{\scr@key@name}{}
+\newcommand*{\scr@key@value}{}
+\newcommand*{\scr@key@split@name@value}{}
+\def\scr@key@split@name@value#1=#2=#3\@nil{%
+ \KV@@sp@def\scr@key@name{#1}%
+ \KV@@sp@def\scr@key@value{#2}%
+}
+\newcommand*{\FamilyOption}[3]{%
+ \Family@Option{#1}{#2}{#3}{%
+ \PackageError{scrbase}{%
+ unknown option `\scr@key@name' for familie `#1'%
+ }{%
+ You have used \string\FamilyOption{#1} to set
+ `\scr@key@name',\MessageBreak
+ but family '#1' does not know any option named
+ `\scr@key@name'.\MessageBreak
+ See the the manual of the class or package, that provides
+ family\MessageBreak
+ `#1' for more informations about options and their values.%
+ }%
+ }%
+}
+\newcommand*{\Family@Option}[4]{%
+ \expandafter\KV@@sp@def\expandafter\scr@key@name\expandafter{#2}%
+ \scr@key@found@false
+ \edef\@tempa{\csname #1@key@familylist\endcsname}%
+ \@for\@tempa:=\@tempa\do{%
+ \scr@ifundefinedorrelax{KV@\@tempa @\scr@key@name}{}{%
+ \scr@key@found@true
+ \let\@tempb\@tempa
+ }%
+ }%
+ \ifscr@key@found@
+ \let\reserved@a\@empty
+ \@for\@tempa:=#3\do{%
+ \expandafter\KV@@sp@def\expandafter\@tempa\expandafter{\@tempa}%
+ \edef\reserved@a{\reserved@a,\scr@key@name=\@tempa}%
+ }%
+ \ifx\reserved@a\@empty
+ \edef\reserved@a{\noexpand\setkeys{\@tempb}{\scr@key@name}}%
+ \else
+ \edef\reserved@a{%
+ \noexpand\setkeys{\@tempb}{\expandafter\@gobble\reserved@a}}%
+ \fi
+ \reserved@a
+ \else
+ #4
+ \fi
+}
+\scr@ifundefinedorrelax{unexpanded}{%
+ \newcommand*{\g@addto@macro@temp}{}%
+ \newcommand{\l@addto@macro}[2]{%
+ \begingroup%
+ \toks@\expandafter{#1#2}%
+ \xdef\g@addto@macro@temp{\the\toks@}%
+ \endgroup
+ \let#1\g@addto@macro@temp
+ }%
+}{%
+ \newcommand{\l@addto@macro}[2]{%
+ \edef#1{\unexpanded\expandafter{#1#2}}%
+ }%
+}
+\newcommand*{\FamilyUnknownKeyValue}[4]{%
+ \PackageError{%
+ scrbase%
+ }{%
+ option `#2' of family `#1' has no value `#3'%
+ }{%
+ You've tried to set option `#2' of family '#1' to value `#3'.\MessageBreak
+ But allowed values are only:\MessageBreak
+ #4\FamilyElseValues.\MessageBreak
+ See the manual of the class or package, that provides family
+ `#1'\MessageBreak
+ for more information about options and their values.%
+ }%
+}
+\newcommand*{\FamilyElseValues}{}
+\newcommand*{\FamilyBoolKey}[4][.\@currname.\@currext]{%
+ \@ifundefined{if#4}{%
+ \expandafter\newif\csname if#4\endcsname
+ }{}%
+ \DefineFamilyKey[{#1}]{#2}{#3}[true]{\FamilySetBool{#2}{#3}{#4}{##1}}%
+}
+\newcommand*{\FamilySetBool}[4]{%
+ \ifstr{#4}{true}{\@nameuse{#3true}}{%
+ \ifstr{#4}{on}{\@nameuse{#3true}}{%
+ \ifstr{#4}{yes}{\@nameuse{#3true}}{%
+ \ifstr{#4}{false}{\@nameuse{#3false}}{%
+ \ifstr{#4}{off}{\@nameuse{#3false}}{%
+ \ifstr{#4}{no}{\@nameuse{#3false}}{%
+ \FamilyUnknownKeyValue{#1}{#2}{#3}{%
+ `true', `on', `yes', `false', `off', `no'%
+ }%
+ }%
+ }%
+ }%
+ }%
+ }%
+ }%
+ \let\FamilyElseValues\@empty
+}
+\newcommand*{\FamilyNumericalKey}[3][.\@currname.\@currext]{%
+ \@ifnextchar [%]
+ {\Family@Numerical@Key{#1}{#2}{#3}}{\Family@Numerical@Key{#1}{#2}{#3}[]}%
+}
+\newcommand*{\Family@Numerical@Key}{}
+\def\Family@Numerical@Key#1#2#3[#4]#5#6{%
+ \@ifundefined{#5}{\@namedef{#5}{0}}%
+ \ifx\relax#4\relax
+ \DefineFamilyKey[{#1}]{#2}{#3}{\FamilySetNumerical{#2}{#3}{#5}{#6}{##1}}%
+ \else
+ \DefineFamilyKey[{#1}]{#2}{#3}[{#4}]{%
+ \FamilySetNumerical{#2}{#3}{#5}{#6}{##1}}%
+ \fi
+}
+\newcommand*{\FamilySetNumerical}[5]{%
+ \begingroup
+ \edef\@searched{#5}%
+ \let\@tempa=\@empty
+ \let\@tempb=\@empty
+ \@tempswafalse
+ \@for\@valuelist:=#4\do{%
+ \if@tempswa\else
+ \edef\@tempc{\expandafter\@firstoftwo\@valuelist}%
+ \edef\@tempa{\@tempa\@tempb`\@tempc'}%
+ \edef\@tempb{, }%
+ \ifx\@tempc\@searched
+ \@tempswatrue
+ \edef\@tempa{\expandafter\@secondoftwo\@valuelist}%
+ \fi
+ \fi
+ }%
+ \if@tempswa
+ \edef\@tempa{\endgroup
+ \noexpand\@namedef{#3}{\@tempa}%
+ }%
+ \else
+ \FamilyUnknownKeyValue{#1}{#2}{#5}{\@tempa}%
+ \let\@tempa=\endgroup
+ \fi
+ \@tempa
+ \let\FamilyElseValues\@empty
+}
+%%% From File: scrklang.dtx
+\newcommand*{\providecaptionname}[3]{%
+ \@ifundefined{captions#1}{%
+ \@ifundefined{cap@info@#1@done}{%
+ \PackageInfo{scrbase}{%
+ No captions found for `#1'\MessageBreak
+ --> skipped%
+ }%
+ \expandafter\let\csname cap@info@#1@done\endcsname\@empty
+ }{}%
+ }{%
+ \begingroup
+ \let\@tempa\endgroup
+ \csname captions#1\endcsname
+ \ifx #2\undefined
+ \edef\@tempb{#1}%
+ \@onelevel@sanitize\@tempb
+ \@onelevel@sanitize\languagename
+ \ifx\@tempb\languagename
+ \def\@tempa{\endgroup%
+ \expandafter\g@addto@macro\csname captions#1\endcsname{%
+ \def#2{#3}}%
+ \csname captions#1\endcsname
+ }%
+ \else
+ \def\@tempa{\endgroup%
+ \expandafter\g@addto@macro\csname captions#1\endcsname{%
+ \def#2{#3}}%
+ }%
+ \fi
+ \else
+ \PackageInfo{scrbase}{%
+ `\string#2' at language `#1' already
+ defined\MessageBreak
+ --> skipped%
+ }%
+ \fi
+ \@tempa
+ }%
+}
+\newcommand*{\newcaptionname}[3]{%
+ \@ifundefined{captions#1}{%
+ \PackageInfo{scrbase}{%
+ No captions found for `#1' --> defining%
+ }%
+ \@namedef{captions#1}{}%
+ }{}%
+ \begingroup
+ \csname captions#1\endcsname
+ \ifx #2\undefined\else
+ \PackageError{scrbase}{%
+ `\string#2' at language `#1' already defined%
+ }{%
+ You've told me to define `\string#2' at language
+ `#1',\MessageBreak
+ but it is already defined.\MessageBreak
+ It will be redefined, if you'll continue.%
+ }%
+ \fi
+ \endgroup
+ \expandafter\g@addto@macro\csname captions#1\endcsname{%
+ \def#2{#3}%
+ }%
+ \begingroup
+ \edef\@tempb{#1}%
+ \@onelevel@sanitize\@tempb
+ \@onelevel@sanitize\languagename
+ \ifx\@tempb\languagename
+ \def\@tempa{\endgroup\csname captions#1\endcsname}%
+ \else
+ \let\@tempa\endgroup
+ \fi
+ \@tempa
+}
+\newcommand*{\renewcaptionname}[3]{%
+ \@ifundefined{captions#1}{%
+ \PackageError{scrbase}{%
+ No captions found for `#1'%
+ }{%
+ You've told me to redefine the caption `\string#2' at language
+ `#1',\MessageBreak
+ but `\expandafter\string\csname captions#1\endcsname' is not
+ defined.\MessageBreak
+ If you'll continue it will be defined.%
+ }
+ \@namedef{captions#1}{}%
+ }{}%
+ \begingroup
+ \csname captions#1\endcsname
+ \ifx #2\undefined
+ \PackageError{scrbase}{%
+ `\string#2' not defined at language `#1'%
+ }{%
+ You've told me to redefine `\string#2' at language
+ `#1',\MessageBreak
+ but it is not defined.\MessageBreak
+ If you'll continue it will be defined.%
+ }%
+ \fi
+ \endgroup
+ \expandafter\g@addto@macro\csname captions#1\endcsname{%
+ \def#2{#3}%
+ }%
+ \begingroup
+ \edef\@tempb{#1}%
+ \@onelevel@sanitize\@tempb
+ \@onelevel@sanitize\languagename
+ \ifx\@tempb\languagename
+ \def\@tempa{\endgroup\csname captions#1\endcsname}%
+ \else
+ \let\@tempa\endgroup
+ \fi
+ \@tempa
+}
+%%% From File: scrlogo.dtx
+\@ifundefined{KOMAScript}{%
+ \DeclareRobustCommand{\KOMAScript}{\textsf{K\kern.05em O\kern.05em%
+ M\kern.05em A\kern.1em-\kern.1em Script}}}{}
+\endinput
+%%
+%% End of file `scrbase.sty'.
diff --git a/Master/texmf-dist/tex/latex/koma-script/scrbook.cls b/Master/texmf-dist/tex/latex/koma-script/scrbook.cls
index 649e57d059f..732ea3e7b4e 100644
--- a/Master/texmf-dist/tex/latex/koma-script/scrbook.cls
+++ b/Master/texmf-dist/tex/latex/koma-script/scrbook.cls
@@ -6,6 +6,7 @@
%%
%% scrkvers.dtx (with options: `class,book')
%% scrkbase.dtx (with options: `load')
+%% tocbasic.dtx (with options: `load')
%% scrkcomp.dtx (with options: `class,book,option')
%% scrkmisc.dtx (with options: `class,book,option')
%% scrklang.dtx (with options: `class,book,option')
@@ -91,7 +92,7 @@
\fi
}
\fi
- \@CheckKOMAScriptVersion{2007/12/24 v2.98 KOMA-Script}%
+ \@CheckKOMAScriptVersion{2008/11/03 v3.00 KOMA-Script}%
\endgroup
\newcommand*{\KOMAClassName}{%
scrbook%
@@ -104,6 +105,13 @@
]
%%% From File: scrkbase.dtx
\RequirePackage{scrkbase}[\KOMAScriptVersion]
+%%% From File: tocbasic.dtx
+\def\tocbasicversion{2008/10/06 v1.0}
+\edef\@tempa{\noexpand\RequirePackage{tocbasic}[\tocbasicversion]}
+\@tempa
+\addtotoclist{toc}
+\addtotoclist[float]{lof}
+\addtotoclist[float]{lot}
%%% From File: scrkcomp.dtx
\newcommand*{\scr@compatibility}{0}
\KOMA@key{version}[last]{%
@@ -123,7 +131,8 @@
\ClassError{\KOMAClassName}{%
Option `version' too late%
}{%
- Option `version' may be set only while loading the class.\MessageBreak
+ Option `version' may be set only while loading the
+ class.\MessageBreak
But you've tried to set it up later.%
}%
}%
@@ -144,7 +153,11 @@
\@namedef{scr@v@2.97d}{5}
\@namedef{scr@v@2.97e}{6}
\@namedef{scr@v@2.98}{6}
-\@namedef{scr@v@last}{6}
+\@namedef{scr@v@2.98a}{6}
+\@namedef{scr@v@2.98b}{6}
+\@namedef{scr@v@2.98c}{7}
+\@namedef{scr@v@3.00}{8}
+\@namedef{scr@v@last}{8}
%%% From File: scrkmisc.dtx
\KOMA@key{draft}[true]{%
\KOMA@set@ifkey{draft}{@tempswa}{#1}%
@@ -169,16 +182,41 @@
\def\@pt@@scan #1pt#2\@pt@@scan{%
\ifstr{#2}{pt}{%
\ifnumber{#1}{%
- \KOMA@UseObsoleteOption{\PackageInfoNoLine}{#1#2}{fontsize=#1#2}%
+ \KOMA@UseObsoleteOption{\PackageInfoNoLine{\KOMAClassName}}%
+ {#1#2}{fontsize=#1#2}%
}{\@headlines}%
}{\@headlines}%
}
+\providecommand*{\@fontsizefilebase}{scrsize}
\KOMA@key{fontsize}{%
\scr@ifundefinedorrelax{changefontsizes}{%
\@defaultunits\@tempdima#1pt\relax\@nnil
\edef\@ptsize{#1}%
}{%
- \changefontsizes{#1}%
+ \expandafter\@defaultunits\expandafter\@tempdima#1 pt\relax\@nnil
+ \edef\@tempa{#1}%
+ \setlength{\@tempdimb}{\@tempdima}%
+ \edef\@tempb{\strip@pt\@tempdimb}%
+ \addtolength{\@tempdimb}{-10\p@}%
+ \edef\@ptsize{\strip@pt\@tempdimb}%
+ \edef\@tempa{%
+ \noexpand\makeatletter
+ \noexpand\InputIfFileExists{\@fontsizefilebase\@tempa.clo}{%
+ \noexpand\ClassInfo{\KOMAClassName}{%
+ File `\@fontsizefilebase\@tempa.clo' used to setup font sizes}%
+ }{%
+ \noexpand\InputIfFileExists{\@fontsizefilebase\@tempb pt.clo}{%
+ \noexpand\ClassInfo{\KOMAClassName}{%
+ File `\@fontsizefilebase\@tempb pt.clo' used instead of%
+ \noexpand\MessageBreak
+ file `\@fontsizefilebase\@tempa.clo' to setup font sizes}%
+ }{%
+ \noexpand\changefontsizes{#1}%
+ }%
+ }%
+ \noexpand\catcode`\noexpand\@=\the\catcode`\@
+ }%
+ \@tempa
}%
}
%%% From File: scrktare.dtx
@@ -244,7 +282,7 @@
}
\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{oneside}{twoside=false}
\KOMA@key{twocolumn}[true]{%
- \if@atdocument\else\PassOptionsToPackage{twoside=#1}{typearea}\fi%
+ \if@atdocument\else\PassOptionsToPackage{twocolumn=#1}{typearea}\fi%
}
\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{onecolumn}{twocolumn=false}
\DeclareOption*{%
@@ -354,62 +392,130 @@
\endgroup
\fi
}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{parskip-}{parskip=full-}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{parskip+}{parskip=full+}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{parskip*}{parskip=full*}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{halfparskip}{parskip=half}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{halfparskip-}{parskip=half-}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{halfparskip+}{parskip=half+}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{halfparskip*}{parskip=half*}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{parindent}{parskip=false}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{parskip-}{parskip=full-}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{parskip+}{parskip=full+}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{parskip*}{parskip=full*}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{halfparskip}{parskip=half}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{halfparskip-}{parskip=half-}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{halfparskip+}{parskip=half+}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{halfparskip*}{parskip=half*}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{parindent}{parskip=false}
%%% From File: scrktitl.dtx
\newif\if@titlepage
\@titlepagetrue
-\KOMA@ifkey{titlepage}{@titlepage}
-\KOMA@DeclareObsoleteOption[\ClassInfo]{notitlepage}{titlepage=false}
+\KOMA@ifkey{titlepage}{@titlepage}%
+\KOMA@DeclareObsoleteOption%
+ [\PackageInfoNoLine]%
+ {notitlepage}{titlepage=false}
%%% From File: scrksect.dtx
\newif\if@openright
\@openrighttrue
-\DeclareOption{openright}{\@openrighttrue}
-\DeclareOption{openany}{\@openrightfalse}
-\DeclareOption{pointednumbers}{%
- \AtEndOfClass{\@altsecnumformattrue
- \global\let\@altsecnumformatfalse\@altsecnumformattrue}%
-}
-\DeclareOption{pointednumber}{%
- \AtEndOfClass{\@altsecnumformattrue
- \global\let\@altsecnumformatfalse\@altsecnumformattrue}%
+\KOMA@key{open}{%
+ \KOMA@set@ncmdkey{open}{@tempa}{%
+ {any}{0},%
+ {right}{1},%
+ {left}{2}%
+ }{#1}%
+ \ifcase \@tempa\relax
+ \@openrightfalse
+ \renewcommand*{\cleardoublestandardpage}{\cleardoubleoddstandardpage}%
+ \or
+ \@openrighttrue
+ \renewcommand*{\cleardoublestandardpage}{\cleardoubleoddstandardpage}%
+ \or
+ \@openrighttrue
+ \renewcommand*{\cleardoublestandardpage}{\cleardoubleevenstandardpage}%
+ \fi
+}
+\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{openright}{open=right}
+\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{openany}{open=any}
+%% \fi
+\newcommand*{\scr@dotchangeatdocument}[1]{%
\ClassError{\KOMAClassName}{%
- undefined option `pointednumber' instead of `pointednumbers'%
+ change of end dot feature after \string\begin{document}%
}{%
- You've used the class-option `pointednumber'.\MessageBreak
- This name was an implementation-error at versions from 2.3h till
- 2.4f.\MessageBreak
- The correct name is `pointednumbers'.
- Change this at your document.\MessageBreak
- If you'll continue, the option `pointednumbers' will be used%
+ 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.%
}%
}
-\DeclareOption{pointlessnumbers}{%
- \AtEndOfClass{\@altsecnumformatfalse
- \global\let\@altsecnumformattrue\@altsecnumformatfalse}%
+\KOMA@key{numbers}{%
+ \KOMA@set@ncmdkey{numbers}{@tempa}{%
+ {autoendperiod}{0},{autoenddot}{0},{auto}{0},%
+ {endperiod}{1},{withendperiod}{1},{periodatend}{1},%
+ {enddot}{1},{withenddot}{1},{dotatend}{1},%
+ {noendperiod}{2},{noperiodatend}{2},%
+ {noenddot}{2},{nodotatend}{2}%
+ }{#1}%
+ \ifcase \@tempa\relax
+ \if@atdocument\scr@dotchangeatdocument{#1}\else
+ \let\scr@altsecnumhook\@empty
+ \fi
+ \or
+ \if@atdocument\scr@dotchangeatdocument{#1}\else
+ \let\scr@altsecnumhook\scr@altsecnumhooktrue
+ \fi
+ \or
+ \if@atdocument\scr@dotchangeatdocument{#1}\else
+ \let\scr@altsecnumhook\scr@altsecnumhookfalse
+ \fi
+ \fi
+}
+\newcommand*{\scr@altsecnumhook}{}
+\AtBeginDocument{\scr@altsecnumhook}
+\newcommand*{\scr@altsecnumhooktrue}{%
+ \@altsecnumformattrue\global\let\@altsecnumformatfalse\@altsecnumformattrue
}
-\DeclareOption{pointlessnumber}{%
- \AtEndOfClass{\@altsecnumformatfalse
- \global\let\@altsecnumformattrue\@altsecnumformatfalse}%
- \ClassError{\KOMAClassName}{%
- undefined option `pointlessnumber' instead of `pointlessnumbers'%
- }{%
- You've used the class-option `pointlessnumber'.\MessageBreak
- This name was an implementation-error at versions from 2.3h till
- 2.4f.\MessageBreak
- The correct name is `pointlessnumbers'.
- Change this at your document.\MessageBreak
- If you'll continue, the option `pointlessnumbers' will be used%
- }%
+\newcommand*{\scr@altsecnumhookfalse}{%
+ \@altsecnumformatfalse\global\let\@altsecnumformattrue\@altsecnumformatfalse
+}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{pointednumbers}%
+ {numbers=enddot}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{pointlessnumbers}%
+ {numbers=noenddot}
+\newif\if@chapterprefix\@chapterprefixfalse
+\KOMA@ifkey{chapterprefix}{@chapterprefix}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{nochapterprefix}%
+ {chapterprefix=false}
+\KOMA@key{appendixprefix}[true]{%
+ \KOMA@set@ifkey{appendixprefix}{@tempswa}{#1}%
+ \if@tempswa
+ \def\appendixmore{\@chapterprefixtrue}%
+ \else
+ \def\appendixmore{\@chapterprefixfalse}%
+ \fi
}
-\newcommand\@bigheadings{%
- \AtEndOfClass{%
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{noappendixprefix}%
+ {appendixprefix=false}
+\newcommand*{\size@part}{}
+\newcommand*{\size@partnumber}{}
+\newcommand*{\size@chapter}{}
+\newcommand*{\size@chapterprefix}{\size@chapter}
+\newcommand*{\size@section}{}
+\newcommand*{\size@subsection}{}
+\newcommand*{\size@subsubsection}{}
+\newcommand*{\size@paragraph}{}
+\newcommand*{\size@subparagraph}{}
+\newcommand*{\chapterheadstartvskip}{}
+\newcommand*{\chapterheadendvskip}{}
+\KOMA@key{headings}{%
+ \KOMA@set@ncmdkey{headings}{@tempa}{%
+ {big}{0},%
+ {normal}{1},%
+ {small}{2}%
+ ,{openany}{3},%
+ {openright}{4},%
+ {openleft}{5}%
+ ,{twolinechapter}{6},{chapterprefix}{6},{chapterwithprefix}{6},%
+ {chapterwithprefixline}{6},%
+ {onelinechapter}{7},{nochapterprefix}{7},{chapterwithoutprefix}{7},%
+ {chapterwithoutprefixline}{7}%
+ ,{twolineappendix}{8},{appendixprefix}{8},{appendixwithprefix}{8},%
+ {appendixwithprefixline}{8},%
+ {onelineappendix}{9},{noappendixprefix}{9},{appendixwithoutprefix}{9},%
+ {appendixwithoutprefixline}{9}%
+ }{#1}%
+ \ifcase \@tempa\relax
\renewcommand*{\chapterheadstartvskip}{%
\vspace*{2.3\baselineskip}%
}%
@@ -417,32 +523,15 @@
\vspace{1.725\baselineskip
\@plus .115\baselineskip \@minus .192\baselineskip}%
}%
- \let\size@part\Huge
- \let\size@partnumber\huge
- \let\size@chapter\huge
- \let\size@section\Large
- \let\size@subsection\large
- \let\size@subsubsection\normalsize
- \let\size@paragraph\normalsize
- \let\size@subparagraph\normalsize
- }%
-}
-\DeclareOption{bigheadings}{\@bigheadings}
-\DeclareOption{bigheading}{%
- \@bigheadings
- \ClassError{\KOMAClassName}{%
- undefined option `bigheading' instead of `bigheadings'%
- }{%
- You've used the old option name `bigheading'!\MessageBreak
- The correct name of the option is `bigheadings'.\MessageBreak
- The old name was an implementation error from\MessageBreak
- version 2.3h till 2.4f.\MessageBreak
- You should change this at your document!\MessageBreak
- If you'll continue, option `bigheadings' will be used%
- }%
-}
-\newcommand\@normalheadings{%
- \AtEndOfClass{%
+ \renewcommand*{\size@part}{\Huge}%
+ \renewcommand*{\size@partnumber}{\huge}%
+ \renewcommand*{\size@chapter}{\huge}%
+ \renewcommand*{\size@section}{\Large}%
+ \renewcommand*{\size@subsection}{\large}%
+ \renewcommand*{\size@subsubsection}{\normalsize}%
+ \renewcommand*{\size@paragraph}{\normalsize}%
+ \renewcommand*{\size@subparagraph}{\normalsize}%
+ \or
\renewcommand*{\chapterheadstartvskip}{%
\vspace*{2\baselineskip}%
}%
@@ -450,32 +539,15 @@
\vspace{1.5\baselineskip
\@plus .1\baselineskip \@minus .167\baselineskip}%
}%
- \let\size@part\huge
- \let\size@partnumber\huge
- \let\size@chapter\LARGE
- \let\size@section\Large
- \let\size@subsection\large
- \let\size@subsubsection\normalsize
- \let\size@paragraph\normalsize
- \let\size@subparagraph\normalsize
- }%
-}
-\DeclareOption{normalheadings}{\@normalheadings}
-\DeclareOption{normalheading}{%
- \@normalheadings
- \ClassError{\KOMAClassName}{%
- undefined option `normalheading' instead of `normalheadings'%
- }{%
- You've used the old option name `normalheading'!\MessageBreak
- The correct name of the option is `normalheadings'.\MessageBreak
- The old name was an implementation error from\MessageBreak
- version 2.3h till 2.4f.\MessageBreak
- You should change this at your document!\MessageBreak
- If you'll continue, option `normalheadings' will be used%
- }%
-}
-\newcommand\@smallheadings{%
- \AtEndOfClass{
+ \renewcommand*{\size@part}{\huge}%
+ \renewcommand*{\size@partnumber}{\huge}%
+ \renewcommand*{\size@chapter}{\LARGE}%
+ \renewcommand*{\size@section}{\Large}%
+ \renewcommand*{\size@subsection}{\large}%
+ \renewcommand*{\size@subsubsection}{\normalsize}%
+ \renewcommand*{\size@paragraph}{\normalsize}%
+ \renewcommand*{\size@subparagraph}{\normalsize}%
+ \or
\renewcommand*{\chapterheadstartvskip}{%
\vspace*{1.8\baselineskip}%
}%
@@ -483,62 +555,50 @@
\vspace{1.35\baselineskip
\@plus 0.09\baselineskip \@minus .15\baselineskip}%
}%
- \let\size@part\LARGE
- \let\size@partnumber\LARGE
- \let\size@chapter\Large
- \let\size@section\large
- \let\size@subsection\normalsize
- \let\size@subsubsection\normalsize
- \let\size@paragraph\normalsize
- \let\size@subparagraph\normalsize
- }%
-}
-\DeclareOption{smallheadings}{\@smallheadings}
-\DeclareOption{smallheading}{%
- \@smallheadings
- \ClassError{\KOMAClassName}{%
- undefined option `smallheading' instead of `smallheadings'%
- }{%
- You've used the old option name `smallheading'!\MessageBreak
- The correct name of the option is `smallheadings'.\MessageBreak
- The old name was an implementation error from\MessageBreak
- version 2.3h till 2.4f.\MessageBreak
- You should change this at your document!\MessageBreak
- If you'll continue, option `smallheadings' will be used%
- }%
-}
-\@bigheadings
-\newif\if@chapterprefix\@chapterprefixfalse
-\KOMA@ifkey{chapterprefix}{@chapterprefix}
-\KOMA@DeclareObsoleteOption{nochapterprefix}{chapterprefix=false}
-\KOMA@key{appendixprefix}[true]{%
- \KOMA@set@ifkey{appendixprefix}{@tempswa}{#1}%
- \if@tempswa
- \def\appendixmore{\@chapterprefixtrue}%
- \else
- \def\appendixmore{\@chapterprefixfalse}%
+ \renewcommand*{\size@part}{\LARGE}%
+ \renewcommand*{\size@partnumber}{\LARGE}%
+ \renewcommand*{\size@chapter}{\Large}%
+ \renewcommand*{\size@section}{\large}%
+ \renewcommand*{\size@subsection}{\normalsize}%
+ \renewcommand*{\size@subsubsection}{\normalsize}%
+ \renewcommand*{\size@paragraph}{\normalsize}%
+ \renewcommand*{\size@subparagraph}{\normalsize}%
+ \or
+ \KOMA@options{open=any}{}%
+ \or
+ \KOMA@options{open=right}{}%
+ \or
+ \KOMA@options{open=left}{}%
+ \or
+ \KOMA@options{chapterprefix=true}{}%
+ \or
+ \KOMA@options{chapterprefix=false}{}%
+ \or
+ \KOMA@options{appendixprefix=true}{}%
+ \or
+ \KOMA@options{appendixprefix=false}{}%
\fi
}
-\KOMA@DeclareObsoleteOption[\ClassInfo]{noappendixprefix}{%
- appendixprefix=false}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{bigheadings}%
+ {headings=big}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{normalheadings}%
+ {headings=normal}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{smallheadings}%
+ {headings=small}
%%% From File: scrkpage.dtx
\newif\if@hsl
\KOMA@key{headsepline}[true]{%
\KOMA@set@ifkey{headsepline}{@hsl}{#1}%
- \@ifpackageloaded{typearea}{%
- \KOMAoptions{headinclude=#1}%
- }{}%
+ \KOMA@options{headinclude=#1}{}%
}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{headnosepline}{%
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{headnosepline}{%
headsepline=false}
\newif\if@fsl
\KOMA@key{footsepline}[true]{%
\KOMA@set@ifkey{footsepline}{@fsl}{#1}%
- \@ifpackageloaded{typearea}{%
- \KOMAoptions{footinclude=#1}%
- }{}%
+ \KOMA@options{footinclude=#1}{}%
}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{footnosepline}{%
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{footnosepline}{%
footsepline=false}
\@twosidetrue
\KOMA@key{cleardoublepage}{%
@@ -550,81 +610,263 @@
}%
\ifstr{#1}{current}{%
\def\@tempc{\endgroup%
- \let\cleardoublepage\cleardoublestandardpage
+ \def\cleardoublepage{\cleardoublestandardpage}%
+ \def\cleardoubleoddpage{\cleardoubleoddstandardpage}%
+ \def\cleardoubleevenpage{\cleardoubleevenstandardpage}%
}%
}{%
\ifnotundefined{ps@#1}{%
\def\@tempc{\endgroup%
\def\cleardoublepage{\cleardoublepageusingstyle{#1}}%
+ \def\cleardoubleoddpage{\cleardoubleoddpageusingstyle{#1}}%
+ \def\cleardoubleevenpage{\cleardoubleevenpageusingstyle{#1}}%
}%
}{}%
}%
\@tempc
}
-\newcommand*{\cleardoublestandardpage}{}
-\let\cleardoublestandardpage\cleardoublepage
+\newcommand*{\cleardoubleoddstandardpage}{}
+\let\cleardoubleoddstandardpage=\cleardoublepage
+\newcommand*{\cleardoubleoddpageusingstyle}[1]{\clearpage
+ {\thispagestyle{#1}\cleardoubleoddstandardpage}}
+\newcommand*{\cleardoubleoddemptypage}{\cleardoubleoddpageusingstyle{empty}}
+\newcommand*{\cleardoubleoddplainpage}{\cleardoubleoddpageusingstyle{plain}}
+\newcommand*{\cleardoubleevenstandardpage}{%
+ \clearpage
+ \if@twoside\ifodd\c@page
+ \hbox{}\newpage\if@twocolumn\hbox{}\newpage\fi
+ \fi\fi
+}
+\newcommand*{\cleardoubleevenpageusingstyle}[1]{\clearpage
+ {\thispagestyle{#1}\cleardoubleevenstandardpage}}
+\newcommand*{\cleardoubleevenemptypage}{\cleardoubleevenpageusingstyle{empty}}
+\newcommand*{\cleardoubleevenplainpage}{\cleardoubleevenpageusingstyle{plain}}
+\newcommand*{\cleardoublestandardpage}{\cleardoubleoddstandardpage}
+\renewcommand*{\cleardoublepage}{%
+ \expandafter\ifnum \@nameuse{scr@v@2.98c}<\scr@compatibility\relax
+ \cleardoubleemptypage
+ \else
+ \cleardoublestandardpage
+ \fi
+}
+\newcommand*{\cleardoubleoddpage}{\cleardoubleoddemptypage}
+\newcommand*{\cleardoubleevenpage}{\cleardoubleevenemptypage}
\newcommand*{\cleardoublepageusingstyle}[1]{\clearpage
{\thispagestyle{#1}\cleardoublestandardpage}}
\newcommand*{\cleardoubleemptypage}{\cleardoublepageusingstyle{empty}}
\newcommand*{\cleardoubleplainpage}{\cleardoublepageusingstyle{plain}}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{cleardoubleempty}{%
- cleardoublepage=empty%
-}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{cleardoubleplain}{%
- cleardoublepage=plain%
-}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{cleardoublestandard}{%
- cleardoublepage=current%
-}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{cleardoubleempty}%
+ {cleardoublepage=empty}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{cleardoubleplain}%
+ {cleardoublepage=plain}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{cleardoublestandard}%
+ {cleardoublepage=current}
%%% From File: scrkfloa.dtx
\newif\if@tablecaptionabove\@tablecaptionabovefalse
-\DeclareOption{tablecaptionabove}{\@tablecaptionabovetrue}
-\DeclareOption{tablecaptionbelow}{\@tablecaptionabovefalse}
-\newif\if@komalongtable\@komalongtabletrue
-\DeclareOption{origlongtable}{\@komalongtablefalse}
\newif\ifonelinecaptions\onelinecaptionstrue
-\DeclareOption{onelinecaption}{\onelinecaptionstrue
- \PassOptionsToPackage{oneline}{caption2}%
-}
-\DeclareOption{noonelinecaption}{\onelinecaptionsfalse
- \PassOptionsToPackage{nooneline}{caption2}%
+\newcommand*{\scap@pos}{r}
+\newcommand*{\scap@valign}{b}
+\KOMA@key{captions}{%
+ \KOMA@set@ncmdkey{captions}{@tempa}{%
+ {tableheading}{0},%
+ {tableabove}{0},{abovetable}{0},{abovetabular}{0},{topattable}{0},%
+ {tablesignature}{1},%
+ {tablebelow}{1},{belowtable}{1},{belowtabular}{1},{bottomattable}{1},%
+ {oneline}{2},%
+ {nooneline}{3},%
+ {rightbeside}{4},{besideright}{4},%
+ {leftbeside}{5},{besideleft}{5},%
+ {innerbeside}{6},{besideinner}{6},%
+ {outerbeside}{7},{besideouter}{7},%
+ {topbeside}{8},{besidetop}{8},%
+ {centeredbeside}{9},{besidecentered}{9},%
+ {middlebeside}{9},{besidemiddle}{9},%
+ {bottombeside}{10},{besidebottom}{10}%
+ }{#1}%
+ \ifcase \@tempa\relax
+ \@tablecaptionabovetrue
+ \or
+ \@tablecaptionabovefalse
+ \or
+ \onelinecaptionstrue
+ \or
+ \onelinecaptionsfalse
+ \or
+ \renewcommand*{\scap@pos}{r}%
+ \or
+ \renewcommand*{\scap@pos}{l}%
+ \or
+ \renewcommand*{\scap@pos}{i}%
+ \or
+ \renewcommand*{\scap@pos}{o}%
+ \or
+ \renewcommand*{\scap@valign}{t}%
+ \or
+ \renewcommand*{\scap@valign}{c}%
+ \or
+ \renewcommand*{\scap@valign}{b}%
+ \fi
}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{tablecaptionabove}%
+ {captions=tableheading}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{tablecaptionbelow}%
+ {captions=tablesignature}
+\newif\if@komalongtable\@komalongtabletrue
+\DeclareOption{origlongtable}{\@komalongtablefalse}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{onelinecaption}
+ {captions=oneline}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{noonelinecaption}
+ {captions=nooneline}
%%% From File: scrkftn.dtx
-%%% From File: scrkliof.dtx
-\newif\if@tocleft
-\DeclareOption{tocleft}{\@toclefttrue}
-\DeclareOption{tocindent}{\@tocleftfalse}
-\DeclareOption{liststotoc}{%
- \AtEndOfClass{%
- \renewcommand*{\float@listhead}[1]{%
- \addchap{#1}
- \@mkboth{#1}{#1}%
- \if@dynlist
- \newcommand*{\scr@starttoc}{}%
- \let\scr@starttoc=\@starttoc
- \renewcommand*{\@starttoc}[1]{%
- \before@starttoc{##1}\scr@starttoc{##1}\after@starttoc{##1}}%
- \fi
+\KOMA@key{footnotes}{%
+ \ifx\@footnotemark\scr@saved@footnotemark
+ \else
+ \ifx\@footnotemark\scr@footnotemark
+ \else
+ \ClassWarning{\KOMAClassName}{%
+ Change of `\string\@footnotemark' detected!\MessageBreak
+ Use of `footnotes=#1' may break\MessageBreak
+ another package!\MessageBreak
+ Maybe you should remove the usage of\MessageBreak
+ option `footnotes=#1'}%
+ \fi
+ \fi
+ \ifstr{#1}{multiple}{%
+ \let\@footnotemark\scr@footnotemark
+ \let\FN@mf@prepare\scr@mf@prepare
+ \def\scr@footmisc@options{multiple}%
+ }{%
+ \ifstr{#1}{nomultiple}{%
+ \let\@footnotemark\scr@saved@footnotemark
+ \let\FN@mf@prepare\relax
+ \let\scr@footmisc@options\@empty
+ }{%
+ \KOMA@unknown@keyval{footnotes}{#1}{`multiple' and `nomultiple'}%
}%
}%
}
-\DeclareOption{liststotocnumbered}{%
- \AtEndOfClass{%
- \renewcommand*{\float@listhead}[1]{%
- \chapter{#1}
- \@mkboth{\chaptermarkformat #1}{\chaptermarkformat #1}%
- \if@dynlist
- \newcommand*{\scr@starttoc}{}%
- \let\scr@starttoc=\@starttoc
- \renewcommand*{\@starttoc}[1]{%
- \before@starttoc{##1}\scr@starttoc{##1}\after@starttoc{##1}}%
- \fi
- }%
- }%
+\newcommand*{\scr@footmisc@options}{}
+\PassOptionsToPackage{\noexpand\scr@footmisc@options}{footmisc}
+\newcommand*{\scr@saved@footnotemark}{%
+ \leavevmode
+ \ifhmode\edef\@x@sf{\the\spacefactor}\nobreak\fi
+ \@makefnmark
+ \ifhmode\spacefactor\@x@sf\fi
+ \relax}
+\expandafter\CheckCommand\expandafter*\expandafter\@footnotemark
+\expandafter{\scr@saved@footnotemark}
+\newcommand*{\scr@footnotemark}{%
+ \leavevmode
+ \ifhmode\edef\@x@sf{\the\spacefactor}\FN@mf@check\nobreak\fi
+ \@makefnmark
+ \csname FN@mf@prepare\endcsname
+ \ifhmode\spacefactor\@x@sf\fi
+ \relax}
+%%% From File: scrkliof.dtx
+\newif\if@tocleft
+\KOMA@key{toc}{%
+ \KOMA@set@ncmdkey{toc}{@tempa}{%
+ {noindex}{0},{noidx}{0},%
+ {index}{1},{idx}{1},%
+ {nolistof}{2},%
+ {listof}{3},%
+ {listofnumbered}{4},{numberedlistof}{4},%
+ {nobibliography}{5},{nobib}{5},%
+ {bibliography}{6},{bib}{6},%
+ {bibliographynumbered}{7},{bibnumbered}{7},{numberedbibliography}{7},%
+ {numberedbib}{7},%
+ {flat}{8},{left}{8},%
+ {graduated}{9},{indent}{9},{indented}{9}%
+ }{#1}%
+ \ifcase \@tempa\relax
+ \KOMA@options{index=notoc}{}%
+ \or
+ \KOMA@options{index=totoc}{}%
+ \or
+ \KOMA@options{listof=notoc}{}%
+ \or
+ \KOMA@options{listof=totoc}{}%
+ \or
+ \KOMA@options{listof=numbered}{}%
+ \or
+ \KOMA@options{bibliography=nottotoc}{}%
+ \or
+ \KOMA@options{bibliography=totoc}{}%
+ \or
+ \KOMA@options{bibliography=totocnumbered}{}%
+ \or
+ \@toclefttrue
+ \or
+ \@tocleftfalse
+ \fi
+}
+\KOMA@DeclareObsoleteOption[\ClassWarningNoLine]{tocleft}{toc=flat}
+\KOMA@DeclareObsoleteOption[\ClassWarningNoLine]{tocindent}{toc=graduated}
+\newcommand*{\float@@listhead}{%
+ \chapter*
}
\newif\if@dynlist
-\DeclareOption{listsleft}{\@dynlisttrue}
-\DeclareOption{listsindent}{\@dynlistfalse}
+\KOMA@key{listof}{%
+ \KOMA@set@ncmdkey{listof}{@tempa}{%
+ {notoc}{0},{nottotoc}{0},{plainheading}{0},%
+ {totoc}{1},{toc}{1},{notnumbered}{1},%
+ {numbered}{2},{totocnumbered}{2},{tocnumbered}{2},{numberedtotoc}{2},%
+ {numberedtoc}{2},%
+ {flat}{3},{left}{3},%
+ {graduated}{4},{indent}{4},{indented}{4},%
+ {leveldown}{5},
+ {chapterentry}{6},{withchapterentry}{6},%
+ {nochaptergap}{7},{ignorechapter}{7},%
+ {chaptergapsmall}{8},{smallchaptergap}{8},%
+ {chaptergapline}{9},{onelinechaptergap}{9}%
+ }{#1}%
+ \ifcase \@tempa\relax
+ \renewcommand*{\float@@listhead}{%
+ \chapter*
+ }%
+ \doforeachtocfile[float]{%
+ \unsettoc{\@currext}{numbered}%
+ \unsettoc{\@currext}{totoc}%
+ }%
+ \or% totoc
+ \renewcommand*{\float@@listhead}{%
+ \addchap
+ }%
+ \doforeachtocfile[float]{%
+ \unsettoc{\@currext}{numbered}%
+ \setuptoc{\@currext}{totoc}%
+ }%
+ \or% numbered
+ \renewcommand*{\float@@listhead}{%
+ \chapter
+ }%
+ \doforeachtocfile[float]{%
+ \setuptoc{\@currext}{numbered}%
+ \setuptoc{\@currext}{totoc}%
+ }%
+ \or% flat
+ \@dynlisttrue
+ \or% graduated
+ \@dynlistfalse
+ \or% leveldown
+ \doforeachtocfile[float]{%
+ \setuptoc{\@currext}{leveldown}%
+ }%
+ \or% chapterentry
+ \KOMA@options{chapteratlists=entry}{}%
+ \or% chaptergap
+ \KOMA@options{chapteratlists=\z@}{}%
+ \or% chaptergapsmall
+ \KOMA@options{chapteratlists=10\p@}{}%
+ \or% chaptergapline
+ \KOMA@options{chapteratlists=\baselineskip}{}%
+ \fi
+}
+\KOMA@DeclareObsoleteOption[\ClassWarningNoLine]{liststotoc}{listof=totoc}
+\KOMA@DeclareObsoleteOption[\ClassWarningNoLine]{liststotocnumbered}
+ {listof=numbered}
+\KOMA@DeclareObsoleteOption[\ClassWarningNoLine]{listsleft}{listof=flat}
+\KOMA@DeclareObsoleteOption[\ClassWarningNoLine]{listsindent}{listof=graduated}
\newcommand*{\@chapterlistsgap}{10\p@}
\newif\if@chaptertolists\@chaptertolistsfalse
\KOMA@key{chapteratlists}[entry]{%
@@ -635,47 +877,119 @@
}%
}
%%% From File: scrkbib.dtx
-\DeclareOption{openbib}{%
- \AtEndOfPackage{%
- \renewcommand*\@openbib@code{%
- \advance\leftmargin\bibindent
- \itemindent -\bibindent
- \listparindent \itemindent
- \parsep \z@
+\newcommand{\newbibstyle}[3][]{%
+ \scr@ifundefinedorrelax{scr@bibstyle@#2}{%
+ \scr@ifundefinedorrelax{scr@bibstyle@#1}{%
+ \ClassError{\KOMAClassName}{%
+ parent bibliography style `#1' does not exist}{%
+ You've told me to define the new bibliography style `#2'\MessageBreak
+ to be a child of bibliography style `#1', but bibliography
+ style\MessageBreak
+ `#1' does not exist.\MessageBreak
+ You have to remove the parent declaration or use an existing parent!
+ See the KOMA-Script manual for more information.%
+ }%
+ }{%
+ \@namedef{scr@bibstyle@#2}{%
+ \let\@openbib@code\@empty
+ \let\newblock\@empty
+ \let\bib@beginhook\@empty
+ \let\bib@endhook\@empty
+ \csname scr@bibstyle@#1\endcsname
+ #3%
+ }%
+ \g@addto@macro\scr@bibstylelist{, `#2'}%
+ }%
+ }{%
+ \ClassError{\KOMAClassName}{bibliography style `#2' already exists}{%
+ You've told me to define the new bibliography style `#2',\MessageBreak
+ but this style already exists.\MessageBreak
+ You have to use another bibliography style name.\MessageBreak
+ See the KOMA-Script manual for more information.%
}%
- \renewcommand*\newblock{\par}%
}%
}
-\DeclareOption{bibtotoc}{%
- \AtEndOfClass{%
- \renewcommand*\bib@heading{%
- \addchap{\bibname}%
- \@mkboth{\bibname}{\bibname}%
- }%
+\newcommand*{\scr@bibstyle@}{}
+\newcommand*{\bib@beginhook}{}
+\newcommand*{\bib@endhook}{}
+\newcommand*{\scr@bibstylelist}{\@gobble}
+\newcommand*{\@openbib@code}{}
+\newcommand*{\newblock}{}
+\newbibstyle{openstyle}{%
+ \renewcommand*{\@openbib@code}{%
+ \advance\leftmargin\bibindent
+ \itemindent -\bibindent
+ \listparindent \itemindent
+ \parsep \z@
}%
+ \renewcommand*{\newblock}{\par}%
}
-\DeclareOption{bibtotocnumbered}{%
- \AtEndOfClass{%
- \renewcommand*\bib@heading{%
- \chapter{\bibname}%
- \@mkboth{\chaptermarkformat \bibname}{\chaptermarkformat \bibname}%
- }%
+\newbibstyle{oldstyle}{%
+ \renewcommand*{\newblock}{\hskip .11em\@plus.33em\@minus.07em}%
+}
+\scr@bibstyle@oldstyle
+\newcommand*\bib@heading{%
+ \chapter*{\bibname}%
+ \@mkboth{\bibname}{\bibname}%
+}
+\KOMA@key{bibliography}{%
+ \scr@ifundefinedorrelax{scr@bibstyle@#1}{%
+ \let\FamilyElseValues\scr@bibstylelist
+ \KOMA@set@ncmdkey{bibliography}{@tempa}{%
+ {notoc}{0},{nottotoc}{0},{plainheading}{0},%
+ {totoc}{1},{toc}{1},{notnumbered}{1},%
+ {numbered}{2},{totocnumbered}{2},{tocnumbered}{2},{numberedtotoc}{2},%
+ {numberedtoc}{2}%
+ }{#1}%
+ \ifcase \@tempa\relax
+ \renewcommand*\bib@heading{%
+ \chapter*{\bibname}%
+ \@mkboth{\bibname}{\bibname}%
+ }%
+ \or% totoc
+ \renewcommand*\bib@heading{%
+ \addchap{\bibname}%
+ \@mkboth{\bibname}{\bibname}%
+ }%
+ \or% numbered
+ \renewcommand*\bib@heading{%
+ \chapter{\bibname}%
+ \@mkboth{\chaptermarkformat \bibname}{\chaptermarkformat \bibname}%
+ }
+ \fi
+ }{%
+ \csname scr@bibstyle@#1\endcsname
}%
}
+\KOMA@DeclareObsoleteOption[\ClassInfoNoLine]{openbib}{bibliography=openstyle}
+\KOMA@DeclareObsoleteOption[\ClassWarningNoLine]{bibtotoc}{bibliography=totoc}
+\KOMA@DeclareObsoleteOption[\ClassWarningNoLine]{bibtotocnumbered}{%
+ bibliography=totocnumbered}
%%% From File: scrkidx.dtx
-\DeclareOption{idxtotoc}{%
- \AtEndOfClass{%
- \renewcommand*\idx@heading{%
- \if@openright\cleardoublepage\else\clearpage\fi
- \twocolumn[\addchap{\indexname}]%
- \@mkboth{\indexname}{\indexname}%
+\newcommand*{\idx@@heading}{%
+ \chapter*
+}
+\KOMA@key{index}{%
+ \KOMA@set@ncmdkey{index}{@tempa}{%
+ {notoc}{0},{nottotoc}{0},{default}{0},{plainheading}{0},%
+ {totoc}{1},{toc}{1},{notnumbered}{1}%
+ }{#1}%
+ \ifcase \@tempa\relax
+ \renewcommand*{\idx@@heading}{%
+ \chapter*
}%
- }%
+ \or
+ \renewcommand*{\idx@@heading}{%
+ \addchap
+ }%
+ \fi
}
+\KOMA@DeclareObsoleteOption[\ClassWarningNoLine]{idxtotoc}{index=totoc}
%%% From File: scrklist.dtx
%%% From File: scrkmisc.dtx
\KOMAExecuteOptions{%
- parskip=false%
+ parskip=false,%
+ headings=big%
}
\KOMAProcessOptions\relax
%%% From File: scrkcomp.dtx
@@ -922,7 +1236,6 @@
\setlength\partopsep{.2\@tempdimc \@plus.1\@tempdimc \@minus.1\@tempdimc}%
}%
}
-\providecommand*{\@fontsizefilebase}{scrsize}
\expandafter\@defaultunits\expandafter\@tempdima\@ptsize pt\relax\@nnil
\edef\@tempa{\@ptsize}%
\setlength{\@tempdimb}{\@tempdima}%
@@ -1066,119 +1379,6 @@
}%
}
%%% From File: scrklang.dtx
-\newcommand*{\providecaptionname}[3]{%
- \@ifundefined{captions#1}{%
- \@ifundefined{cap@info@#1@done}{%
- \ClassInfo{\KOMAClassName}{%
- No captions found for `#1'\MessageBreak
- --> skipped%
- }%
- \expandafter\let\csname cap@info@#1@done\endcsname\@empty
- }{}%
- }{%
- \begingroup
- \let\@tempa\endgroup
- \csname captions#1\endcsname
- \ifx #2\undefined
- \edef\@tempb{#1}%
- \@onelevel@sanitize\@tempb
- \@onelevel@sanitize\languagename
- \ifx\@tempb\languagename
- \def\@tempa{\endgroup%
- \expandafter\g@addto@macro\csname captions#1\endcsname{%
- \def#2{#3}}%
- \csname captions#1\endcsname
- }%
- \else
- \def\@tempa{\endgroup%
- \expandafter\g@addto@macro\csname captions#1\endcsname{%
- \def#2{#3}}%
- }%
- \fi
- \else
- \ClassInfo{\KOMAClassName}{%
- `\string#2' at language `#1' already
- defined\MessageBreak
- --> skipped%
- }%
- \fi
- \@tempa
- }%
-}
-\newcommand*{\newcaptionname}[3]{%
- \@ifundefined{captions#1}{%
- \ClassInfo{\KOMAClassName}{%
- No captions found for `#1' --> defining%
- }%
- \@namedef{captions#1}{}%
- }{}%
- \begingroup
- \csname captions#1\endcsname
- \ifx #2\undefined\else
- \ClassError{\KOMAClassName}{%
- `\string#2' at language `#1' already defined%
- }{%
- You've told me to define `\string#2' at language
- `#1',\MessageBreak
- but it is already defined.\MessageBreak
- It will be redefined, if you'll continue.%
- }%
- \fi
- \endgroup
- \expandafter\g@addto@macro\csname captions#1\endcsname{%
- \def#2{#3}%
- }%
- \begingroup
- \edef\@tempb{#1}%
- \@onelevel@sanitize\@tempb
- \@onelevel@sanitize\languagename
- \ifx\@tempb\languagename
- \def\@tempa{\endgroup\csname captions#1\endcsname}%
- \else
- \let\@tempa\endgroup
- \fi
- \@tempa
-}
-\newcommand*{\renewcaptionname}[3]{%
- \@ifundefined{captions#1}{%
- \ClassError{\KOMAClassName}{%
- No captions found for `#1'%
- }{%
- You've told me to redefine the caption `\string#2' at language
- `#1',\MessageBreak
- but `\expandafter\string\csname captions#1\endcsname' is not
- defined.\MessageBreak
- If you'll continue it will be defined.%
- }
- \@namedef{captions#1}{}%
- }{}%
- \begingroup
- \csname captions#1\endcsname
- \ifx #2\undefined
- \ClassError{\KOMAClassName}{%
- `\string#2' not defined at language `#1'%
- }{%
- You've told me to redefine `\string#2' at language
- `#1',\MessageBreak
- but it is not defined.\MessageBreak
- If you'll continue it will be defined.%
- }%
- \fi
- \endgroup
- \expandafter\g@addto@macro\csname captions#1\endcsname{%
- \def#2{#3}%
- }%
- \begingroup
- \edef\@tempb{#1}%
- \@onelevel@sanitize\@tempb
- \@onelevel@sanitize\languagename
- \ifx\@tempb\languagename
- \def\@tempa{\endgroup\csname captions#1\endcsname}%
- \else
- \let\@tempa\endgroup
- \fi
- \@tempa
-}
\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
@@ -1283,44 +1483,62 @@
\addtolength{#1}{\@tempskipa}%
\fi
}
-\g@addto@macro{\@listi}{\@list@extra}
-\let\@listI=\@listi
-\g@addto@macro{\@listii}{\@list@extra}
-\g@addto@macro{\@listiii}{\@list@extra}
+\newcommand*{\@list@extra}{%
+ \ifdim\parskip>\z@\topsep\z@\parsep\parskip\itemsep\z@\fi
+}
\newcommand*{\add@extra@listi}[1]{%
\expandafter\let\csname #1@listi\endcsname=\@listi
\def\@listi{\csname #1@listi\endcsname\@list@extra}%
}
-\g@addto@macro{\footnotesize}{\protect\add@extra@listi{ftns}}
-\g@addto@macro{\small}{\protect\add@extra@listi{sml}}
-\newcommand*{\@list@extra}{%
- \ifdim\parskip>\z@\topsep\z@\parsep\parskip\itemsep\z@\fi
-}
+ \l@addto@macro{\@listi}{\@list@extra}%
+ \let\@listI=\@listi
+ \l@addto@macro{\@listii}{\@list@extra}%
+ \l@addto@macro{\@listiii}{\@list@extra}%
+ \l@addto@macro{\footnotesize}{\protect\add@extra@listi{ftns}}%
+ \l@addto@macro{\small}{\protect\add@extra@listi{sml}}%
\@lowpenalty = 51
\@medpenalty =151
\@highpenalty =301
%%% From File: scrktitl.dtx
-\newcommand*{\@extratitle}{}
-\newcommand{\extratitle}[1]{\gdef\@extratitle{#1}}
-\newcommand*{\@titlehead}{}
-\newcommand{\titlehead}[1]{\gdef\@titlehead{#1}}
-\newcommand*{\@subject}{}
-\newcommand*{\subject}[1]{\gdef\@subject{#1}}
-\newcommand*{\subtitle}[1]{\gdef\@subtitle{#1}}
-\newcommand*{\@subtitle}{}
-\newcommand*{\@publishers}{}
-\newcommand{\publishers}[1]{\gdef\@publishers{#1}}
-\newcommand*{\@uppertitleback}{}
-\newcommand{\uppertitleback}[1]{\gdef\@uppertitleback{#1}}
-\newcommand*{\@lowertitleback}{}
-\newcommand{\lowertitleback}[1]{\gdef\@lowertitleback{#1}}
-\newcommand*{\@dedication}{}
-\newcommand{\dedication}[1]{\gdef\@dedication{#1}}
-\newcommand*{\next@tpage}{\clearpage\thispagestyle{empty}}
+\newcommand*{\@extratitle}{}%
+\newcommand{\extratitle}[1]{\gdef\@extratitle{%
+ #1%
+}}%
+\newcommand*{\@titlehead}{}%
+\newcommand{\titlehead}[1]{\gdef\@titlehead{%
+ #1%
+}}%
+\newcommand*{\@subject}{}%
+\newcommand*{\subject}[1]{\gdef\@subject{%
+ #1%
+}}%
+\newcommand*{\subtitle}[1]{\gdef\@subtitle{%
+ #1%
+}}%
+\newcommand*{\@subtitle}{}%
+\newcommand*{\@publishers}{}%
+\newcommand{\publishers}[1]{\gdef\@publishers{%
+ #1%
+}}%
+\newcommand*{\@uppertitleback}{}%
+\newcommand{\uppertitleback}[1]{\gdef\@uppertitleback{%
+ #1%
+}}%
+\newcommand*{\@lowertitleback}{}%
+\newcommand{\lowertitleback}[1]{\gdef\@lowertitleback{%
+ #1%
+}}%
+\newcommand*{\@dedication}{}%
+\newcommand{\dedication}[1]{\gdef\@dedication{%
+ #1%
+}}%
+\newcommand*{\next@tpage}{\clearpage\thispagestyle{empty}}%
\if@titlepage
\newcommand*\maketitle[1][1]{%
\begin{titlepage}
- \setcounter{page}{#1}%
+ \setcounter{page}{%
+ #1%
+ }%
\let\footnotesize\small
\let\footnoterule\relax
\let\footnote\thanks
@@ -1402,10 +1620,12 @@
\global\let\dedication\relax
\global\let\date\relax
\global\let\and\relax
- }
+ }%
\else
\newcommand*\maketitle[1][1]{\par
- \@tempcnta=#1\relax\ifnum\@tempcnta=1\else
+ \@tempcnta=%
+ #1%
+ \relax\ifnum\@tempcnta=1\else
\ClassWarning{\KOMAClassName}{%
Optional argument of \string\maketitle\space ignored
at\MessageBreak
@@ -1456,7 +1676,7 @@
\global\let\dedication\relax
\global\let\date\relax
\global\let\and\relax
- }
+ }%
\fi
\newcommand*{\@maketitle}{%
\clearpage
@@ -1498,12 +1718,7 @@
\end{center}%
\par
\vskip 2em
-}
-\newcommand*\titlefont{\sectfont}
-\newcommand*{\subject@font}{\normalfont\normalcolor\bfseries\Large}
-\newkomafont{subtitle}{\usekomafont{title}\large}
-\newcommand*{\scr@fnt@title}{\titlefont}
-\newcommand*{\scr@fnt@subject}{\subject@font}
+}%
\newenvironment{titlepage}{%
\cleardoublepage
\if@twocolumn
@@ -1517,19 +1732,24 @@
\fi
}{%
\if@restonecol\twocolumn \else \newpage \fi
-}
+}%
+\newcommand*\titlefont{\sectfont}%
+\newcommand*{\subject@font}{\normalfont\normalcolor\bfseries\Large}%
+\newkomafont{subtitle}{\usekomafont{title}\large}%
+\newcommand*{\scr@fnt@title}{\titlefont}%
+\newcommand*{\scr@fnt@subject}{\subject@font}%
%%% From File: scrksect.dtx
\newif\if@mainmatter\@mainmattertrue
\newcommand*\frontmatter{%
- \if@twoside\cleardoublepage\else\clearpage\fi
+ \if@twoside\cleardoubleoddpage\else\clearpage\fi
\@mainmatterfalse\pagenumbering{roman}%
}
\newcommand*\mainmatter{%
- \if@twoside\cleardoublepage\else\clearpage\fi
+ \if@twoside\cleardoubleoddpage\else\clearpage\fi
\@mainmattertrue\pagenumbering{arabic}%
}
\newcommand*\backmatter{%
- \if@openright\cleardoublepage\else\clearpage\fi\@mainmatterfalse
+ \if@openright\cleardoubleoddpage\else\clearpage\fi\@mainmatterfalse
}
\newcommand*\appendix{\par%
\setcounter{chapter}{0}%
@@ -1540,22 +1760,25 @@
}
\newcommand*\chaptermark[1]{}
\newif\if@altsecnumformat\@altsecnumformatfalse
-\newif\if@autodot\@autodotfalse
+\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
}
\newcommand*{\@@maybeautodot}[1]{%
\ifx #1\@stop\let\@@maybeautodot\relax
\else
- \ifx #1\Alph \aftergroup\@autodottrue\fi
- \ifx #1\alph \aftergroup\@autodottrue\fi
- \ifx #1\Roman \aftergroup\@autodottrue\fi
- \ifx #1\roman \aftergroup\@autodottrue\fi
- \ifx #1\@Alph \aftergroup\@autodottrue\fi
- \ifx #1\@alph \aftergroup\@autodottrue\fi
- \ifx #1\@Roman \aftergroup\@autodottrue\fi
- \ifx #1\@roman \aftergroup\@autodottrue\fi
- \ifx #1\romannumeral \aftergroup\@autodottrue\fi
+ \ifx #1\Alph \@autodottrue\fi
+ \ifx #1\alph \@autodottrue\fi
+ \ifx #1\Roman \@autodottrue\fi
+ \ifx #1\roman \@autodottrue\fi
+ \ifx #1\@Alph \@autodottrue\fi
+ \ifx #1\@alph \@autodottrue\fi
+ \ifx #1\@Roman \@autodottrue\fi
+ \ifx #1\@roman \@autodottrue\fi
+ \ifx #1\romannumeral \@autodottrue\fi
\fi
\@@maybeautodot
}
@@ -1707,7 +1930,9 @@
\secdef\@addpart\@saddpart
}
\newcommand*{\@addpart}{}
-\def\@addpart[#1]#2{\addcontentsline{toc}{part}{#1}\@spart{#2}%
+\def\@addpart[#1]#2{%
+ \csname phantomsection\endcsname
+ \addcontentsline{toc}{part}{#1}\@spart{#2}%
\ifx\partmark\@gobble\else\@mkboth{#1}{}\fi
}
\newcommand*{\@saddpart}{\@spart}
@@ -1749,14 +1974,14 @@
\fi%
}
}
-\newcommand*{\chapterheadstartvskip}{}
-\newcommand*{\chapterheadendvskip}{}
\newcommand\chapter{\if@openright\cleardoublepage\else\clearpage\fi
\thispagestyle{\chapterpagestyle}%
\global\@topnum\z@
\@afterindentfalse
\secdef\@chapter\@schapter
}
+\setuptoc{lof}{chapteratlist}
+\setuptoc{lot}{chapteratlist}
\newcommand*{\@chapter}{}
\def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne
\if@mainmatter
@@ -1765,25 +1990,59 @@
\typeout{\@chapapp\space\thechapter.}%
\addcontentsline{toc}{chapter}{\protect\numberline{\thechapter}#1}%
\if@chaptertolists
- \addcontentsline{lof}{chapteratlist}{%
- \protect\numberline{\thechapter}#1}%
- \addcontentsline{lot}{chapteratlist}{%
- \protect\numberline{\thechapter}#1}%
+ \doforeachtocfile{%
+ \iftocfeature{\@currext}{chapteratlist}{%
+ \addcontentsline{\@currext}{chapteratlist}{%
+ \protect\numberline{\thechapter}#1}%
+ }{}%
+ }%
\@ifundefined{float@addtolists}{}{%
- \float@addtolists{%
- \protect\contentsline{chapteratlist}{%
- \protect\numberline{\thechapter}#1}{\thepage}%
+ \ClassWarning{\KOMAClassName}{%
+ Usage of deprecated \string\float@addtolists!\MessageBreak
+ You should use the features of package `tocbasic'\MessageBreak
+ instead of \string\float@addtolists.\MessageBreak
+ Definition of \string\float@addtolists\space may be removed
+ from\MessageBreak
+ KOMA-Script soon, so it should not be used
+ }%
+ \scr@ifundefinedorrelax{@currentHref}{%
+ \float@addtolists{%
+ \protect\contentsline{chapteratlist}{%
+ \protect\numberline{\thechapter}#1}{\thepage}%
+ }%
+ }{%
+ \float@addtolists{%
+ \protect\contentsline{chapteratlist}{%
+ \protect\numberline{\thechapter}#1}{\thepage}{\@currentHref}%
+ }%
}%
}%
\fi
\else
\addcontentsline{toc}{chapter}{#1}%
\if@chaptertolists
- \addcontentsline{lof}{chapteratlist}{#1}%
- \addcontentsline{lot}{chapteratlist}{#1}%
+ \doforeachtocfile{%
+ \iftocfeature{\@currext}{chapteratlist}{%
+ \addcontentsline{\@currext}{chapteratlist}{#1}%
+ }{}%
+ }%
\@ifundefined{float@addtolists}{}{%
- \float@addtolists{%
- \protect\contentsline{chapteratlist}{#1}{\thepage}%
+ \ClassWarning{\KOMAClassName}{%
+ Usage of deprecated \string\float@addtolists!\MessageBreak
+ You should use the features of package `tocbasic'\MessageBreak
+ instead of \string\float@addtolists.\MessageBreak
+ Definition of \string\float@addtolists\space may be removed
+ from\MessageBreak
+ KOMA-Script soon, so it should not be used
+ }%
+ \scr@ifundefinedorrelax{@currentHref}{%
+ \float@addtolists{%
+ \protect\contentsline{chapteratlist}{#1}{\thepage}%
+ }%
+ }{%
+ \float@addtolists{%
+ \protect\contentsline{chapteratlist}{#1}{\thepage}{\@currentHref}%
+ }%
}%
}%
\fi
@@ -1791,20 +2050,48 @@
\else
\addcontentsline{toc}{chapter}{#1}%
\if@chaptertolists
- \addcontentsline{lof}{chapteratlist}{#1}%
- \addcontentsline{lot}{chapteratlist}{#1}%
+ \doforeachtocfile{%
+ \iftocfeature{\@currext}{chapteratlist}{%
+ \addcontentsline{\@currext}{chapteratlist}{#1}%
+ }{}%
+ }%
\@ifundefined{float@addtolists}{}{%
- \float@addtolists{%
- \protect\contentsline{chapteratlist}{#1}{\thepage}%
+ \ClassWarning{\KOMAClassName}{%
+ Usage of deprecated \string\float@addtolists!\MessageBreak
+ You should use the features of package `tocbasic'\MessageBreak
+ instead of \string\float@addtolists.\MessageBreak
+ Definition of \string\float@addtolists\space may be removed
+ from\MessageBreak
+ KOMA-Script soon, so it should not be used
+ }%
+ \scr@ifundefinedorrelax{@currentHref}{%
+ \float@addtolists{%
+ \protect\contentsline{chapteratlist}{#1}{\thepage}%
+ }%
+ }{%
+ \float@addtolists{%
+ \protect\contentsline{chapteratlist}{#1}{\thepage}{\@currentHref}%
+ }%
}%
}%
\fi
\fi
\chaptermark{#1}%
\ifdim \@chapterlistsgap>\z@
- \addtocontents{lof}{\protect\addvspace{\@chapterlistsgap}}%
- \addtocontents{lot}{\protect\addvspace{\@chapterlistsgap}}%
+ \doforeachtocfile{%
+ \iftocfeature{\@currext}{chapteratlist}{%
+ \addtocontents{\@currext}{\protect\addvspace{\@chapterlistsgap}}%
+ }{}%
+ }%
\@ifundefined{float@addtolists}{}{%
+ \ClassWarning{\KOMAClassName}{%
+ Usage of deprecated \string\float@addtolists!\MessageBreak
+ You should use the features of package `tocbasic'\MessageBreak
+ instead of \string\float@addtolists.\MessageBreak
+ Definition of \string\float@addtolists\space may be removed
+ from\MessageBreak
+ KOMA-Script soon, so it should not be used
+ }%
\float@addtolists{\protect\addvspace{\@chapterlistsgap}}%
}%
\fi
@@ -1879,31 +2166,59 @@
\global\@topnum\z@
\@afterindentfalse
\secdef\@addchap\@saddchap%
-}
-\newcommand*{\@addchap}{}
+}%
+\newcommand*{\@addchap}{}%
\def\@addchap[#1]#2{\@schapter{#2}%
\addcontentsline{toc}{chapter}{#1}%
\if@chaptertolists
- \addcontentsline{lof}{chapteratlist}{#1}%
- \addcontentsline{lot}{chapteratlist}{#1}%
+ \doforeachtocfile{%
+ \iftocfeature{\@currext}{chapteratlist}{%
+ \addcontentsline{\@currext}{chapteratlist}{#1}%
+ }{}%
+ }%
\@ifundefined{float@addtolists}{}{%
- \float@addtolists{%
- \protect\contentsline{chapteratlist}{#1}{\thepage}%
+ \ClassWarning{\KOMAClassName}{%
+ Usage of deprecated \string\float@addtolists!\MessageBreak
+ You should use the features of package `tocbasic'\MessageBreak
+ instead of \string\float@addtolists.\MessageBreak
+ Definition of \string\float@addtolists\space may be removed
+ from\MessageBreak
+ KOMA-Script soon, so it should not be used
+ }%
+ \scr@ifundefinedorrelax{@currentHref}{%
+ \float@addtolists{%
+ \protect\contentsline{chapteratlist}{#1}{\thepage}%
+ }%
+ }{%
+ \float@addtolists{%
+ \protect\contentsline{chapteratlist}{#1}{\thepage}{\@currentHref}%
+ }%
}%
}%
\fi
- \ifnum \@nameuse{scr@v@2.96}<\scr@compatibility
+ \ifnum \@nameuse{scr@v@2.96}<\scr@compatibility\relax
\ifdim \@chapterlistsgap>\z@
- \addtocontents{lof}{\protect\addvspace{\@chapterlistsgap}}%
- \addtocontents{lot}{\protect\addvspace{\@chapterlistsgap}}%
+ \doforeachtocfile{%
+ \iftocfeature{\@currext}{chapteratlist}{%
+ \addtocontents{\@currext}{\protect\addvspace{\@chapterlistsgap}}%
+ }{}%
+ }%
\@ifundefined{float@addtolists}{}{%
+ \ClassWarning{\KOMAClassName}{%
+ Usage of deprecated \string\float@addtolists!\MessageBreak
+ You should use the features of package `tocbasic'\MessageBreak
+ instead of \string\float@addtolists.\MessageBreak
+ Definition of \string\float@addtolists\space may be removed
+ from\MessageBreak
+ KOMA-Script soon, so it should not be used
+ }%
\float@addtolists{\protect\addvspace{\@chapterlistsgap}}%
}%
\fi
\fi
\if@twoside\@mkboth{#1}{}\else\@mkboth{}{#1}\fi
-}
-\newcommand*{\@saddchap}[1]{\@schapter{#1}\@mkboth{}{}}
+}%
+\newcommand*{\@saddchap}[1]{\@schapter{#1}\@mkboth{}{}}%
\AfterPackage{hyperref}{%
\@ifpackagelater{hyperref}{2001/02/19}{}{%
\ClassWarningNoLine{\KOMAClassName}{%
@@ -1921,23 +2236,23 @@
\newcommand\section{\@startsection{section}{1}{\z@}%
{-3.5ex \@plus -1ex \@minus -.2ex}%
{2.3ex \@plus.2ex}%
- {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\setlength{\parfillskip}{\z@
- plus 1fil}\fi
+ {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax
+ \setlength{\parfillskip}{\z@ plus 1fil}\fi
\raggedsection\normalfont\sectfont\nobreak\size@section}%
}
\newcommand\subsection{\@startsection{subsection}{2}{\z@}%
{-3.25ex\@plus -1ex \@minus -.2ex}%
{1.5ex \@plus .2ex}%
- {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\setlength{\parfillskip}{\z@
- plus 1fil}\fi
+ {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax
+ \setlength{\parfillskip}{\z@ plus 1fil}\fi
\raggedsection\normalfont\sectfont\nobreak\size@subsection
}%
}
\newcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%
{-3.25ex\@plus -1ex \@minus -.2ex}%
{1.5ex \@plus .2ex}%
- {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\setlength{\parfillskip}{\z@
- plus 1fil}\fi
+ {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax
+ \setlength{\parfillskip}{\z@ plus 1fil}\fi
\raggedsection\normalfont\sectfont\nobreak\size@subsubsection
}%
}
@@ -1969,16 +2284,8 @@
\newkomafont{partentrypagenumber}{}
\newkomafont{chapterentry}{\usekomafont{sectioning}}
\newkomafont{chapterentrypagenumber}{}
-\newcommand*{\size@part}{}
-\newcommand*{\size@partnumber}{}
-\newcommand*{\size@chapter}{}
-\newcommand*{\size@chapterprefix}{\size@chapter}
-\newcommand*{\size@section}{}
-\newcommand*{\size@subsection}{}
-\newcommand*{\size@subsubsection}{}
-\newcommand*{\size@paragraph}{}
-\newcommand*{\size@subparagraph}{}
\newcommand*{\scr@fnt@disposition}{\sectfont}
+\aliaskomafont{sectioning}{disposition}
\newcommand*{\scr@fnt@part}{\size@part}
\newcommand*{\scr@fnt@partnumber}{\size@partnumber}
\newcommand*{\scr@fnt@chapter}{\size@chapter}
@@ -1988,7 +2295,6 @@
\newcommand*{\scr@fnt@subsubsection}{\size@subsubsection}
\newcommand*{\scr@fnt@paragraph}{\size@paragraph}
\newcommand*{\scr@fnt@subparagraph}{\size@subparagraph}
-\aliaskomafont{sectioning}{disposition}
\newcommand*{\use@preamble}[1]{%
\@ifundefined{#1@preamble}{}{%
\@nameuse{#1@preamble}%
@@ -2120,7 +2426,7 @@
\usekomafont{partentry}{#1\nobreak
\usekomafont{partentrypagenumber}{\hfil\nobreak
\hb@xt@\@pnumwidth{\hss#2}}}\par
- \ifnum \scr@compatibility>\@nameuse{scr@v@2.96}
+ \ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax
\endgroup
\penalty20010
\else
@@ -2152,7 +2458,7 @@
\usekomafont{chapterentrypagenumber}{%
\hfill\nobreak
\hb@xt@\@pnumwidth{\hss#2}}}\par
- \ifnum \scr@compatibility>\@nameuse{scr@v@2.96}
+ \ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax
\endgroup
\penalty20009
\else
@@ -2169,7 +2475,7 @@
\newcommand*\l@paragraph{\bprot@dottedtocline{4}{10em}{5em}}
\newcommand*\l@subparagraph{\bprot@dottedtocline{5}{12em}{6em}}
\newcommand*{\bprot@dottedtocline}[5]{%
- \ifnum \scr@compatibility>\@nameuse{scr@v@2.96}
+ \ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax
\ifnum #1>\c@tocdepth \else
\begingroup
\@tempcnta 20010
@@ -2273,16 +2579,19 @@
\addtolength{\@tempdima}{\marginparwidth}%
\fi
}
-\newcommand*\pnumfont{\normalfont\normalcolor}
-\newcommand*\headfont{\normalfont\normalcolor\slshape}
+\newcommand*{\pnumfont}{\normalfont\normalcolor}
+\newcommand*{\headfont}{\normalfont\normalcolor\slshape}
+\newcommand*{\footfont}{}
\newcommand*{\scr@fnt@pagenumber}{\pnumfont}
\aliaskomafont{pagination}{pagenumber}
-\newcommand*{\scr@fnt@pagehead}{\headfont}
-\newcommand*{\scr@fnt@wrn@pagehead}[1]{%
- `pagehead' and `pagefoot' are aliases for the same\MessageBreak
- font element, changed%
+\newcommand*{\scr@fnt@pageheadfoot}{\headfont}
+\aliaskomafont{pagehead}{pageheadfoot}
+\newcommand*{\scr@fnt@pagefoot}{\footfont}
+\newcommand*{\scr@fnt@wrn@pagefoot}[1]{%
+ This class does not use font element `pagefoot'!\MessageBreak
+ Maybe you should load package `scrpage2', before\MessageBreak
+ using this element%
}
-\aliaskomafont{pagefoot}{pagehead}
\newcommand*{\pagemark}{{\usekomafont{pagenumber}%
\thepage}}
\renewcommand*{\ps@plain}{%
@@ -2388,8 +2697,6 @@
\AtBeginDocument{\let\scr@caption\caption}
\newcommand{\captionabove}{\@captionabovetrue\scr@caption}
\newcommand{\captionbelow}{\@captionabovefalse\scr@caption}
-\newcommand*{\scap@pos}{r}
-\newcommand*{\scap@valign}{b}
\newcommand*{\scap@caption}{}
\newcommand*{\scap@width}{\linewidth}
\newcommand*{\scap@move}{\z@}
@@ -2429,7 +2736,16 @@
\newbox\c@pti@nb@sid@b@x
\newcommand{\c@pti@nb@sid@}{}
\long\def\c@pti@nb@sid@[#1]#2{%
- \def\scap@caption{\captionbelow[{#1}]{#2}}%
+ \def\scap@caption{%
+ \if c\scap@valign
+ \setlength{\abovecaptionskip}{\z@}%
+ \setlength{\belowcaptionskip}{\z@}%
+ \else
+ \setlength{\abovecaptionskip}{-\ht\strutbox}%
+ \setlength{\belowcaptionskip}{-\dp\strutbox}%
+ \fi
+ \captionbelow[{#1}]{#2}%
+ }%
\begin{lrbox}{\c@pti@nb@sid@b@x}%
}
\newenvironment*{captionbeside}{%
@@ -2510,12 +2826,12 @@
\AfterPackage{caption2}{%
\renewcommand*{\setcapindent}{%
\ClassWarning{\KOMAClassName}{%
- You're using package caption2.\MessageBreak
- Because of this you should also use \string\captionstyle\space
+ You're using package `caption2'.\MessageBreak
+ Because of this you should also use `\string\captionstyle'
and\MessageBreak
- set length \string\captionindent\space instead if
+ set length '\string\captionindent' instead of
using\MessageBreak
- \string\setcapindent
+ `\string\setcapindent'%
}%
\captionstyle{indent}%
\@ifstar{\setlength{\captionindent}}{\setlength{\captionindent}}%
@@ -2525,10 +2841,10 @@
\AfterPackage{caption2}{%
\renewcommand*{\setcaphanging}{%
\ClassWarning{\KOMAClassName}{%
- You're using package caption2.\MessageBreak
+ You're using package `caption2'.\MessageBreak
Because of this you should also use
- \string\captionstyle\MessageBreak
- instead of \string\setcaphang
+ `\string\captionstyle'\MessageBreak
+ instead of `\string\setcaphang'%
}
\captionstyle{hang}%
}%
@@ -2618,11 +2934,11 @@
\AfterPackage{caption2}{%
\renewcommand*{\setcapwidth}[2][]{%
\ClassWarning{\KOMAClassName}{%
- Ignorring optional argument of \string\setcapwidth!\MessageBreak
- You're using package caption2.\MessageBreak
+ Ignorring optional argument of `\string\setcapwidth'!\MessageBreak
+ You're using package `caption2'.\MessageBreak
Because of this you should also use
- \string\setcaptionwidth\MessageBreak
- instead of \string\setcapwidth\MessageBreak
+ `\string\setcaptionwidth'\MessageBreak
+ instead of `\string\setcapwidth'%
}%
\setcaptionwidth{#2}%
}%
@@ -2681,10 +2997,10 @@
\ifdim\@tempdima\@tempdimb\else
\ClassWarning{\KOMAClassName}{%
Can set only centered caption!\MessageBreak
- You're using package caption2.\MessageBreak
+ You're using package `caption2'.\MessageBreak
Because of this you should also use
- \string\setcaptionmargin\MessageBreak
- instead of \string\setcapmargin
+ `\string\setcaptionmargin'\MessageBreak
+ instead of `\string\setcapmargin'%
}%
\fi
\addtolength{\@tempdimb}{\@tempdimb}%
@@ -2756,20 +3072,22 @@
\fi
\endgroup
}
+\newcommand*{\scr@caption@before@longtable@warning}[1]{%
+ \ClassWarning{\KOMAClassName}{%
+ you've loaded package `#1' before package\MessageBreak
+ `longtable'!\MessageBreak
+ Because of this package `#1' isn't able to\MessageBreak
+ control `\string\caption' at longtables. \space After loading
+ \MessageBreak
+ package `#1' KOMA-Script also doesn't control\MessageBreak
+ `\string\caption'.\MessageBreak
+ I think, you should load package `caption' after\MessageBreak
+ package `longtable'%
+ }%
+}
\AfterPackage{longtable}{%
\@ifpackageloaded{caption2}{\@komalongtablefalse
- \ClassWarning{\KOMAClassName}{%
- you've loaded package caption2 before package\MessageBreak
- longtable!\MessageBreak
- Because of this package caption2 isn't able to
- control\MessageBreak
- \string\caption\space at longtables. After loading package
- caption2\MessageBreak
- KOMA-Script also doesn't control \string\caption.\MessageBreak
- I think, you should load package caption after
- package\MessageBreak
- longtable and use the new interface%
- }%
+ \scr@caption@before@longtable@warning{caption2}%
}{}%
\if@komalongtable
\renewcommand{\LT@makecaption}[3]{%
@@ -2941,9 +3259,44 @@
\newcommand*{\ftntm@font}{}
\newcommand*{\scr@fnt@footnotereference}{\ftntm@font}
\newcommand*{\scr@fnt@footnoteref}{\ftntm@font}
+\newcommand*{\FN@mf@check}{%
+ \ifdim\lastkern=\multiplefootnotemarker\relax
+ \edef\@x@sf{\the\spacefactor}%
+ \unkern\multiplefootnoteseparator
+ \spacefactor\@x@sf\relax
+ \fi
+}
+\newcommand*{\scr@mf@prepare}{%
+ \kern-\multiplefootnotemarker
+ \kern\multiplefootnotemarker\relax
+}
+\@ifundefined{FN@mf@prepare}{}{}
+\newcommand*{\scr@saved@footnotetext}{}
+\let\scr@saved@footnotetext\@footnotetext
+\renewcommand*{\@footnotetext}[1]{%
+ \scr@saved@footnotetext{#1}%
+ \csname FN@mf@prepare\endcsname
+}
+\BeforePackage{footmisc}{%
+ \ifx\@footnotemark\scr@footnotemark
+ \let\@footnotemark\scr@saved@footnotemark
+ \fi
+ \let\@footnotetext\scr@saved@footnotetext
+}
+\newcommand*{\multiplefootnoteseparator}{%
+ \begingroup\let\thefootnotemark\multfootsep\@makefnmark\endgroup
+}
+\newcommand*{\multfootsep}{,}
+\newcommand*{\multiplefootnotemarker}{3sp}
\newcommand*{\thefootnotemark}{\@thefnmark}
\deffootnote[1em]{1.5em}{1em}{\textsuperscript{\thefootnotemark}}
\deffootnotemark{\textsuperscript{\thefootnotemark}}
+\newcommand*{\footref}[1]{%
+ \begingroup
+ \unrestored@protected@xdef\@thefnmark{\ref{#1}}%
+ \endgroup
+ \@footnotemark
+}
%%% From File: scrkliof.dtx
\renewcommand*{\numberline}[1]{%
\hb@xt@\@tempdima{#1\autodot\hfil}}
@@ -2987,30 +3340,39 @@
\string\gdef\expandafter\string\csname#1@l@number\endcsname{%
\@l@number}}%
}
+\g@addto@macro\tocbasic@@before@hook{%
+ \if@dynlist\expandafter\before@starttoc\expandafter{\@currext}\fi
+}
+\g@addto@macro\tocbasic@@after@hook{%
+ \if@dynlist\expandafter\after@starttoc\expandafter{\@currext}\fi
+}
\newcommand*\contentsname{Contents}
+\newcommand*\listoftocname{\contentsname}
\setcounter{tocdepth}{2}
\newcommand*\toc@heading{%
+ \ClassWarning{\KOMAClassName}{%
+ usage of deprecated \string\toc@heading!\MessageBreak
+ You should use the features of package `tocbasic'\MessageBreak
+ instead of \string\toc@heading.\MessageBreak
+ Definition of \string\toc@heading\space my be removed from\MessageBreak
+ KOMA-Script soon, so it should not be used
+ }%
\chapter*{\contentsname}%
\@mkboth{\contentsname}{\contentsname}%
}
\newcommand*{\toc@l@number}{}
\newcommand*{\tableofcontents}{%
- \begingroup
- \if@twocolumn
- \@restonecoltrue\onecolumn
- \else
- \@restonecolfalse
- \fi
- \toc@heading%
- \setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative
- \if@tocleft\before@starttoc{toc}\fi
- \@starttoc{toc}%
- \if@tocleft\after@starttoc{toc}\fi
- \if@restonecol\twocolumn\fi
- \endgroup
+ \begingroup\let\if@dynlist\if@tocleft\listoftoc{toc}\endgroup
}
\newcommand*{\float@listhead}[1]{%
- \chapter*{#1}%
+ \ClassWarning{\KOMAClassName}{%
+ usage of deprecated \string\float@listhead!\MessageBreak
+ You should use the features of package `tocbasic'\MessageBreak
+ instead of \string\float@listhead.\MessageBreak
+ Definition of \string\float@listhead\space my be removed from\MessageBreak
+ KOMA-Script soon, so it should not be used
+ }%
+ \float@@listhead{#1}%
\@mkboth{#1}{#1}%
\if@dynlist%
\newcommand*{\scr@starttoc}{}%
@@ -3021,53 +3383,37 @@
\fi
}
\newcommand*\listfigurename{List of Figures}
+\newcommand*\listoflofname{\listfigurename}
\newcommand*\listtablename{List of Tables}
-\newcommand*\lof@heading{\float@listhead{\listfigurename}}
-\newcommand*\listoffigures{%
- \begingroup%
- \if@twocolumn
- \@restonecoltrue\onecolumn
- \else
- \@restonecolfalse
- \fi
- \lof@heading%
- \setparsizes{0}{0}{\z@\@plus 1fil}\par@updaterelative
- \@starttoc{lof}%
- \if@restonecol\twocolumn\fi
- \endgroup
-}
+\newcommand*\listoflotname{\listtablename}
+\newcommand*\listoffigures{\listoftoc{lof}}
\newcommand*\l@figure{\@dottedtocline{1}{1.5em}{2.3em}}
-\newcommand*\lot@heading{\float@listhead{\listtablename}}
-\newcommand*\listoftables{%
- \begingroup
- \if@twocolumn
- \@restonecoltrue\onecolumn
- \else
- \@restonecolfalse
- \fi
- \lot@heading
- \setparsizes{0}{0}{\z@\@plus 1fil}\par@updaterelative
- \@starttoc{lot}%
- \if@restonecol\twocolumn\fi
- \endgroup
-}
+\newcommand*\listoftables{\listoftoc{lot}}
\let\l@table\l@figure
%%% From File: scrkbib.dtx
\newcommand*\bibname{Bibliography}
\newcommand*{\bibpreamble}{\relax}
\let\bibpreamble\relax
\newcommand{\setbibpreamble}[1]{\def\bibpreamble{#1}}
-\newcommand*\bib@heading{%
- \chapter*{\bibname}%
- \@mkboth{\bibname}{\bibname}%
-}
\newdimen\bibindent
\bibindent=1.5em
\newenvironment{thebibliography}[1]{%
- \ifx\bibpreamble\relax\else\ifx\bibpreamble\@empty\else
- \setchapterpreamble{\bibpreamble}%
- \fi\fi
- \bib@heading
+ \if@bib@break@
+ \bib@beginhook
+ \else
+ \ifx\bibpreamble\relax\else\ifx\bibpreamble\@empty\else
+ \setchapterpreamble{\bibpreamble}%
+ \fi\fi
+ \bib@heading
+ \bib@beginhook
+ \bib@before@hook
+ \fi
+ \renewcommand{\BreakBibliography}[1]{%
+ \@bib@break
+ \end{thebibliography}%
+ \begingroup ##1\endgroup
+ \begin{thebibliography}{#1}
+ }%
\list{%
\@biblabel{\@arabic\c@enumiv}%
}{%
@@ -3075,27 +3421,67 @@
\leftmargin\labelwidth
\advance\leftmargin\labelsep
\@openbib@code
- \usecounter{enumiv}%
+ \if@bib@break@
+ \edef\@tempa{%
+ \noexpand\usecounter{enumiv}%
+ \noexpand\setcounter{enumiv}{\the\c@enumiv}%
+ }\@tempa
+ \no@bib@break
+ \else
+ \usecounter{enumiv}%
+ \fi
\let\p@enumiv\@empty
\renewcommand*\theenumiv{\@arabic\c@enumiv}%
}%
\sloppy\clubpenalty4000 \widowpenalty4000
\sfcode`\.=\@m
}{%
- \def\@noitemerr{%
- \@latex@warning{Empty `thebibliography' environment}%
- }%
+ \if@bib@break@
+ \def\@noitemerr{%
+ \@latex@warning{%
+ \string\BreakBibliography\space at begin of `thebibliography'
+ environment\MessageBreak
+ or following \string\BreakBibliography}%
+ }%
+ \else
+ \def\@noitemerr{%
+ \@latex@warning{%
+ Empty `thebibliography' environment or
+ \string\BreakBibliography\MessageBreak
+ before end of `thebibliography' environment}%
+ }%
+ \fi
\endlist
+ \if@bib@break@
+ \else
+ \bib@after@hook
+ \let\bib@before@hook\@empty
+ \let\bib@after@hook\@empty
+ \fi
+ \bib@endhook
+}
+\newif\if@bib@break@
+\newcommand{\no@bib@break}{\global\let\if@bib@break@\iffalse}
+\newcommand*{\@bib@break}{\global\let\if@bib@break@\iftrue}
+\newcommand*{\bib@before@hook}{}
+\newcommand*{\bib@after@hook}{}
+\newcommand{\BreakBibliography}[1]{%
+ \ClassWarning{\KOMAClassName}{%
+ You've used \string\BreakBibliography\space either outside of\MessageBreak
+ the bibliography or `thebibliography' was redefined\MessageBreak
+ incompatible, e.g., using a bibliography package.\MessageBreak
+ \string\BreakBibliography\space ignored%
+ }%
}
-\newcommand*\newblock{\hskip .11em\@plus.33em\@minus.07em}
-\let\@openbib@code\@empty
+\newcommand{\AfterBibliographyPreamble}{\g@addto@macro\bib@before@hook}
+\newcommand{\AtEndBibliography}{\g@addto@macro\bib@after@hook}
%%% From File: scrkidx.dtx
\newcommand*{\index@preamble}{}
\let\index@preamble=\relax
\newcommand{\setindexpreamble}[1]{\def\index@preamble{#1}}
\newcommand*{\idx@heading}{%
\if@openright\cleardoublepage\else\clearpage\fi%
- \twocolumn[\chapter*{\indexname}]%
+ \twocolumn[\idx@@heading{\indexname}]%
\@mkboth{\indexname}{\indexname}%
}
\newenvironment{theindex}{%
diff --git a/Master/texmf-dist/tex/latex/koma-script/scrdoc.cls b/Master/texmf-dist/tex/latex/koma-script/scrdoc.cls
index df50594a97a..aaf384edefc 100644
--- a/Master/texmf-dist/tex/latex/koma-script/scrdoc.cls
+++ b/Master/texmf-dist/tex/latex/koma-script/scrdoc.cls
@@ -1,6 +1,6 @@
% ======================================================================
% scrdoc.dtx
-% Copyright (C) 2002-2007 Markus Kohm
+% Copyright (C) 2002-2008 Markus Kohm
%
% This file is part of the LaTeX2e KOMA-Script bundle.
%
@@ -18,7 +18,7 @@
% This work consists of all files listed in manifest.txt.
% ----------------------------------------------------------------------
% scrdoc.dtx
-% Copyright (C) 2002-2007 Markus Kohm
+% Copyright (C) 2002-2008 Markus Kohm
%
% Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz,
% Version 1.3b, verteilt und/oder veraendert werden.
diff --git a/Master/texmf-dist/tex/latex/koma-script/scrextend.sty b/Master/texmf-dist/tex/latex/koma-script/scrextend.sty
new file mode 100644
index 00000000000..632c77df03a
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/koma-script/scrextend.sty
@@ -0,0 +1,1142 @@
+%%
+%% This is file `scrextend.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% scrextend.dtx (with options: `package,extend,prepare')
+%% scrkvers.dtx (with options: `package,extend')
+%% scrkbase.dtx (with options: `load')
+%% scrextend.dtx (with options: `package,extend,option')
+%% scrkcomp.dtx (with options: `package,extend,option')
+%% scrkmisc.dtx (with options: `package,extend,option')
+%% scrkfont.dtx (with options: `package,extend,option')
+%% scrktitl.dtx (with options: `package,extend,option')
+%% scrksect.dtx (with options: `package,extend,option')
+%% scrkpage.dtx (with options: `package,extend,option')
+%% scrkfloa.dtx (with options: `package,extend,option')
+%% scrkftn.dtx (with options: `package,extend,option')
+%% scrklist.dtx (with options: `package,extend,option')
+%% scrkmisc.dtx (with options: `package,extend,execoption')
+%% scrkcomp.dtx (with options: `package,extend,body')
+%% scrkfont.dtx (with options: `package,extend,body')
+%% scrktitl.dtx (with options: `package,extend,body')
+%% scrksect.dtx (with options: `package,extend,body')
+%% scrkmisc.dtx (with options: `package,extend,body')
+%% scrkpage.dtx (with options: `package,extend,body')
+%% scrkfloa.dtx (with options: `package,extend,body')
+%% scrkftn.dtx (with options: `package,extend,body')
+%% scrklist.dtx (with options: `package,extend,body')
+%% scrlogo.dtx (with options: `logo')
+%%
+%% Copyright (c) 1994-2007
+%% Markus Kohm and any individual authors listed elsewhere in this file.
+%%
+%% This file was generated from file(s) of the KOMA-Script bundle.
+%% ---------------------------------------------------------------
+%%
+%% It may be distributed under the conditions of the
+%% LaTeX Project Public License in the version distributed together
+%% with KOMA-Script, see file `lppl.txt' or `lppl-de.txt'.
+%%
+%% This file may only be distributed together with a copy of the
+%% KOMA-Script bundle. You may however distribute the
+%% KOMA-Script bundle without all such generated files. See also
+%% `lppl.txt' or `lppl-de.txt' for additional information.
+%%
+%% The list of files belonging to KOMA-Script distribution is given in
+%% the file `manifest.txt'. See also `lppl.txt' or `lppl-de.txt' for
+%% additional information.
+%%
+%% If this file is a beta version, you are not allowed to distribute it.
+%%
+%% English and German manuals are part of KOMA-Script bundle.
+%% ----------------------------------------------------------
+%%
+%% See `README'.
+%%
+%% The KOMA-Script bundle (but maybe not this file) was based upon the
+%% LaTeX2.09 Script family created by Frank Neukam 1993 and the LaTeX2e
+%% standard classes created by The LaTeX3 Project 1994-1996.
+%%
+%%% From File: scrextend.dtx
+\begingroup\expandafter\expandafter\expandafter\endgroup
+\expandafter\ifx\csname KOMAClassName\endcsname\relax\else
+ \PackageWarning{scrextend}{%
+ This package was made to extend other classes but\MessageBreak
+ KOMA-Script classes by some features of the\MessageBreak
+ KOMA-Script classes.\MessageBreak
+ It should never be used with a KOMA-Script class.\MessageBreak
+ Loading of the package will be aborted\@gobble%
+ }%
+ \expandafter\endinput
+\fi
+\newcommand*{\scr@ext@activate}[1]{%
+ \scr@ifundefinedorrelax{scr@ext@activate@#1}{%
+ \@namedef{scr@ext@immediate@#1}{%
+ \expandafter\let\csname scr@ext@immediate@#1\endcsname\relax
+ \csname scr@ext@activate@#1\endcsname
+ }%
+ }{%
+ \csname scr@ext@activate@#1\endcsname
+ \expandafter\let\csname scr@ext@activate@#1\endcsname\relax
+ }%
+}
+\newcommand*{\scr@ext@activateable}[1]{%
+ \expandafter\newcommand\expandafter*\csname scr@ext@activate@#1\endcsname
+}
+%%% From File: scrkvers.dtx
+\begingroup
+ \makeatletter
+ \ifx\KOMAScriptVersion\undefined
+ \newcommand*{\@CheckKOMAScriptVersion}[1]{%
+ \gdef\KOMAScriptVersion{#1}%
+ }%
+ \else
+ \newcommand*{\@CheckKOMAScriptVersion}[1]{%
+ \def\@tempa{#1}%
+ \ifx\KOMAScriptVersion\@tempa\else
+ \@latex@warning@no@line{%
+ \noexpand\KOMAScriptVersion\space is
+ `\KOMAScriptVersion',\MessageBreak
+ but `#1' was expected!\MessageBreak
+ You should not use classes, packages or files
+ from\MessageBreak
+ different KOMA-Script versions%
+ }%
+ \fi
+ }
+ \fi
+ \@CheckKOMAScriptVersion{2008/11/03 v3.00 KOMA-Script}%
+\endgroup
+%%% From File: scrkbase.dtx
+\RequirePackage{scrkbase}[\KOMAScriptVersion]
+%%% From File: scrextend.dtx
+\KOMA@key{extendedfeature}{%
+ \scr@ext@activate{#1}%
+ \AtEndOfPackage{%
+ \scr@ifundefinedorrelax{scr@ext@immediate@#1}{}{%
+ \PackageErrorNoLine{unkown extended feature `#1'}{%
+ You have used option `extendedfeature' to activate an extended feature
+ named\MessageBreak
+ `#1', but there is no such extended feature.\MessageBreak
+ See the KOMA-Script manual for more infromation about known
+ activatable\MessageBreak
+ extended features%
+ }%
+ }%
+ }%
+}
+\AtEndOfPackage{%
+ \KOMA@key{extendedfeature}{%
+ \PackageError{scrextend}{%
+ Option `extendedfeature' too late%
+ }{%
+ Option `extendedfeature' my be used only while loading the
+ package.\MessageBreak
+ But you've tried to set it up later%
+ }%
+ }%
+}
+%%% From File: scrkcomp.dtx
+\newcommand*{\scr@compatibility}{0}
+\KOMA@key{version}[last]{%
+ \scr@ifundefinedorrelax{scr@v@#1}{%
+ \def\scr@compatibility{0}%
+ \PackageWarningNoLine{scrextend}{%
+ 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'%
+ }%
+ }{%
+ \edef\scr@compatibility{\@nameuse{scr@v@#1}}%
+ }%
+}
+\AtEndOfPackage{%
+ \KOMA@key{version}[]{%
+ \PackageError{scrextend}{%
+ Option `version' too late%
+ }{%
+ Option `version' may be set only while loading the
+ package.\MessageBreak
+ But you've tried to set it up later.%
+ }%
+ }%
+}
+\@namedef{scr@v@first}{0}
+\@namedef{scr@v@2.9}{0}
+\@namedef{scr@v@2.9t}{0}
+\@namedef{scr@v@2.9u}{1}
+\@namedef{scr@v@2.95}{2}
+\@namedef{scr@v@2.95a}{2}
+\@namedef{scr@v@2.95b}{2}
+\@namedef{scr@v@2.96}{2}
+\@namedef{scr@v@2.96a}{3}
+\@namedef{scr@v@2.97}{3}
+\@namedef{scr@v@2.97a}{3}
+\@namedef{scr@v@2.97b}{3}
+\@namedef{scr@v@2.97c}{4}
+\@namedef{scr@v@2.97d}{5}
+\@namedef{scr@v@2.97e}{6}
+\@namedef{scr@v@2.98}{6}
+\@namedef{scr@v@2.98a}{6}
+\@namedef{scr@v@2.98b}{6}
+\@namedef{scr@v@2.98c}{7}
+\@namedef{scr@v@3.00}{8}
+\@namedef{scr@v@last}{8}
+%%% From File: scrkmisc.dtx
+\KOMA@key{draft}[true]{%
+ \KOMA@set@ifkey{draft}{@tempswa}{#1}%
+ \if@tempswa
+ \setlength{\overfullrule}{5pt}%
+ \else
+ \setlength{\overfullrule}{\z@}%
+ \fi
+}
+\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{final}{draft=false}
+%%% From File: scrkfont.dtx
+\providecommand*{\@fontsizefilebase}{scrsize}
+\KOMA@key{fontsize}{%
+ \expandafter\@defaultunits\expandafter\@tempdima#1 pt\relax\@nnil
+ \edef\@tempa{#1}%
+ \setlength{\@tempdimb}{\@tempdima}%
+ \edef\@tempb{\strip@pt\@tempdimb}%
+ \addtolength{\@tempdimb}{-10\p@}%
+ \edef\@ptsize{\strip@pt\@tempdimb}%
+ \edef\@tempa{%
+ \noexpand\makeatletter
+ \noexpand\InputIfFileExists{\@fontsizefilebase\@tempa.clo}{%
+ \noexpand\PackageInfo{scrextend}{%
+ File `\@fontsizefilebase\@tempa.clo' used to setup font sizes}%
+ }{%
+ \noexpand\InputIfFileExists{\@fontsizefilebase\@tempb pt.clo}{%
+ \noexpand\PackageInfo{scrextend}{%
+ File `\@fontsizefilebase\@tempb pt.clo' used instead of%
+ \noexpand\MessageBreak
+ file `\@fontsizefilebase\@tempa.clo' to setup font sizes}%
+ }{%
+ \noexpand\changefontsizes{#1}%
+ }%
+ }%
+ \noexpand\catcode`\noexpand\@=\the\catcode`\@
+ }%
+ \scr@ifundefinedorrelax{changefontsizes}{%
+ \expandafter\AtEndOfPackage\expandafter{\@tempa}%
+ }{%
+ \@tempa
+ }%
+}
+%%% From File: scrktitl.dtx
+\scr@ext@activateable{title}{%
+ \scr@ifundefinedorrelax{if@titlepage}{%
+ \expandafter\newif\csname if@titlepage\endcsname
+ \@titlepagefalse
+ }{}
+\KOMA@ifkey{titlepage}{@titlepage}%
+ \def\scr@ext@immediate@title{%
+ \scr@ext@activate{title}%
+ \let\scr@ext@immediate@title\relax
+ }%
+}
+\KOMA@DeclareObsoleteOption%
+ {notitlepage}{titlepage=false}
+%%% From File: scrksect.dtx
+%%% From File: scrkpage.dtx
+\KOMA@key{cleardoublepage}{%
+ \begingroup%
+ \def\@tempc{%
+ \endgroup%
+ \KOMA@unknown@keyval{cleardoublepage}{#1}{%
+ 'current' or any defined pagestyle e.g. 'empty','plain'}%
+ }%
+ \ifstr{#1}{current}{%
+ \def\@tempc{\endgroup%
+ \def\cleardoublepage{\cleardoublestandardpage}%
+ \def\cleardoubleoddpage{\cleardoubleoddstandardpage}%
+ \def\cleardoubleevenpage{\cleardoubleevenstandardpage}%
+ }%
+ }{%
+ \ifnotundefined{ps@#1}{%
+ \def\@tempc{\endgroup%
+ \def\cleardoublepage{\cleardoublepageusingstyle{#1}}%
+ \def\cleardoubleoddpage{\cleardoubleoddpageusingstyle{#1}}%
+ \def\cleardoubleevenpage{\cleardoubleevenpageusingstyle{#1}}%
+ }%
+ }{}%
+ }%
+ \@tempc
+}
+\newcommand*{\cleardoubleoddstandardpage}{}
+\let\cleardoubleoddstandardpage=\cleardoublepage
+\newcommand*{\cleardoubleoddpageusingstyle}[1]{\clearpage
+ {\thispagestyle{#1}\cleardoubleoddstandardpage}}
+\newcommand*{\cleardoubleoddemptypage}{\cleardoubleoddpageusingstyle{empty}}
+\newcommand*{\cleardoubleoddplainpage}{\cleardoubleoddpageusingstyle{plain}}
+\newcommand*{\cleardoubleevenstandardpage}{%
+ \clearpage
+ \if@twoside\ifodd\c@page
+ \hbox{}\newpage\if@twocolumn\hbox{}\newpage\fi
+ \fi\fi
+}
+\newcommand*{\cleardoubleevenpageusingstyle}[1]{\clearpage
+ {\thispagestyle{#1}\cleardoubleevenstandardpage}}
+\newcommand*{\cleardoubleevenemptypage}{\cleardoubleevenpageusingstyle{empty}}
+\newcommand*{\cleardoubleevenplainpage}{\cleardoubleevenpageusingstyle{plain}}
+\newcommand*{\cleardoublestandardpage}{\cleardoubleoddstandardpage}
+\renewcommand*{\cleardoublepage}{%
+ \expandafter\ifnum \@nameuse{scr@v@2.98c}<\scr@compatibility\relax
+ \cleardoubleemptypage
+ \else
+ \cleardoublestandardpage
+ \fi
+}
+\newcommand*{\cleardoubleoddpage}{\cleardoubleoddemptypage}
+\newcommand*{\cleardoubleevenpage}{\cleardoubleevenemptypage}
+\newcommand*{\cleardoublepageusingstyle}[1]{\clearpage
+ {\thispagestyle{#1}\cleardoublestandardpage}}
+\newcommand*{\cleardoubleemptypage}{\cleardoublepageusingstyle{empty}}
+\newcommand*{\cleardoubleplainpage}{\cleardoublepageusingstyle{plain}}
+%%% From File: scrkfloa.dtx
+%%% From File: scrkftn.dtx
+\KOMA@key{footnotes}{%
+ \ifx\@footnotemark\scr@saved@footnotemark
+ \else
+ \ifx\@footnotemark\scr@footnotemark
+ \else
+ \PackageWarning{scrextend}{%
+ Change of `\string\@footnotemark' detected!\MessageBreak
+ Use of `footnotes=#1' may break\MessageBreak
+ another package!\MessageBreak
+ Maybe you should remove the usage of\MessageBreak
+ option `footnotes=#1'}%
+ \fi
+ \fi
+ \ifstr{#1}{multiple}{%
+ \let\@footnotemark\scr@footnotemark
+ \let\FN@mf@prepare\scr@mf@prepare
+ \def\scr@footmisc@options{multiple}%
+ }{%
+ \ifstr{#1}{nomultiple}{%
+ \let\@footnotemark\scr@saved@footnotemark
+ \let\FN@mf@prepare\relax
+ \let\scr@footmisc@options\@empty
+ }{%
+ \KOMA@unknown@keyval{footnotes}{#1}{`multiple' and `nomultiple'}%
+ }%
+ }%
+}
+\newcommand*{\scr@footmisc@options}{}
+\PassOptionsToPackage{\noexpand\scr@footmisc@options}{footmisc}
+\newcommand*{\scr@saved@footnotemark}{%
+ \leavevmode
+ \ifhmode\edef\@x@sf{\the\spacefactor}\nobreak\fi
+ \@makefnmark
+ \ifhmode\spacefactor\@x@sf\fi
+ \relax}
+\expandafter\CheckCommand\expandafter*\expandafter\@footnotemark
+\expandafter{\scr@saved@footnotemark}
+\newcommand*{\scr@footnotemark}{%
+ \leavevmode
+ \ifhmode\edef\@x@sf{\the\spacefactor}\FN@mf@check\nobreak\fi
+ \@makefnmark
+ \csname FN@mf@prepare\endcsname
+ \ifhmode\spacefactor\@x@sf\fi
+ \relax}
+%%% From File: scrklist.dtx
+%%% From File: scrkmisc.dtx
+\KOMAProcessOptions\relax
+%%% From File: scrkcomp.dtx
+%%% From File: scrkfont.dtx
+\newcommand*{\changefontsizes}[2][1.2\@tempdima]{%
+ \PackageWarning{scrextend}{%
+ Using fallback calculation to setup font sizes\MessageBreak
+ for basic size `#2'}%
+ \scr@ifundefinedorrelax{dimexpr}{%
+ \PackageError{scrextend}{%
+ feature only allowed using e-TeX%
+ }{%
+ The fallback calculation to setup font sizes was implemented
+ using e-TeX.\MessageBreak
+ You should not continue, because the fallback calculation would fail%
+ }
+ }{%
+ \@defaultunits\@tempdima#2pt\relax\@nnil
+ \setlength{\@tempdimc}{\@tempdima}%
+ \addtolength{\@tempdimc}{-10\p@}%
+ \edef\@ptsize{\strip@pt\@tempdimc}%
+ \@defaultunits\@tempdimb#1pt\relax\@nnil
+ \setlength{\@tempdimc}{\dimexpr (100\@tempdimb / \@tempdima * \p@)}%
+ \edef\@tempb{\the\@tempdimc}%
+ \setlength{\@tempdimc}{\@tempdima}%
+ \def\@tempa##1##2##3##4##5\@nnil{\def##1{##2.##3##4}}%
+ \expandafter\@tempa\expandafter\@tempb\@tempb\@nnil%
+ \setlength{\abovedisplayskip}{%
+ \@tempdima \@plus .25\@tempdima \@minus .58\@tempdima}%
+ \setlength{\abovedisplayshortskip}{\z@ \@plus .25\@tempdima}%
+ \setlength{\belowdisplayskip}{\abovedisplayskip}%
+ \setlength{\belowdisplayshortskip}{%
+ .55\@tempdima \@plus .3\@tempdima \@minus .25\@tempdima}%
+ \edef\normalsize{%
+ \noexpand\@setfontsize\noexpand\normalsize
+ {\the\@tempdima}{\the\@tempdimb}%
+ \abovedisplayskip \the\abovedisplayskip
+ \abovedisplayshortskip \the\abovedisplayshortskip
+ \belowdisplayskip \the\belowdisplayskip
+ \belowdisplayshortskip \the\belowdisplayshortskip
+ \let\noexpand\@listi\noexpand\@listI
+ }%
+ \setlength{\@tempdima}{0.9125\@tempdimc}%
+ \setlength{\@tempdimb}{\@tempb\@tempdima}%
+ \setlength{\abovedisplayskip}{%
+ \@tempdima \@plus .25\@tempdima \@minus .58\@tempdima}%
+ \setlength{\abovedisplayshortskip}{\z@ \@plus .25\@tempdima}%
+ \setlength{\belowdisplayskip}{\abovedisplayskip}%
+ \setlength{\belowdisplayshortskip}{%
+ .55\@tempdima \@plus .3\@tempdima \@minus .25\@tempdima}%
+ \edef\small{%
+ \noexpand\@setfontsize\noexpand\small
+ {\the\@tempdima}{\the\@tempdimb}%
+ \abovedisplayskip \the\abovedisplayskip
+ \abovedisplayshortskip \the\abovedisplayshortskip
+ \belowdisplayskip \the\belowdisplayskip
+ \belowdisplayshortskip \the\belowdisplayshortskip
+ \let\noexpand\@listi\noexpand\@listi@small
+ }%
+ \setlength{\@tempdima}{.83334\@tempdimc}%
+ \setlength{\@tempdimb}{\@tempb\@tempdima}%
+ \setlength{\abovedisplayskip}{%
+ \@tempdima \@plus .25\@tempdima \@minus .58\@tempdima}%
+ \setlength{\abovedisplayshortskip}{\z@ \@plus .25\@tempdima}%
+ \setlength{\belowdisplayskip}{\abovedisplayskip}%
+ \setlength{\belowdisplayshortskip}{%
+ .55\@tempdima \@plus .3\@tempdima \@minus .25\@tempdima}%
+ \edef\footnotesize{%
+ \noexpand\@setfontsize\noexpand\footnotesize
+ {\the\@tempdima}{\the\@tempdimb}%
+ \abovedisplayskip \the\abovedisplayskip
+ \abovedisplayshortskip \the\abovedisplayshortskip
+ \belowdisplayskip \the\belowdisplayskip
+ \belowdisplayshortskip \the\belowdisplayshortskip
+ \let\noexpand\@listi\noexpand\@listi@footnotesize
+ }%
+ \setlength{\@tempdima}{.66667\@tempdimc}%
+ \setlength{\@tempdimb}{\@tempb\@tempdima}%
+ \edef\scriptsize{%
+ \noexpand\@setfontsize\noexpand\scriptsize
+ {\the\@tempdima}{\the\@tempdimb}%
+ }%
+ \setlength{\@tempdima}{.5\@tempdimc}%
+ \setlength{\@tempdimb}{\@tempb\@tempdima}%
+ \edef\tiny{%
+ \noexpand\@setfontsize\noexpand\tiny
+ {\the\@tempdima}{\the\@tempdimb}%
+ }%
+ \setlength{\@tempdima}{1.2\@tempdimc}%
+ \setlength{\@tempdimb}{\@tempb\@tempdima}%
+ \edef\large{%
+ \noexpand\@setfontsize\noexpand\large
+ {\the\@tempdima}{\the\@tempdimb}%
+ }%
+ \setlength{\@tempdima}{1.44\@tempdimc}%
+ \setlength{\@tempdimb}{\@tempb\@tempdima}%
+ \edef\Large{%
+ \noexpand\@setfontsize\noexpand\Large
+ {\the\@tempdima}{\the\@tempdimb}%
+ }%
+ \setlength{\@tempdima}{1.728\@tempdimc}%
+ \setlength{\@tempdimb}{\@tempb\@tempdima}%
+ \edef\LARGE{%
+ \noexpand\@setfontsize\noexpand\LARGE
+ {\the\@tempdima}{\the\@tempdimb}%
+ }%
+ \setlength{\@tempdima}{2.074\@tempdimc}%
+ \setlength{\@tempdimb}{\@tempb\@tempdima}%
+ \edef\huge{%
+ \noexpand\@setfontsize\noexpand\huge
+ {\the\@tempdima}{\the\@tempdimb}%
+ }%
+ \setlength{\@tempdima}{2.488\@tempdimc}%
+ \setlength{\@tempdimb}{\@tempb\@tempdima}%
+ \edef\Huge{%
+ \noexpand\@setfontsize\noexpand\Huge
+ {\the\@tempdima}{\the\@tempdimb}%
+ }%
+ \normalsize
+ \setlength{\footnotesep}{.7\@tempdimc}%
+ \setlength{\skip\footins}{.9\@tempdimc \@plus .3333\@tempdimc \@minus
+ .6\@tempdimc}%
+ \setlength{\floatsep}{\@tempdimc \@plus .1667\@tempdimc \@minus
+ .3333\@tempdimc}%
+ \setlength{\textfloatsep}{1.6667\@tempdimc \@plus .1667\@tempdimc \@minus
+ .3333\@tempdimc}%
+ \setlength{\intextsep}{\@tempb\@tempdimc \@plus .3333\@tempdimc \@minus
+ .3333\@tempdimc}%
+ \setlength{\dblfloatsep}{\@tempb\@tempdimc \@plus .1667\@tempdimc \@minus
+ .3333\@tempdimc}%
+ \setlength{\dbltextfloatsep}{\textfloatsep}%
+ \setlength{\@fptop}{0\p@ \@plus 1fil}%
+ \setlength{\@fpsep}{.8333\@tempdimc \@plus 2fil}%
+ \setlength{\@fpbot}{\@fptop}%
+ \setlength{\@dblfptop}{0\p@ \@plus 1fil}%
+ \setlength{\@dblfpsep}{.8333\@tempdimc \@plus 2fil}%
+ \setlength{\@dblfpbot}{\@fptop}%
+ \setlength{\partopsep}{.25\@tempdimc \@plus .16667\@tempdimc \@minus
+ .16667\@tempdimc}%
+ \setlength{\topsep}{.8333\@tempdimc \@plus .3333\@tempdimc \@minus
+ .5\@tempdimc}%
+ \setlength{\parsep}{.4167\@tempdimc \@plus .2083\@tempdimc \@minus \p@}%
+ \@tempswafalse
+ \begingroup
+ \def\@list@extra{\aftergroup\@tempswatrue}%
+ \csname @listi\endcsname
+ \endgroup
+ \edef\@listi{\leftmargin\leftmargini
+ \topsep \the\topsep
+ \parsep \the\parsep
+ \itemsep \parsep
+ \if@tempswa\noexpand\@list@extra\fi
+ }%
+ \let\@listI\@listi
+ \setlength{\topsep}{.75\@tempdimc \@plus .25\@tempdimc \@minus
+ .41667\@tempdimc}%
+ \setlength{\parsep}{.375\@tempdimc \@plus .16667\@tempdimc \@minus \p@}%
+ \@tempswafalse
+ \begingroup
+ \def\@list@extra{\aftergroup\@tempswatrue}%
+ \csname @listi\endcsname
+ \endgroup
+ \edef\@listi@small{\leftmargin\leftmargini
+ \topsep \the\topsep
+ \parsep \the\parsep
+ \itemsep \parsep
+ \if@tempswa\noexpand\@list@extra\fi
+ }%
+ \setlength{\topsep}{.5\@tempdimc \@plus .16667\@tempdimc \@minus
+ .16667\@tempdimc}%
+ \setlength{\parsep}{.25\@tempdimc \@plus .16667\@tempdimc \@minus \p@}%
+ \@tempswafalse
+ \begingroup
+ \def\@list@extra{\aftergroup\@tempswatrue}%
+ \csname @listi\endcsname
+ \endgroup
+ \edef\@listi@footnotesize{\leftmargin\leftmargini
+ \topsep \the\topsep
+ \parsep \the\parsep
+ \itemsep \parsep
+ \if@tempswa\noexpand\@list@extra\fi
+ }%
+ \setlength{\topsep}{.4167\@tempdimc \@plus .2083\@tempdimc \@minus \p@}%
+ \setlength{\parsep}{.2083\@tempdimc \@plus \p@ \@minus \p@}%
+ \@tempswafalse
+ \begingroup
+ \def\@list@extra{\aftergroup\@tempswatrue}%
+ \csname @listii\endcsname
+ \endgroup
+ \edef\@listii{\leftmargin\leftmarginii
+ \labelwidth=\dimexpr \leftmargin-\labelsep
+ \topsep \the\topsep
+ \parsep \the\parsep
+ \itemsep \parsep
+ \if@tempswa\noexpand\@list@extra\fi
+ }%
+ \setlength{\topsep}{.2083\@tempdimc \@plus \p@ \@minus \p@}%
+ \setlength{\parsep}{\p@ \@plus\z@ \@minus\p@}%
+ \@tempswafalse
+ \begingroup
+ \def\@list@extra{\aftergroup\@tempswatrue}%
+ \csname @listiii\endcsname
+ \endgroup
+ \edef\@listiii{\leftmargin\leftmarginiii
+ \labelwidth=\dimexpr \leftmargin-\labelsep
+ \topsep \the\topsep
+ \parsep \z@
+ \partopsep \the\parsep
+ \itemsep \topsep
+ \if@tempswa\noexpand\@list@extra\fi
+ }%
+ \@tempswafalse
+ \begingroup
+ \def\@list@extra{\aftergroup\@tempswatrue}%
+ \csname @listiv\endcsname
+ \endgroup
+ \def\@listiv{\leftmargin\leftmarginiv
+ \labelwidth=\dimexpr \leftmargin-\labelsep
+ \if@tempswa\noexpand\@list@extra\fi
+ }%
+ \@tempswafalse
+ \begingroup
+ \def\@list@extra{\aftergroup\@tempswatrue}%
+ \csname @listv\endcsname
+ \endgroup
+ \def\@listv{\leftmargin\leftmarginv
+ \labelwidth=\dimexpr \leftmargin-\labelsep
+ \if@tempswa\noexpand\@list@extra\fi
+ }%
+ \@tempswafalse
+ \begingroup
+ \def\@list@extra{\aftergroup\@tempswatrue}%
+ \csname @listvi\endcsname
+ \endgroup
+ \def\@listvi{\leftmargin\leftmarginvi
+ \labelwidth=\dimexpr \leftmargin-\labelsep
+ \if@tempswa\noexpand\@list@extra\fi
+ }%
+ \@listi
+ \setlength{\@tempdimb}{\@tempb\@tempdima}%
+ \setlength{\@tempdima}{\dimexpr \@tempdimb-\@tempdimc}%
+ \setlength\intextsep{\@tempdimb \@plus.2\@tempdima \@minus.2\@tempdima}%
+ \setlength\dblfloatsep\intextsep
+ \setlength\partopsep{.2\@tempdimc \@plus.1\@tempdimc \@minus.1\@tempdimc}%
+ }%
+}
+\newcommand*{\setkomafont}[2]{%
+ \@ifundefined{scr@fnt@#1}{%
+ \@ifundefined{scr@fnt@instead@#1}{%
+ \PackageError{scrextend}{%
+ font of element `#1' can't be set}{%
+ You've told me to redefine the font selection of the
+ element,\MessageBreak%
+ but either no such element is known by
+ KOMA-Script\MessageBreak%
+ or the element does not use a special font selection%
+ }%
+ }{%
+ \PackageInfo{scrextend}{%
+ You've told me to redefine the font selection of the\MessageBreak
+ element `#1' that is an alias of element\MessageBreak
+ `\csname scr@fnt@instead@#1\endcsname'%
+ }%
+ \expandafter\setkomafont\expandafter{%
+ \csname scr@fnt@instead@#1\endcsname}{#2}%
+ }%
+ }{%
+ \expandafter\expandafter\expandafter\def\csname scr@fnt@#1\endcsname{#2}%
+ }%
+ \@ifundefined{scr@fnt@wrn@#1}{}{%
+ \PackageWarning{scrextend}{%
+ \csname scr@fnt@wrn@#1\endcsname{#1}%
+ }%
+ }%
+}
+\newcommand*{\addtokomafont}[2]{%
+ \@ifundefined{scr@fnt@#1}{%
+ \@ifundefined{scr@fnt@instead@#1}{%
+ \PackageError{scrextend}{%
+ font of element `#1' can't be extended%
+ }{%
+ You've told me to extend the font selection of the
+ element,\MessageBreak
+ but either no such element is known by
+ KOMA-Script\MessageBreak
+ or the element does not use a special font selection%
+ }%
+ }{%
+ \PackageInfo{scrextend}{%
+ You've told me to extend the font selection of the\MessageBreak
+ element `#1' that is an alias of element\MessageBreak
+ `\csname scr@fnt@instead@#1\endcsname'%
+ }%
+ \expandafter\addtokomafont\expandafter{%
+ \csname scr@fnt@instead@#1\endcsname}{#2}%
+ }%
+ }{%
+ \expandafter\expandafter\expandafter\l@addto@macro
+ \csname scr@fnt@#1\endcsname{#2}%
+ }%
+ \@ifundefined{scr@fnt@wrn@#1}{}{%
+ \PackageWarning{scrextend}{%
+ \csname scr@fnt@wrn@#1\endcsname{#1}%
+ }%
+ }%
+}
+\newcommand*{\usekomafont}[1]{%
+ \@ifundefined{scr@fnt@#1}{%
+ \@ifundefined{scr@fnt@instead@#1}{%
+ \PackageError{scrextend}{%
+ font of element `#1' can't be used%
+ }{%
+ You've told me to use the font selection of the
+ element,\MessageBreak
+ but either no such element is known by
+ KOMA-Script\MessageBreak
+ or the element does not use a special font selection%
+ }%
+ }{%
+ \PackageInfo{scrextend}{%
+ You've told me to use the font selection of the
+ element\MessageBreak
+ `#1' that is an alias of element `\csname
+ scr@fnt@instead@#1\endcsname'\MessageBreak
+ }%
+ \expandafter\expandafter\expandafter\usekomafont
+ \expandafter\expandafter\expandafter{%
+ \csname scr@fnt@instead@#1\endcsname}%
+ }%
+ }{%
+ \@nameuse{scr@fnt@#1}%
+ }%
+}
+\newcommand*{\newkomafont}[3][\relax]{%
+ \expandafter\newcommand\expandafter*\csname @#2font\endcsname{#3}%
+ \expandafter\expandafter\expandafter\newcommand
+ \expandafter\expandafter\expandafter*%
+ \expandafter\csname scr@fnt@#2\expandafter\endcsname\expandafter{%
+ \csname @#2font\endcsname%
+ }%
+ \ifx\relax#1\relax\else
+ \expandafter\newcommand\expandafter*\csname scr@fnt@wrn@#2\endcsname{#1}%
+ \fi
+}
+\newcommand*{\aliaskomafont}[2]{%
+ \expandafter\newcommand\expandafter*\csname scr@fnt@instead@#1\endcsname{%
+ #2%
+ }%
+}
+%%% From File: scrktitl.dtx
+\scr@ext@activateable{title}{%
+\newcommand*{\@extratitle}{}%
+\newcommand{\extratitle}[1]{\gdef\@extratitle{%
+ ##1%
+}}%
+\newcommand*{\@titlehead}{}%
+\newcommand{\titlehead}[1]{\gdef\@titlehead{%
+ ##1%
+}}%
+\newcommand*{\@subject}{}%
+\newcommand*{\subject}[1]{\gdef\@subject{%
+ ##1%
+}}%
+\newcommand*{\subtitle}[1]{\gdef\@subtitle{%
+ ##1%
+}}%
+\newcommand*{\@subtitle}{}%
+\newcommand*{\@publishers}{}%
+\newcommand{\publishers}[1]{\gdef\@publishers{%
+ ##1%
+}}%
+\newcommand*{\@uppertitleback}{}%
+\newcommand{\uppertitleback}[1]{\gdef\@uppertitleback{%
+ ##1%
+}}%
+\newcommand*{\@lowertitleback}{}%
+\newcommand{\lowertitleback}[1]{\gdef\@lowertitleback{%
+ ##1%
+}}%
+\newcommand*{\@dedication}{}%
+\newcommand{\dedication}[1]{\gdef\@dedication{%
+ ##1%
+}}%
+\newcommand*{\next@tpage}{\clearpage\thispagestyle{empty}}%
+\let\maketitle\relax\let\@maketitle\relax
+\if@titlepage
+ \newcommand*\maketitle[1][1]{%
+ \begin{titlepage}
+ \setcounter{page}{%
+ ##1%
+ }%
+ \let\footnotesize\small
+ \let\footnoterule\relax
+ \let\footnote\thanks
+ \renewcommand*\thefootnote{\@fnsymbol\c@footnote}%
+ \let\@oldmakefnmark\@makefnmark
+ \renewcommand*{\@makefnmark}{\rlap\@oldmakefnmark}%
+ \ifx\@extratitle\@empty \else
+ \noindent\@extratitle\next@tpage\cleardoubleemptypage
+ \thispagestyle{empty}%
+ \fi
+ \parskip\z@ \parindent\z@ \parfillskip\z@\@plus 1fil
+ \ifx\@titlehead\@empty \else
+ \begin{minipage}[t]{\textwidth}%
+ \@titlehead
+ \end{minipage}\par
+ \fi
+ \null\vfill
+ \begin{center}
+ \ifx\@subject\@empty \else
+ {\subject@font \@subject \par}%
+ \vskip 3em
+ \fi
+ {\titlefont\huge \@title\par}%
+ \vskip 1em
+ {\ifx\@subtitle\@empty\else\usekomafont{subtitle}\@subtitle\par\fi}%
+ \vskip 2em
+ {\Large \lineskip 0.75em
+ \begin{tabular}[t]{c}
+ \@author
+ \end{tabular}\par
+ }%
+ \vskip 1.5em
+ {\Large \@date \par}%
+ \vskip \z@ \@plus3fill
+ {\Large \@publishers \par}%
+ \vskip 3em
+ \end{center}\par
+ \@thanks
+ \vfill\null
+ \if@twoside\next@tpage
+ \begin{minipage}[t]{\textwidth}
+ \@uppertitleback
+ \end{minipage}\par
+ \vfill
+ \begin{minipage}[b]{\textwidth}
+ \@lowertitleback
+ \end{minipage}
+ \fi
+ \ifx\@dedication\@empty \else
+ \next@tpage\null\vfill
+ {\centering \Large \@dedication \par}%
+ \vskip \z@ \@plus3fill
+ \if@twoside \next@tpage\cleardoubleemptypage \fi
+ \fi
+ \end{titlepage}
+ \setcounter{footnote}{0}%
+ \global\let\thanks\relax
+ \global\let\maketitle\relax
+ \global\let\@thanks\@empty
+ \global\let\@author\@empty
+ \global\let\@date\@empty
+ \global\let\@title\@empty
+ \global\let\@subtitle\@empty
+ \global\let\@extratitle\@empty
+ \global\let\@titlehead\@empty
+ \global\let\@subject\@empty
+ \global\let\@publishers\@empty
+ \global\let\@uppertitleback\@empty
+ \global\let\@lowertitleback\@empty
+ \global\let\@dedication\@empty
+ \global\let\author\relax
+ \global\let\title\relax
+ \global\let\extratitle\relax
+ \global\let\titlehead\relax
+ \global\let\subject\relax
+ \global\let\publishers\relax
+ \global\let\uppertitleback\relax
+ \global\let\lowertitleback\relax
+ \global\let\dedication\relax
+ \global\let\date\relax
+ \global\let\and\relax
+ }%
+\else
+ \newcommand*\maketitle[1][1]{\par
+ \@tempcnta=%
+ ##1%
+ \relax\ifnum\@tempcnta=1\else
+ \PackageWarning{scrextend}{%
+ Optional argument of \string\maketitle\space ignored
+ at\MessageBreak
+ notitlepage-mode%
+ }%
+ \fi
+ \begingroup
+ \renewcommand*\thefootnote{\@fnsymbol\c@footnote}%
+ \let\@oldmakefnmark\@makefnmark
+ \renewcommand*{\@makefnmark}{\rlap\@oldmakefnmark}
+ \if@twocolumn
+ \ifnum \col@number=\@ne
+ \@maketitle
+ \else
+ \twocolumn[\@maketitle]%
+ \fi
+ \else
+ \newpage
+ \global\@topnum\z@
+ \@maketitle
+ \fi
+ \thispagestyle{\titlepagestyle}\@thanks
+ \endgroup
+ \setcounter{footnote}{0}%
+ \let\thanks\relax
+ \let\maketitle\relax
+ \let\@maketitle\relax
+ \global\let\@thanks\@empty
+ \global\let\@author\@empty
+ \global\let\@date\@empty
+ \global\let\@title\@empty
+ \global\let\@subtitle\@empty
+ \global\let\@extratitle\@empty
+ \global\let\@titlehead\@empty
+ \global\let\@subject\@empty
+ \global\let\@publishers\@empty
+ \global\let\@uppertitleback\@empty
+ \global\let\@lowertitleback\@empty
+ \global\let\@dedication\@empty
+ \global\let\author\relax
+ \global\let\title\relax
+ \global\let\extratitle\relax
+ \global\let\titlehead\relax
+ \global\let\subject\relax
+ \global\let\publishers\relax
+ \global\let\uppertitleback\relax
+ \global\let\lowertitleback\relax
+ \global\let\dedication\relax
+ \global\let\date\relax
+ \global\let\and\relax
+ }%
+\fi
+\newcommand*{\@maketitle}{%
+ \clearpage
+ \let\footnote\thanks
+ \ifx\@extratitle\@empty \else
+ \noindent\@extratitle \next@tpage \if@twoside \null\next@tpage \fi
+ \fi
+ \parskip\z@ \parindent\z@ \parfillskip\z@\@plus 1fil
+ \ifx\@titlehead\@empty \else
+ \begin{minipage}[t]{\textwidth}
+ \@titlehead
+ \end{minipage}\par
+ \fi
+ \null
+ \vskip 2em%
+ \begin{center}%
+ \ifx\@subject\@empty \else
+ {\subject@font \@subject \par}
+ \vskip 1.5em
+ \fi
+ {\titlefont\huge \@title \par}%
+ \vskip .5em
+ {\ifx\@subtitle\@empty\else\usekomafont{subtitle}\@subtitle\par\fi}%
+ \vskip 1em
+ {\Large
+ \lineskip .5em%
+ \begin{tabular}[t]{c}
+ \@author
+ \end{tabular}\par
+ }%
+ \vskip 1em%
+ {\Large \@date \par}%
+ \vskip \z@ \@plus 1em
+ {\Large \@publishers \par}
+ \ifx\@dedication\@empty \else
+ \vskip 2em
+ {\Large \@dedication \par}
+ \fi
+ \end{center}%
+ \par
+ \vskip 2em
+}%
+\scr@ifundefinedorrelax{titlepage}{%
+\newenvironment{titlepage}{%
+ \if@twocolumn
+ \@restonecoltrue\onecolumn
+ \else
+ \@restonecolfalse\newpage
+ \fi
+ \thispagestyle{empty}%
+ \if@compatibility
+ \setcounter{page}{0}%
+ \fi
+}{%
+ \if@restonecol\twocolumn \else \newpage \fi
+}%
+}{}%
+}\csname scr@ext@immediate@title\endcsname
+\newcommand*\titlefont{\sectfont}%
+\newcommand*{\subject@font}{\normalfont\normalcolor\bfseries\Large}%
+\newkomafont{subtitle}{\usekomafont{title}\large}%
+\newcommand*{\scr@fnt@title}{\titlefont}%
+\newcommand*{\scr@fnt@subject}{\subject@font}%
+%%% From File: scrksect.dtx
+\newcommand*\sectfont{\normalcolor\sffamily\bfseries}
+\newcommand*{\scr@fnt@disposition}{\sectfont}
+\aliaskomafont{sectioning}{disposition}
+%%% From File: scrkmisc.dtx
+\scr@ifundefinedorrelax{if@restonecol}{%
+ \expandafter\newif\csname if@restonecol\endcsname
+ \@restonecolfalse
+}{}
+\newcommand{\dictum}[2][]{\par%
+ \begingroup
+ \raggeddictum\parbox{\dictumwidth}{%
+ {\@dictumfont{\raggeddictumtext #2\strut\par}%
+ \def\@tempa{#1}\ifx\@tempa\@empty\else%
+ {\raggeddictumtext\vskip-1ex\hrulefill\par}%
+ \raggeddictumauthor\@dictumauthorfont\dictumauthorformat{#1}%
+ \strut\par%
+ \fi%
+ }%
+ }\par%
+ \endgroup
+}
+\newcommand*{\dictumwidth}{.3333\textwidth}
+\newcommand*{\raggeddictum}{\raggedleft}
+\newcommand*{\dictumauthorformat}[1]{(#1)}
+\newcommand*{\raggeddictumtext}{\raggedright}
+\newcommand*{\raggeddictumauthor}{\raggedleft}
+\newkomafont{dictum}{\normalfont\normalcolor\sffamily\small}
+\newkomafont{dictumauthor}{\itshape}
+\aliaskomafont{dictumtext}{dictum}
+\newcommand*{\new@tpo@label}{\@newl@bel{tpo}}
+\newcommand*{\scr@tpo}{0}
+\newcommand*{\is@thispageodd}{%
+ \@bsphack
+ \begingroup
+ \@tempcnta=\scr@tpo
+ \advance\@tempcnta by\@ne
+ \xdef\scr@tpo{\the\@tempcnta}%
+ \protected@write\@auxout{\let\arabic\relax}{%
+ \string\new@tpo@label{\scr@tpo}{\arabic{page}}}%
+ \expandafter\ifx\csname tpo@\scr@tpo\endcsname\relax
+ \protect\G@refundefinedtrue
+ \PackageWarning{scrextend}{%
+ odd/even page label number \scr@tpo\space undefined}%
+ \edef\@tempa{\the\value{page}}%
+ \else
+ \edef\@tempa{\csname tpo@\scr@tpo\endcsname}%
+ \fi
+ \ifodd\number\@tempa
+ \aftergroup\thispagewasoddtrue
+ \else
+ \aftergroup\thispagewasoddfalse
+ \fi
+ \endgroup
+ \@esphack
+}
+\newif\ifthispagewasodd
+\newcommand{\ifthispageodd}{%
+ \is@thispageodd
+ \ifthispagewasodd
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi
+}
+\DeclareRobustCommand*\textsubscript[1]{%
+ \@textsubscript{\selectfont#1}%
+}
+\newcommand{\@textsubscript}[1]{%
+ {\m@th\ensuremath{_{\mbox{\fontsize\sf@size\z@#1}}}}%
+}
+%%% From File: scrkpage.dtx
+\newcommand*{\titlepagestyle}{plain}
+%%% From File: scrkfloa.dtx
+\newcommand\marginline[1]{%
+ \marginpar[\raggedleft{#1}]{\raggedright #1}%
+}
+%%% From File: scrkftn.dtx
+\newcommand\deffootnote[4][]{%
+ \long\def\@makefntext##1{%
+ \setlength{\@tempdimc}{#3}%
+ \def\@tempa{#1}\ifx\@tempa\@empty
+ \@setpar{\@@par
+ \@tempdima = \hsize
+ \addtolength{\@tempdima}{-#2}%
+ \parshape \@ne #2 \@tempdima}%
+ \else
+ \addtolength{\@tempdimc}{#2}%
+ \addtolength{\@tempdimc}{-#1}%
+ \@setpar{\@@par
+ \@tempdima = \hsize
+ \addtolength{\@tempdima}{-#1}%
+ \@tempdimb = \hsize
+ \addtolength{\@tempdimb}{-#2}%
+ \parshape \tw@ #1 \@tempdima #2 \@tempdimb
+ }%
+ \fi
+ \par
+ \parindent\@tempdimc\noindent
+ \ftn@font\hbox to \z@{\hss\@@makefnmark}##1%
+ }%
+ \def\@@makefnmark{\hbox{\ftnm@font{#4}}}%
+}
+\newcommand*{\ftn@font}{\normalfont}
+\newcommand*{\scr@fnt@footnote}{\ftn@font}
+\newcommand*{\ftnm@font}{}
+\newcommand*{\scr@fnt@footnotenumber}{\ftnm@font}
+\newcommand*{\scr@fnt@footnotelabel}{\ftnm@font}
+\newcommand*{\scr@fnt@instead@footnotetext}{footnote}
+\newcommand*\deffootnotemark[1]{%
+ \def\@makefnmark{\hbox{\ftntm@font{#1}}}%
+}
+\newcommand*{\ftntm@font}{}
+\newcommand*{\scr@fnt@footnotereference}{\ftntm@font}
+\newcommand*{\scr@fnt@footnoteref}{\ftntm@font}
+\providecommand*{\FN@mf@check}{%
+ \ifdim\lastkern=\multiplefootnotemarker\relax
+ \edef\@x@sf{\the\spacefactor}%
+ \unkern\multiplefootnoteseparator
+ \spacefactor\@x@sf\relax
+ \fi
+}
+\newcommand*{\scr@mf@prepare}{%
+ \kern-\multiplefootnotemarker
+ \kern\multiplefootnotemarker\relax
+}
+\@ifundefined{FN@mf@prepare}{}{}
+\newcommand*{\scr@saved@footnotetext}{}
+\let\scr@saved@footnotetext\@footnotetext
+\renewcommand*{\@footnotetext}[1]{%
+ \scr@saved@footnotetext{#1}%
+ \csname FN@mf@prepare\endcsname
+}
+\BeforePackage{footmisc}{%
+ \ifx\@footnotemark\scr@footnotemark
+ \let\@footnotemark\scr@saved@footnotemark
+ \fi
+ \let\@footnotetext\scr@saved@footnotetext
+}
+\newcommand*{\multiplefootnoteseparator}{%
+ \begingroup\let\thefootnotemark\multfootsep\@makefnmark\endgroup
+}
+\providecommand*{\multfootsep}{,}
+\newcommand*{\multiplefootnotemarker}{3sp}
+\providecommand*{\thefootnotemark}{\@thefnmark}
+\providecommand*{\footref}[1]{%
+ \begingroup
+ \unrestored@protected@xdef\@thefnmark{\ref{#1}}%
+ \endgroup
+ \@footnotemark
+}
+%%% From File: scrklist.dtx
+\newenvironment{labeling}[2][]{%
+ \def\sc@septext{#1}%
+ \list{}{\settowidth{\labelwidth}{#2#1}%
+ \leftmargin\labelwidth \advance\leftmargin by \labelsep
+ \let\makelabel\labelinglabel}%
+}{%
+ \endlist
+}
+\newcommand\labelinglabel[1]{#1\hfil\sc@septext}
+\newenvironment{addmargin}{%
+ \@tempswafalse\@addmargin
+}{%
+ \advance\@listdepth\@ne
+ \endlist
+}
+\newenvironment{addmargin*}{%
+ \@tempswafalse
+ \if@twoside\ifthispageodd{}{\@tempswatrue}\fi
+ \@addmargin
+}{%
+ \advance\@listdepth\@ne
+ \endlist
+}
+\newcommand*{\@addmargin}[2][\@tempa]{%
+ \list{}{%
+ \if@tempswa
+ \def\@tempa{\leftmargin}%
+ \setlength{\leftmargin}{#2}%
+ \setlength{\rightmargin}{#1}%
+ \else
+ \def\@tempa{\rightmargin}%
+ \setlength{\rightmargin}{#2}%
+ \setlength{\leftmargin}{#1}%
+ \fi
+ \setlength{\listparindent}{\parindent}%
+ \setlength{\itemsep}{\parskip}%
+ \setlength{\itemindent}{\z@}%
+ \setlength{\topsep}{\z@}%
+ \setlength{\parsep}{\parskip}%
+ \setlength{\partopsep}{\parskip}%
+ \let\makelabel\@gobble
+ \setlength{\labelwidth}{\z@}%
+ \advance\@listdepth\m@ne
+ }%
+ \item\relax%
+}
+%%% From File: scrlogo.dtx
+\@ifundefined{KOMAScript}{%
+ \DeclareRobustCommand{\KOMAScript}{\textsf{K\kern.05em O\kern.05em%
+ M\kern.05em A\kern.1em-\kern.1em Script}}}{}
+\endinput
+%%
+%% End of file `scrextend.sty'.
diff --git a/Master/texmf-dist/tex/latex/koma-script/scrjura.sty b/Master/texmf-dist/tex/latex/koma-script/scrjura.sty
new file mode 100644
index 00000000000..9c944df757d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/koma-script/scrjura.sty
@@ -0,0 +1,455 @@
+%%
+%% This is file `scrjura.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% scrjura.dtx (with options: `package')
+%% scrlogo.dtx (with options: `logo')
+%%
+%% Copyright (c) 2007-2008
+%% Markus Kohm and any individual authors listed elsewhere in this file.
+%%
+%% This file was generated from file(s) of the KOMA-Script bundle.
+%% ---------------------------------------------------------------
+%%
+%% This work may be distributed and/or modified under the conditions of
+%% the LaTeX Project Public License, version 1.3b of the license.
+%% The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3b or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later and of this work.
+%%
+%% This work has the LPPL maintenance status "author-maintained".
+%%
+%% The Current Maintainer and author of this work is Markus Kohm.
+%%
+%% This file may only be distributed together with the files
+%% `scrlogo.dtx' and `scrjura.dtx'. You may however distribute the files
+%% `scrlogo.dtx' and `scrjura.dtx' without this file.
+%% See also `scrjura.dtx' for additional information.
+%%
+%% If this file is a beta version, you are not allowed to distribute it.
+%%
+%% Currently there is only a short german manual at `scrjura.dtx', that
+%% should also be found as `scrjura.pdf'.
+%%
+%% The KOMA-Script bundle (but maybe not this file) was based upon the
+%% LaTeX2.09 Script family created by Frank Neukam 1993 and the LaTeX2e
+%% standard classes created by The LaTeX3 Project 1994-1996.
+%%
+%%% From File: scrjura.dtx
+\NeedsTeXFormat{LaTeX2e}[1995/06/01]
+\ProvidesPackage{scrjura}
+ [2008/01/23 v0.4b alpha
+ (package)%
+ ]
+
+\@ifpackageloaded{hyperref}{%
+ \PackageError{scrjura}{Package hyperref already loaded}{%
+ If you want to use package scrjura with package hyperref, you have to
+ use\MessageBreak
+ package scrjura before package hyperref.\MessageBreak
+ To solve the problem, you just should move the loading of package
+ hyperref\MessageBreak
+ behind the loading of package scrjura.}%
+}
+\DeclareOption{contract}{%
+ \g@addto@macro\document\contract%
+}
+\newif\if@juratotoc
+\DeclareOption{juratotoc}{\@juratotoctrue}
+\newcommand*{\Paragraphmark}[1]{}
+\DeclareOption{markright}{%
+ \renewcommand*{\Paragraphmark}[1]{\markright{#1}}%
+}
+\DeclareOption{markboth}{%
+ \renewcommand*{\Paragraphmark}[1]{\markboth{#1}{#1}}%
+}
+\DeclareOption{parcitename}{%
+ \AtEndOfPackage{\renewcommand*{\parciteformat}[1]{\parname~#1}}%
+}
+\DeclareOption{sentencecitename}{%
+ \AtEndOfPackage{\renewcommand*{\sentenceciteformat}[1]{\sentencename~#1}}%
+}
+\ProcessOptions\relax
+\RequirePackage{keyval}
+\newcommand*{\contract}{%
+ \renewcommand*{\contract}{%
+ \contract@nest@error{contract}%
+ }%
+ \let\@doendpe\contract@doendpe
+ \let\Paragraph\contract@paragraph
+ \let\c@Paragraph\c@contractParagraph
+ \edef\cl@Paragraph{\cl@Paragraph\cl@contractParagraph}%
+ \let\SubParagraph\contract@subparagraph
+ \let\c@SubParagraph\c@contractSubParagraph
+ \edef\cl@SubParagraph{\cl@SubParagraph\cl@contractSubParagraph}%
+ \let\Par\contract@everypar
+ \let\Sentence\contract@sentence
+}
+\let\if@jura@skiphyperref\iftrue
+\let\cl@Paragraph\@empty
+\let\cl@SubParagraph\@empty
+\newcounter{contractParagraph}
+\renewcommand*{\thecontractParagraph}{%
+ {\S~\arabic{contractParagraph}}}
+\newcounter{contractSubParagraph}
+\@addtoreset{SubParagraph}{Paragraph}
+\renewcommand*{\thecontractSubParagraph}{%
+ {\theParagraph\alph{contractSubParagraph}}}
+\define@key{contract}{title}{%
+ \def\contract@title{#1}%
+ \ifx\contract@entry\relax\def\contract@entry{\contract@title}\fi
+ \ifx\contract@head\relax\def\contract@head{\contract@title}\fi
+}
+\define@key{contract}{entry}{\def\contract@entry{#1}}
+\define@key{contract}{noentry}[]{\let\contract@entry\relax}
+\define@key{contract}{head}{\def\contract@head{#1}}
+\define@key{contract}{nohead}[]{\let\contract@head\relax}
+\define@key{contract}{number}{\def\contract@number{#1}}
+\newcommand*{\contract@preskip}{2\baselineskip}
+\newcommand*{\contract@postskip}{\baselineskip}
+\define@key{contract}{preskip}{\def\contract@preskip{#1}}
+\define@key{contract}{postskip}{\def\contract@postskip{#1}}
+\newif\ifcontract@dummy
+\define@key{contract}{dummy}[true]{\csname contract@dummy#1\endcsname}
+\newcommand*{\contract@paragraph@font}{\sffamily\bfseries\large\@hangfrom}
+\newcounter{@AbsParagraph}
+\newcommand*{\theH@AbsParagraph}{P-\arabic{@AbsParagraph}}
+\newcommand*{\theHParagraph}{\theH@AbsParagraph}
+\newcommand*{\theHSubParagraph}{\theH@AbsParagraph}
+\newcommand*{\contract@paragraph}[1]{%
+ \ManualPar\parnumbertrue
+ \let\contract@title\relax
+ \let\contract@entry\relax
+ \let\contract@head\relax
+ \let\contract@number\relax
+ \contract@dummyfalse
+ \ifx\relax#1\relax\else\setkeys{contract}{#1}\fi
+ \ifcontract@dummy\else
+ \@afterindentfalse
+ \addvspace{\contract@preskip}%
+ \fi
+ \ifx\contract@number\relax
+ \let\p@Paragraph\@empty
+ \let\theParagraph\thecontractParagraph
+ \refstepcounter{Paragraph}%
+ \else
+ \begingroup
+ \let\@elt\@stpelt
+ \cl@Paragraph
+ \endgroup
+ \protected@edef\theParagraph{\S~\contract@number}%
+ \protected@edef\@currentlabel{\theParagraph}%
+ \fi
+ \stepcounter{@AbsParagraph}%
+ \begingroup\expandafter\expandafter\expandafter\endgroup
+ \expandafter\ifx\csname if@skiphyperref\endcsname\relax
+ \else
+ \expandafter\let\csname if@jura@skiphyperref\expandafter\endcsname
+ \csname if@skiphyperref\endcsname
+ \fi
+ \if@jura@skiphyperref\else
+ \hyper@refstepcounter{@AbsParagraph}%
+ \typeout{absolute Nummer: \the@AbsParagraph^^JLabel: `\@currentHref'}%
+ \fi
+ \let\theSubParagraph\theParagraph
+ \ifcontract@dummy\else
+ \begingroup
+ \contract@paragraph@font \theParagraph
+ \ifx\contract@title\relax\else\enskip\contract@title\fi
+ \endgroup
+ \ifx\contract@entry\relax\else
+ \addcontentsline{toc}{cpar}{%
+ \protect\numberline{\theParagraph}\contract@entry
+ }%
+ \addcontentsline{cpa}{cpar}{%
+ \protect\numberline{\theParagraph}\contract@entry
+ }%
+ \fi
+ \ifx\contract@head\relax\else
+ \expandafter\Paragraphmark\expandafter{%
+ \expandafter\theSubParagraph\expandafter\enskip\contract@head}%
+ \fi
+ \par\nobreak\vskip\contract@postskip
+ \jura@afterheading{contract}%
+ \fi
+}
+\newcommand*{\contract@subparagraph}[1]{%
+ \ManualPar\parnumbertrue
+ \let\contract@title\relax
+ \let\contract@entry\relax
+ \let\contract@head\relax
+ \let\contract@number\relax
+ \contract@dummyfalse
+ \ifx\relax#1\relax\else\setkeys{contract}{#1}\fi
+ \ifcontract@dummy\else
+ \@afterindentfalse
+ \vskip\contract@preskip
+ \fi
+ \ifx\contract@number\relax
+ \let\p@SubParagraph\@empty
+ \let\theSubParagraph\thecontractSubParagraph
+ \refstepcounter{SubParagraph}%
+ \else
+ \begingroup
+ \let\@elt\@stpelt
+ \cl@SubParagraph
+ \endgroup
+ \protected@edef\theSubParagraph{\theParagraph\contract@number}%
+ \protected@edef\@currentlabel{\theSubParagraph}%
+ \fi
+ \stepcounter{@AbsParagraph}%
+ \begingroup\expandafter\expandafter\expandafter\endgroup
+ \expandafter\ifx\csname if@skiphyperref\endcsname\relax
+ \else
+ \expandafter\let\csname if@jura@skiphyperref\expandafter\endcsname
+ \csname if@skiphyperref\endcsname
+ \fi
+ \if@jura@skiphyperref\else
+ \hyper@refstepcounter{@AbsParagraph}%
+ \typeout{absolute Nummer: \the@AbsParagraph^^JLabel: `\@currentHref'}%
+ \fi
+ \ifcontract@dummy\else
+ \begingroup
+ \contract@paragraph@font \theSubParagraph
+ \ifx\contract@title\relax\else\enskip\contract@title\fi
+ \endgroup
+ \ifx\contract@entry\relax\else
+ \addcontentsline{toc}{cpar}{%
+ \protect\numberline{\theSubParagraph}\contract@entry
+ }%
+ \addcontentsline{cpa}{cpar}{%
+ \protect\numberline{\theSubParagraph}\contract@entry
+ }%
+ \fi
+ \ifx\contract@head\relax\else
+ \expandafter\Paragraphmark\expandafter{%
+ \expandafter\theSubParagraph\expandafter\enskip\contract@head}%
+ \fi
+ \par\nobreak\vskip\contract@postskip
+ \jura@afterheading{contract}%
+ \fi
+}
+\newcommand*{\AutoPar}{%
+ \expandafter\let\expandafter\jura@everypar
+ \csname \jura@type @everypar\endcsname
+}
+\newcommand*{\ManualPar}{%
+ \let\jura@everypar\relax
+}
+\newcommand*{\jura@afterheading}[1]{%
+ \@nobreaktrue
+ \everypar{%
+ \if@nobreak
+ \@nobreakfalse
+ \clubpenalty \@M
+ \if@afterindent \else
+ {\setbox\z@\lastbox}%
+ \fi
+ \else
+ \clubpenalty \@clubpenalty
+ \everypar{%
+ \jura@everypar
+ }%
+ \fi
+ \jura@everypar
+ }%
+ \def\jura@type{#1}%
+ \AutoPar
+}
+\newcommand*{\jura@everypar}{}
+\CheckCommand*\@doendpe{\@endpetrue
+ \def\par{\@restorepar\everypar{}\par\@endpefalse}\everypar
+ {{\setbox\z@\lastbox}\everypar{}\@endpefalse}}
+\newcommand*{\contract@doendpe}{%
+ \@endpetrue
+ \def\par{%
+ \@restorepar\everypar{%
+ \csname jura@everypar\endcsname
+ }%
+ \par\@endpefalse
+ }%
+ \everypar{%
+ {\setbox\z@\lastbox}\everypar{%
+ \csname jura@everypar\endcsname
+ }%
+ \@endpefalse
+ }%
+}
+\newcommand*{\l@cpar}[2]{%
+ \if@juratotoc
+ \@dottedtocline{\value{juratoclevel}}{1.5em}{2em}{#1}{#2}%
+ \fi
+}
+\newcounter{juratoclevel}
+\setcounter{juratoclevel}{2}%
+\DeclareRobustCommand*{\jura@separator}[1]{#1}
+\newif\ifparnumber
+\newcounter{par}
+\renewcommand*{\thepar}{\arabic{par}}
+\newcommand*{\theHpar}{\theH@AbsParagraph-\Roman{par}}
+\newcommand*{\parformat}{(\thepar)}
+\renewcommand*\p@par{{\theSubParagraph\jura@separator{\nobreakspace}}}
+\@addtoreset{par}{Paragraph}
+\@addtoreset{par}{SubParagraph}
+\newcommand*{\contract@everypar}{%
+ \ifparnumber
+ \refstepcounter{par}%
+ \refstepcounter{sentence}%
+ \begingroup
+ \protected@write\@auxout{}{%
+ \string\newmaxpar{contractpars}{\theSubParagraph}{\arabic{par}}}%
+ \getmaxpar\@tempa{contractpars}{\theSubParagraph}%
+ \typeout{Stored max is \@tempa}%
+ \ifnum \@tempa>\@ne
+ \parformat\nobreakspace
+ \fi
+ \endgroup
+ \else
+ \setcounter{sentence}{0}\refstepcounter{sentence}%
+ \fi
+}
+\newcommand*{\refParagraph}[1]{%
+ \expandafter\ifx\csname r@#1\endcsname\relax
+ \ref{#1}%
+ \else
+ \begingroup
+ \expandafter\expandafter\expandafter\expandafter
+ \expandafter\expandafter\expandafter\def
+ \expandafter\expandafter\expandafter\expandafter
+ \expandafter\expandafter\expandafter\@tempb
+ \expandafter\expandafter\expandafter\expandafter
+ \expandafter\expandafter\expandafter{%
+ \expandafter\expandafter\expandafter\@gobble\csname r@#1\endcsname}%
+ \def\@tempc##1##2\@nil{##1}%
+ \let\jura@separator\@gobble
+ \protected@edef\@tempa{\expandafter\expandafter\expandafter\@tempc
+ \csname r@#1\endcsname\noexpand\@nil}%
+ \protected@edef\@tempa{\expandafter\expandafter\expandafter\@tempc
+ \@tempa\@nil}%
+ \let\@@protect\protect
+ \let\protect\noexpand
+ \expandafter\edef\csname r@#1\endcsname{{\@tempa}\@tempb}%
+ \let\protect\@@protect
+ \ref{#1}%
+ \endgroup
+ \fi
+}
+\newcommand*{\refPar}[1]{%
+ \expandafter\ifx\csname r@#1\endcsname\relax
+ \ref{#1}%
+ \else
+ \begingroup
+ \expandafter\expandafter\expandafter\expandafter
+ \expandafter\expandafter\expandafter\def
+ \expandafter\expandafter\expandafter\expandafter
+ \expandafter\expandafter\expandafter\@tempb
+ \expandafter\expandafter\expandafter\expandafter
+ \expandafter\expandafter\expandafter{%
+ \expandafter\expandafter\expandafter\@gobble\csname r@#1\endcsname}%
+ \def\@tempc##1##2\@nil{##1}%
+ \let\jura@separator\@gobble
+ \protected@edef\@tempa{\expandafter\expandafter\expandafter\@tempc
+ \csname r@#1\endcsname\noexpand\@nil}%
+ \def\@tempc##1##2##3\@nil{##2}%
+ \protected@edef\@tempa{\expandafter\expandafter\expandafter\@tempc
+ \@tempa{%
+ \protect\G@refundefinedtrue
+ \nfss@text{\reset@font\bfseries ??}%
+ \@latex@warning{Reference `#1' on page \thepage \space
+ with undefined par number}%
+ }\noexpand\@nil}%
+ \let\@@protect\protect
+ \let\protect\noexpand
+ \expandafter\edef\csname r@#1\endcsname{{\@tempa}\@tempb}%
+ \let\protect\@@protect
+ \ref{#1}%
+ \endgroup
+ \fi
+}
+\newcommand*{\refSentence}[1]{%
+ \expandafter\ifx\csname r@#1\endcsname\relax
+ \ref{#1}%
+ \else
+ \begingroup
+ \expandafter\expandafter\expandafter\expandafter
+ \expandafter\expandafter\expandafter\def
+ \expandafter\expandafter\expandafter\expandafter
+ \expandafter\expandafter\expandafter\@tempb
+ \expandafter\expandafter\expandafter\expandafter
+ \expandafter\expandafter\expandafter{%
+ \expandafter\expandafter\expandafter\@gobble\csname r@#1\endcsname}%
+ \def\@tempc##1##2\@nil{##1}%
+ \let\jura@separator\@gobble
+ \protected@edef\@tempa{\expandafter\expandafter\expandafter\@tempc
+ \csname r@#1\endcsname\noexpand\@nil}%
+ \def\@tempc##1##2##3##4\@nil{##3}%
+ \protected@edef\@tempa{\expandafter\expandafter\expandafter\@tempc
+ \@tempa{}{%
+ \protect\G@refundefinedtrue
+ \nfss@text{\reset@font\bfseries ??}%
+ \@latex@warning{Reference `#1' on page \thepage \space
+ with undefined sentence number}%
+ }\noexpand\@nil}%
+ \let\@@protect\protect
+ \let\protect\noexpand
+ \expandafter\edef\csname r@#1\endcsname{{\@tempa}\@tempb}%
+ \let\protect\@@protect
+ \ref{#1}%
+ \endgroup
+ \fi
+}
+\newcounter{sentence}[par]
+\renewcommand*{\thesentence}{\arabic{sentence}}
+\newcommand*{\theHsentence}{\theHpar-\arabic{sentence}}
+\renewcommand*{\p@sentence}{\expandafter\p@@sentence}
+\newcommand*{\p@@sentence}[1]{\p@par{{\par@cite{\thepar}}%
+ \jura@separator{\nobreakspace}}{\sentence@cite{#1}}}
+\newcommand*{\contract@sentence}{%
+ \refstepcounter{sentence}%
+ \ensuremath{^{\mbox{\fontsize\sf@size\z@\selectfont\thesentence}}}%
+}
+\DeclareRobustCommand*{\par@cite}[1]{\parciteformat{#1}}
+\newcommand*{\parciteformat}[1]{\@Roman{\numexpr #1\relax}}
+\DeclareRobustCommand*{\sentence@cite}[1]{\sentenceciteformat{#1}}
+\newcommand*{\sentenceciteformat}[1]{\@arabic{\numexpr #1\relax}}
+\newcommand*{\parname}{Paragraph}
+\AtBeginDocument{%
+ \@ifundefined{captionsgerman}{}{%
+ \addto\captionsgerman{\def\parname{Absatz}}%
+ \addto\captionsgerman{\def\sentencename{Satz}}%
+ \ifnum \l@german=\language\selectlanguage{german}\fi
+ }%
+ \@ifundefined{captionsngerman}{}{%
+ \addto\captionsngerman{\def\parname{Absatz}}%
+ \addto\captionsngerman{\def\sentencename{Satz}}%
+ \ifnum \l@ngerman=\language\selectlanguage{ngerman}\fi
+ }%
+}
+\newcommand*{\newmaxpar}[3]{%
+ \begingroup
+ \protected@edef\@tempa{#2}\@onelevel@sanitize\@tempa
+ \expandafter\xdef\csname max@#1@\@tempa\endcsname{#3}%
+ \endgroup
+}
+\newcommand*{\getmaxpar}[3]{%
+ \begingroup
+ \protected@edef\@tempa{#3}%
+ \@onelevel@sanitize\@tempa
+ \expandafter\ifx \csname max@#2@\@tempa\endcsname\relax
+ \edef\@tempa{\endgroup\edef\noexpand#1{\expandafter\the\value{par}}}%
+ \else
+ \edef\@tempa{\endgroup
+ \edef\noexpand#1{\csname max@#2@\@tempa\endcsname}}%
+ \fi
+ \@tempa
+}
+%%% From File: scrlogo.dtx
+\@ifundefined{KOMAScript}{%
+ \DeclareRobustCommand{\KOMAScript}{\textsf{K\kern.05em O\kern.05em%
+ M\kern.05em A\kern.1em-\kern.1em Script}}}{}
+\endinput
+%%
+%% End of file `scrjura.sty'.
diff --git a/Master/texmf-dist/tex/latex/koma-script/scrkbase.sty b/Master/texmf-dist/tex/latex/koma-script/scrkbase.sty
index 78eea55c639..1095efc3d19 100644
--- a/Master/texmf-dist/tex/latex/koma-script/scrkbase.sty
+++ b/Master/texmf-dist/tex/latex/koma-script/scrkbase.sty
@@ -5,9 +5,9 @@
%% The original source files were:
%%
%% scrkvers.dtx (with options: `package,scrkbase')
-%% scrkbase.dtx (with options: `package,option')
+%% scrkbase.dtx (with options: `package,option,koma')
%% scrlfile.dtx (with options: `load')
-%% scrkbase.dtx (with options: `package,body')
+%% scrkbase.dtx (with options: `package,body,koma')
%% scrlogo.dtx (with options: `logo')
%%
%% Copyright (c) 1994-2007
@@ -62,409 +62,39 @@
\fi
}
\fi
- \@CheckKOMAScriptVersion{2007/12/24 v2.98 KOMA-Script}%
+ \@CheckKOMAScriptVersion{2008/11/03 v3.00 KOMA-Script}%
\endgroup
%%% From File: scrkbase.dtx
-\ProvidesPackage{scrkbase}[%
- \KOMAScriptVersion\space package (basics and keyval use)]
-\RequirePackage{keyval}
-\begingroup\expandafter\expandafter\expandafter\endgroup
-\expandafter\ifx\csname ifcsname\endcsname\relax
- \newcommand{\scr@ifundefinedorrelax}[1]{%
- \begingroup\expandafter\expandafter\expandafter\endgroup
- \expandafter\ifx\csname #1\endcsname\relax
- \expandafter\@firstoftwo
- \else
- \expandafter\@secondoftwo
- \fi
- }
-\else
- \newcommand{\scr@ifundefinedorrelax}[1]{%
- \ifcsname #1\endcsname
- \expandafter\ifx\csname #1\endcsname\relax
- \expandafter\expandafter\expandafter\@firstoftwo
- \else
- \expandafter\expandafter\expandafter\@secondoftwo
- \fi
- \else
- \expandafter\@firstoftwo
- \fi
- }
-\fi
+\ProvidesPackage{%
+ scrkbase%
+}[%
+ \KOMAScriptVersion\space package
+ (KOMA-Script-dependent basics and keyval usage)]
+\RequirePackage{scrbase}[\KOMAScriptVersion]
\newcommand*{\KOMA@key}[1][.\@currname.\@currext]{%
- \edef\reserved@a{\noexpand\in@{KOMA#1,}{\KOMA@key@familylist}}\reserved@a
- \ifin@\else\xdef\KOMA@key@familylist{\KOMA@key@familylist KOMA#1,}\fi
- \define@key{KOMA#1}%
-}
-\newcommand*{\KOMA@key@familylist}{}
-\newcommand*{\@globaloptionslist}{}
-\let\@globaloptionslist\@classoptionslist
-\scr@ifundefinedorrelax{XKV@classoptionslist}{}{%
- \ifx\XKV@classoptionslist\@empty\else
- \let\@globaloptionslist\XKV@classoptionslist
- \fi
-}
-\newcommand*{\KOMAProcessOptions}[1][KOMA]{%
- \let\ds@\@empty
- \edef\@curroptions{\@ptionlist{\@currname.\@currext}}%
- \ifx\@currext\@clsextension\else
- \@for\CurrentOption:=\@globaloptionslist\do{%
- \ifx\CurrentOption\@empty\else
- \@expandtwoargs\in@{,\CurrentOption,}{,\@declaredoptions,}%
- \ifin@
- \@use@ption
- \expandafter\let\csname ds@\CurrentOption\endcsname\@empty
- \else
- \KOMA@optiontest{#1}\CurrentOption{}{%
- \@use@ption
- \@expandtwoargs\setkeys{#1}%
- \CurrentOption
- }%
- \KOMA@optiontest{#1.\@currname.\@currext}\CurrentOption{}{%
- \@use@ption
- \@expandtwoargs\setkeys{#1.\@currname.\@currext}%
- \CurrentOption
- }%
- \fi
- \fi
- }%
- \fi
- \@for\CurrentOption:=\@curroptions\do{%
- \@use@ption
- \scr@ifundefinedorrelax{ds@\CurrentOption}{%
- \KOMA@optiontest{#1}\CurrentOption{%
- \KOMA@optiontest{#1.\@currname.\@currext}\CurrentOption{%
- \default@ds
- }{%
- \let\scr@sr@co\CurrentOption
- \@expandtwoargs\setkeys{#1.\@currname.\@currext}%
- \CurrentOption
- \let\CurrentOption\scr@sr@co
- }%
- }{%
- \@expandtwoargs\setkeys{#1}%
- \CurrentOption
- \KOMA@optiontest{#1.\@currname.\@currext}\CurrentOption{}{%
- \@expandtwoargs\setkeys{#1.\@currname.\@currext}%
- \CurrentOption
- }%
- }%
- }{%
- }%
- }%
- \@for\CurrentOption:=\@declaredoptions\do{%
- \expandafter\let\csname ds@\CurrentOption\endcsname\relax}%
- \let\CurrentOption\@empty
- \let\@fileswith@pti@ns\@@fileswith@pti@ns
- \AtEndOfPackage{\let\@unprocessedoptions\relax}%
+ \DefineFamilyMember{KOMA}%
+ \DefineFamilyKey[#1]{KOMA}%
}
-\@onlypreamble\KOMA@process@options
+\newcommand*{\KOMAProcessOptions}{\FamilyProcessOptions{KOMA}}
\@onlypreamble\KOMAProcessOptions
-\newcommand*{\KOMA@optiontest}[2]{%
- \edef\reserved@a{\noexpand\KOMA@pti@ntest{#1}#2=\noexpand\@nil}%
- \reserved@a
-}
-\newcommand*{\KOMA@pti@ntest}{}
-\def\KOMA@pti@ntest#1#2=#3\@nil{\scr@ifundefinedorrelax{KV@#1@#2}}
-\newcommand*{\scr@sr@co}{}
-\newcommand*{\dont@let@as@internal@defined}{/}
-\newif\if@let@as@internalonly@defined\@let@as@internalonly@definedfalse
-\KOMA@key{internalonly}[\relax]{%
- \ifx\relax#1\relax
- \@let@as@internalonly@definedtrue
- \else
- \@let@as@internalonly@definedfalse
- \begingroup
- \@expandtwoargs\in@{#1}\dont@let@as@internal@defined
- \expandafter\endgroup
- \ifin@\else\g@addto@macro\dont@let@as@internal@defined{#1/}\fi
- \fi
-}
\KOMAProcessOptions\relax
%%% From File: scrlfile.dtx
-\def\scrlfileversion{2007/12/18 v2.98}
+\def\scrlfileversion{2008/07/09 v3.00}
\edef\@tempa{\noexpand\RequirePackage{scrlfile}[\scrlfileversion]}
\@tempa
%%% From File: scrkbase.dtx
-\newif\if@atdocument
-\AtBeginDocument{\@atdocumenttrue}
-\@onlypreamble\@atdocumentrue
-\@onlypreamble\@atdocumentfalse
-\newcommand*{\let@as@internal@defined}[1]{%
- \begingroup
- \if@let@as@internalonly@defined
- \in@true
- \else
- \@expandtwoargs\in@{/#1/}\dont@let@as@internal@defined
- \fi
- \expandafter\endgroup
- \ifin@
- \PackageInfo{%
- scrkbase%
- }{%
- \expandafter\string\csname #1\endcsname\space excluded from being
- defined%
- }%
- \else
- \@ifundefined{#1}{%
- \begingroup
- \expandafter\def\expandafter\@tempa
- \expandafter{\csname scr@#1\endcsname}
- \expandafter\def\expandafter\@tempb
- \expandafter{\csname #1\endcsname}
- \expandafter\expandafter\expandafter\endgroup
- \expandafter\expandafter\expandafter\let\expandafter\@tempb\@tempa
- \if@atdocument\else
- \g@addto@macro\document{%
- \expandafter\ifx\csname #1\expandafter\endcsname
- \csname scr@#1\endcsname
- \else
- \PackageWarning{scrkbase}{%
- \expandafter\string\csname #1\endcsname\space was
- redefined\MessageBreak
- at the document preamble.\MessageBreak
- If you did not redefine it by yourself, have a\MessageBreak
- a look at the description of this command at\MessageBreak
- the manual of every package you are using\@gobble
- }%
- \fi
- }%
- \fi
- }{%
- \PackageInfo{%
- scrkbase%
- }{%
- \expandafter\string\csname #1\endcsname\space already
- defined.\MessageBreak
- If \expandafter\string\csname #1\endcsname\space does not behave
- like\MessageBreak
- it was described at the KOMA-Script manual, try to\MessageBreak
- load `scrkbase.sty' earlier or find out at which\MessageBreak
- package or class \expandafter\string\csname #1\endcsname\space
- was defined before\@gobble
- }%
- }%
- \fi
-}
-\let@as@internal@defined{ifundefinedorrelax}
-\scr@ifundefinedorrelax{ifcsname}{%
- \newcommand{\ifnotundefined}[1]{%
- \begingroup\expandafter\expandafter\expandafter\endgroup
- \expandafter\ifx\csname #1\endcsname\relax
- \expandafter\@secondoftwo
- \else
- \expandafter\@firstoftwo
- \fi
- }%
-}{%
- \newcommand{\ifnotundefined}[1]{%
- \ifcsname #1\endcsname
- \expandafter\@firstoftwo
- \else
- \expandafter\@secondoftwo
- \fi
- }%
-}
-\newcommand\ifstr[2]{%
- \begingroup\edef\@tempa{#1}\edef\@tempb{#2}%
- \ifx\@tempa\@tempb
- \endgroup\expandafter\@firstoftwo
- \else
- \endgroup\expandafter\@secondoftwo
- \fi
-}
-\newcommand\ifnumber[1]{%
- \begingroup\@tempswafalse\let\scr@next\test@number
- \expandafter\scr@next#1\scr@next
- \if@tempswa
- \endgroup\expandafter\@firstoftwo
- \else
- \endgroup\expandafter\@secondoftwo
- \fi
-}
-\newcommand*{\test@number}[1]{%
- \ifx \scr@next#1
- \let\scr@next\relax
- \else
- \@tempcnta=\expandafter\expandafter\expandafter\number
- \expandafter`#1\relax
- \ifnum \@tempcnta>47
- \ifnum \@tempcnta<58
- \@tempswatrue
- \else\@tempswafalse\fi
- \else\@tempswafalse\fi
- \if@tempswa\else\let\scr@next\gobble@till@scr@next\fi
- \fi
- \scr@next
-}
-\newcommand*{\gobble@till@scr@next}{}
-\def\gobble@till@scr@next#1\scr@next{}
-\newcommand{\ifdimen}[1]{%
- \begingroup\@tempswatrue\let\scr@next\test@posdimen
- \expandafter\test@dimen#1\scr@next
- \if@tempswa
- \endgroup\expandafter\@firstoftwo
- \else
- \endgroup\expandafter\@secondoftwo
- \fi
-}
-\newcommand*{\test@dimen}[1]{%
- \ifx -#1\else\ifx +#1\else
- \def\scr@next{\let\scr@next\test@posdimen\scr@next#1}\fi\fi
- \scr@next
-}
-\newcommand*{\test@posdimen}[1]{%
- \ifx \scr@next#1%
- \@tempswafalse\let\scr@next\relax
- \else
- \if .#1\else\if ,#1\else
- \@tempcnta=%
- \expandafter\expandafter\expandafter\number\expandafter`#1\relax
- \ifnum \@tempcnta>47
- \ifnum \@tempcnta<58
- \else\def\scr@next{\test@dimunt#1}\fi
- \else\def\scr@next{\test@dimunt#1}\fi
- \fi\fi
- \fi
- \scr@next
-}
-\newcommand*{\test@dimunt}{}
-\def\test@dimunt#1\scr@next{%
- \expandafter\test@trueunt#1truetrue\test@trueunt
-}
-\newcommand*{\test@trueunt}{}
-\def\test@trueunt#1true#2true#3\test@trueunt{%
- \edef\@tempa{#1}
- \ifx\@tempa\@empty\test@@ifdimunt{#2}\else\test@@ifdimunt{#1}\fi
-}
-\newcommand*\test@@ifdimunt[1]{%
- \@tempswafalse
- \ifstr{#1}{pt}{\@tempswatrue}{%
- \ifstr{#1}{pc}{\@tempswatrue}{%
- \ifstr{#1}{in}{\@tempswatrue}{%
- \ifstr{#1}{bp}{\@tempswatrue}{%
- \ifstr{#1}{cm}{\@tempswatrue}{%
- \ifstr{#1}{mm}{\@tempswatrue}{%
- \ifstr{#1}{dd}{\@tempswatrue}{%
- \ifstr{#1}{cc}{\@tempswatrue}{%
- \ifstr{#1}{sp}{\@tempswatrue}{}%
- }%
- }%
- }%
- }%
- }%
- }%
- }%
- }%
-}
-\newcommand{\scr@ifpdftex}{\ifnotundefined{pdftexversion}}
-\let@as@internal@defined{ifpdftex}
-\BeforePackage{pdfcprot}{\let\ifpdftex\relax}
-\AfterPackage{pdfcprot}{\let@as@internal@defined{ifpdftex}}
-\newcommand{\scr@ifVTeX}{\ifnotundefined{VTeXversion}}
-\let@as@internal@defined{ifVTeX}
-\newcommand{\scr@ifpdfoutput}{%
- \scr@ifundefinedorrelax{pdfoutput}{%
- \scr@ifundefinedorrelax{OpMode}{%
- \expandafter\@secondoftwo%
- }{%
- \ifnum\OpMode=1
- \expandafter\@firstoftwo
- \else
- \expandafter\@secondoftwo
- \fi
- }%
- }{%
- \ifnum\pdfoutput>0
- \expandafter\@firstoftwo
- \else
- \expandafter\@secondoftwo
- \fi
- }%
-}%
-\let@as@internal@defined{ifpdfoutput}
-\newcommand*{\scr@ifpsoutput}{%
- \ifnotundefined{if@dvips}{%
- \if@dvips
- \expandafter\@firstoftwo
- \else
- \expandafter\@secondoftwo
- \fi
- }{%
- \ifnotundefined{OpMode}{%
- \ifnum\OpMode=2
- \expandafter\@firstoftwo
- \else
- \expandafter\@secondoftwo
- \fi
- }{%
- \expandafter\@secondoftwo
- }%
- }%
-}
-\let@as@internal@defined{ifpsoutput}
-\newcommand*{\scr@ifdvioutput}{%
- \scr@ifundefinedorrelax{pdfoutput}{%
- \scr@ifundefinedorrelax{OpMode}{%
- \expandafter\@firstoftwo
- }{%
- \ifnum\OpMode=0
- \expandafter\@firstoftwo
- \else
- \expandafter\@secondoftwo
- \fi
- }%
- }{%
- \ifnum\pdfoutput=0
- \expandafter\@firstoftwo
- \else
- \expandafter\@secondoftwo
- \fi
- }%
-}
-\let@as@internal@defined{ifdvioutput}
-\newcommand*{\scr@smashdp}[1]{%
- \begingroup
- \def\finsm@sh{\dp\z@\z@\box\z@}%
- \smash{#1}%
- \endgroup
-}
-\providecommand*{\PackageInfoNoLine}[2]{%
- \PackageInfo{#1}{#2\@gobble}%
-}
-\newcommand*{\KOMAExecuteOptions}[2][KOMA]{%
- \def\reserved@a##1\@nil{%
- \@for\KOMA@key@atlist:=#2\do{%
- \expandafter\KOMA@key@split@name@value\KOMA@key@atlist==\@nil
- \scr@ifundefinedorrelax{KV@#1@\KOMA@key@name}{}{%
- \edef\reserved@a{\noexpand\setkeys{#1}{\KOMA@key@atlist}%
- }%
- \reserved@a
- }%
- \scr@ifundefinedorrelax{KV@#1.\@currname.\@currext @\KOMA@key@name}{}{%
- \edef\reserved@a{%
- \noexpand\setkeys{#1.\@currname.\@currext}{\KOMA@key@atlist}%
- }%
- \reserved@a
- }%
- \let\CurrentOption\KOMA@key@atlist
- \csname ds@\CurrentOption\endcsname
- }%
- \edef\CurrentOption{##1}%
- }%
- \expandafter\reserved@a\CurrentOption\@nil
-}
+\newcommand*{\KOMAExecuteOptions}{\FamilyExecuteOptions{KOMA}}
\@onlypreamble\KOMAExecuteOptions
\newcommand*{\KOMAoptions}[1]{%
\let\post@kopt@hook\@empty
\KOMA@options{#1}{%
\PackageError{scrkbase}{%
- unknown KOMA option `\KOMA@key@name'%
+ unknown KOMA option `\scr@key@name'%
}{%
You have used \string\KOMAoptions\space to set
- `\KOMA@key@atlist',\MessageBreak
+ `\scr@key@atlist',\MessageBreak
but KOMA-Script does not know any option named
- `\KOMA@key@name'.\MessageBreak
+ `\scr@key@name'.\MessageBreak
See the KOMA-Script manual for more informations about options
and\MessageBreak
their values.%
@@ -472,34 +102,7 @@
}%
\post@kopt@hook\let\post@kopt@hook\relax
}
-\newcommand*{\KOMA@options}[2]{%
- \@for\KOMA@key@atlist:=#1\do{%
- \expandafter\KOMA@key@split@name@value\KOMA@key@atlist==\@nil
- \KOMA@key@found@false
- \@for\@tempa:=\KOMA@key@familylist\do{%
- \scr@ifundefinedorrelax{KV@\@tempa @\KOMA@key@name}{}{%
- \KOMA@key@found@true
- \edef\reserved@a{\noexpand\setkeys{\@tempa}{\KOMA@key@atlist}%
- \noexpand\edef\noexpand\@tempa{\@tempa}%
- \noexpand\edef\noexpand\KOMA@key@atlist{\KOMA@key@atlist}%
- \noexpand\edef\noexpand\KOMA@key@name{\KOMA@key@name}%
- \noexpand\edef\noexpand\KOMA@key@value{\KOMA@key@value}%
- }%
- \reserved@a
- }%
- }%
- \ifKOMA@key@found@\else#2\fi
- }%
-}
-\newif\ifKOMA@key@found@
-\newcommand*{\KOMA@key@atlist}{}
-\newcommand*{\KOMA@key@name}{}
-\newcommand*{\KOMA@key@value}{}
-\newcommand*{\KOMA@key@split@name@value}{}
-\def\KOMA@key@split@name@value#1=#2=#3\@nil{%
- \KV@@sp@def\KOMA@key@name{#1}%
- \KV@@sp@def\KOMA@key@value{#2}%
-}
+\newcommand*{\KOMA@options}{\Family@Options{KOMA}}
\newcommand*{\post@kopt@hook}{}
\let\post@kopt@hook\relax
\newcommand*{\AfterKOMAoptions}{%
@@ -515,102 +118,53 @@
\fi
\post@kopt@hook
}
-\scr@ifundefinedorrelax{unexpanded}{%
- \newcommand*{\g@addto@macro@temp}{}%
- \newcommand{\l@addto@macro}[2]{%
- \begingroup%
- \toks@\expandafter{#1#2}%
- \xdef\g@addto@macro@temp{\the\toks@}%
- \endgroup
- \let#1\g@addto@macro@temp
- }%
-}{%
- \newcommand{\l@addto@macro}[2]{%
- \edef#1{\unexpanded\expandafter{#1#2}}%
- }%
-}
-\newcommand*{\KOMA@unknown@keyval}[3]{%
- \PackageError{%
- scrkbase%
- }{%
- KOMA option `#1' has no value `#2'%
- }{%
- You've tried to set option `#1' to value `#2'.\MessageBreak
- But allowed values are only:\MessageBreak
- #3.\MessageBreak
- See the KOMA-Script manual for more information.%
- }%
-}
-\newcommand*{\KOMA@ifkey}[2]{%
- \@ifundefined{if#2}{%
- \expandafter\newif\csname if#2\endcsname
- }{}%
- \KOMA@key{#1}[true]{\KOMA@set@ifkey{#1}{#2}{##1}}%
-}
-\newcommand*{\KOMA@set@ifkey}[3]{%
- \ifstr{#3}{true}{\@nameuse{#2true}}{%
- \ifstr{#3}{on}{\@nameuse{#2true}}{%
- \ifstr{#3}{yes}{\@nameuse{#2true}}{%
- \ifstr{#3}{false}{\@nameuse{#2false}}{%
- \ifstr{#3}{off}{\@nameuse{#2false}}{%
- \ifstr{#3}{no}{\@nameuse{#2false}}{%
- \KOMA@unknown@keyval{#1}{#3}{%
- `true', `on', `yes', `false', `off', `no'%
- }%
- }%
- }%
- }%
- }%
+\newcommand*{\KOMAoption}[2]{%
+ \let\post@kopt@hook\@empty
+ \Family@Option{KOMA}{#1}{#2}{%
+ \PackageError{scrkbase}{%
+ unknown KOMA option `\scr@key@name'%
+ }{%
+ You have used \string\KOMAoption\space to set
+ `\scr@key@name',\MessageBreak
+ but KOMA-Script does not know any option named
+ `\scr@key@name'.\MessageBreak
+ See the KOMA-Script manual for more informations about options
+ and\MessageBreak
+ their values.%
}%
}%
+ \post@kopt@hook\let\post@kopt@hook\relax
}
-\newcommand*{\KOMA@ncmdkey}[1]{%
+\newcommand*{\KOMA@unknown@keyval}{\FamilyUnknownKeyValue{KOMA}}
+\newcommand*{\KOMA@ifkey}{\FamilyBoolKey{KOMA}}
+\newcommand*{\KOMA@set@ifkey}{\FamilySetBool{KOMA}}
+\newcommand*{\KOMA@ncmdkey}{\FamilyNumericalKey{KOMA}}
+\newcommand*{\KOMA@set@ncmdkey}{\FamilySetNumerical{KOMA}}
+\newcommand*{\KOMA@DeclareObsoleteOption}{%
\@ifnextchar [%]
- {\KOMA@@ncmdkey{#1}}{\KOMA@@ncmdkey{#1}[]}%
+ {\KOMA@@DeclareObsoleteOption}%
+ {\KOMA@@DeclareObsoleteOption[\@gobbletwo]}%
}
-\newcommand*{\KOMA@@ncmdkey}{}
-\def\KOMA@@ncmdkey#1[#2]#3#4{%
- \ifx\relax#2\relax\else
- \@namedef{KV@KOMA@#1@default\expandafter}\expandafter{%
- \csname KV@KOMA@#1\endcsname{#2}%
- }%
- \fi
- \@ifundefined{#3}{\@namedef{#3}{0}}%
- \KOMA@key{#1}{\KOMA@set@ncmdkey{#1}{#3}{#4}{##1}}%
+\newcommand*{\KOMA@@DeclareObsoleteOption}{}
+\def\KOMA@@DeclareObsoleteOption[#1]{%
+ \@ifnextchar [%]
+ {\KOMA@@@DeclareObsoleteOption{#1}}%
+ {\KOMA@@@DeclareObsoleteOption{#1}[]}%
}
-\newcommand*{\KOMA@set@ncmdkey}[4]{%
- \begingroup
- \edef\@searched{#4}%
- \let\@tempa=\@empty
- \let\@tempb=\@empty
- \@tempswafalse
- \@for\@valuelist:=#3\do{%
- \if@tempswa\else
- \edef\@tempc{\expandafter\@firstoftwo\@valuelist}%
- \edef\@tempa{\@tempa\@tempb`\@tempc'}%
- \edef\@tempb{, }%
- \ifx\@tempc\@searched
- \@tempswatrue
- \edef\@tempa{\expandafter\@secondoftwo\@valuelist}%
- \fi
- \fi
- }%
- \if@tempswa
- \edef\@tempa{\endgroup
- \noexpand\@namedef{#2}{\@tempa}%
- }%
- \else
- \KOMA@unknown@keyval{#1}{#4}{\@tempa}%
- \let\@tempa=\endgroup
- \fi
- \@tempa
+\newcommand*{\KOMA@@@DeclareObsoleteOption}{}
+\def\KOMA@@@DeclareObsoleteOption#1[#2]#3#4{%
+ \ifstr{#2}{}{%
+ \KOMA@iv@DeclareObsoleteOption{#1}{\@currname}{#3}{#4}%
+ }{%
+ \KOMA@UseObsoleteOption{#1}{#2}{#3}{#4}%
+ }%
}
-\newcommand*{\KOMA@DeclareObsoleteOption}[3][\@gobbletwo]{%
- \DeclareOption{#2}{\KOMA@UseObsoleteOption{#1}{#2}{#3}}%
+\newcommand*{\KOMA@iv@DeclareObsoleteOption}[4]{%
+ \DeclareOption{#3}{\KOMA@UseObsoleteOption{#1{#2}}{#3}{#4}}%
}
\newcommand*{\KOMA@UseObsoleteOption}[3]{%
\let\scr@sr@co\CurrentOption
- #1{scrkbase}{%
+ #1{%
You've used obsolete option `#2'.\MessageBreak
\protect\KOMAExecuteOptions{#3} will be\MessageBreak
used instead.\MessageBreak
@@ -620,6 +174,7 @@
\KOMAExecuteOptions{#3}%
\let\CurrentOption\scr@sr@co
}
+\newcommand*{\scr@sr@co}{}
\newcommand*{\KOMA@newobsoletecommand}[3][\@gobbletwo]{%
\newcommand*{#2}{\KOMA@UseObsoleteCommand{#1}{\string#2}{#3}}%
}
diff --git a/Master/texmf-dist/tex/latex/koma-script/scrlfile.sty b/Master/texmf-dist/tex/latex/koma-script/scrlfile.sty
index 390c3b16720..1f441671ffe 100644
--- a/Master/texmf-dist/tex/latex/koma-script/scrlfile.sty
+++ b/Master/texmf-dist/tex/latex/koma-script/scrlfile.sty
@@ -41,7 +41,7 @@
%% standard classes created by The LaTeX3 Project 1994-1996.
%%
%%% From File: scrlfile.dtx
-\def\scrlfileversion{2007/12/18 v2.98}
+\def\scrlfileversion{2008/07/09 v3.00}
\ProvidesPackage{scrlfile}[%
\scrlfileversion\space KOMA-Script package (loading files)]
\typeout{Package scrlfile, \csname ver@scrlfile.sty\endcsname%
@@ -163,13 +163,29 @@
\ifx\reserved@a\reserved@b
\let\scr@saved@clearpage=\clearpage
\renewcommand*{\clearpage}{\scr@saved@clearpage
- \scr@hook@bcma\let\clearpage=\scr@saved@clearpage}%
+ \scr@hook@bcma
+ \scr@restore@newpage
+ \let\clearpage=\scr@saved@clearpage}%
\fi%
}%
}
\newcommand*{\scr@saved@checkend}{}
-\newcommand*{\scr@hook@bcma}{%
- \renewcommand*{\BeforeClosingMainAux}[1]{##1}%
+\newcommand*{\scr@redefine@newpage}{%
+ \let\scr@saved@newpage\newpage
+ \def\scr@restore@newpage{%
+ \renewcommand*{\newpage}{%
+ \PackageWarningNoLine{%
+ scrlfile%
+ }{%
+ \string\newpage\space at main aux file!\MessageBreak
+ You have output material at the main aux file.\MessageBreak
+ Note, that the \string\BeforeClosingMainAux\space commands\MessageBreak
+ are processed before the output from aux file%
+ }%
+ \let\newpage\scr@saved@newpage
+ \newpage
+ }%
+ }%
\renewcommand*{\newpage}{%
\PackageError{%
scrlfile%
@@ -185,7 +201,15 @@
}%
}%
}
+\newcommand*{\scr@restore@newpage}{}
+\newcommand*{\scr@hook@bcma}{}
\newcommand*{\BeforeClosingMainAux}{%
+ \ifx\scr@hook@bcma\@empty
+ \gdef\scr@hook@bcma{%
+ \renewcommand*{\BeforeClosingMainAux}[1]{####1}%
+ \scr@redefine@newpage
+ }%
+ \fi
\g@addto@macro\scr@hook@bcma%
}
%%% From File: scrlogo.dtx
diff --git a/Master/texmf-dist/tex/latex/koma-script/scrlttr2.cls b/Master/texmf-dist/tex/latex/koma-script/scrlttr2.cls
index b02516826bc..515a3e9f1ae 100644
--- a/Master/texmf-dist/tex/latex/koma-script/scrlttr2.cls
+++ b/Master/texmf-dist/tex/latex/koma-script/scrlttr2.cls
@@ -91,7 +91,7 @@
\fi
}
\fi
- \@CheckKOMAScriptVersion{2007/12/24 v2.98 KOMA-Script}%
+ \@CheckKOMAScriptVersion{2008/11/03 v3.00 KOMA-Script}%
\endgroup
\newcommand*{\KOMAClassName}{%
scrlttr2%
@@ -123,7 +123,8 @@
\ClassError{\KOMAClassName}{%
Option `version' too late%
}{%
- Option `version' may be set only while loading the class.\MessageBreak
+ Option `version' may be set only while loading the
+ class.\MessageBreak
But you've tried to set it up later.%
}%
}%
@@ -144,7 +145,11 @@
\@namedef{scr@v@2.97d}{5}
\@namedef{scr@v@2.97e}{6}
\@namedef{scr@v@2.98}{6}
-\@namedef{scr@v@last}{6}
+\@namedef{scr@v@2.98a}{6}
+\@namedef{scr@v@2.98b}{6}
+\@namedef{scr@v@2.98c}{7}
+\@namedef{scr@v@3.00}{8}
+\@namedef{scr@v@last}{8}
%%% From File: scrkmisc.dtx
\KOMA@key{draft}[true]{%
\KOMA@set@ifkey{draft}{@tempswa}{#1}%
@@ -189,16 +194,41 @@
\def\@pt@@scan #1pt#2\@pt@@scan{%
\ifstr{#2}{pt}{%
\ifnumber{#1}{%
- \KOMA@UseObsoleteOption{\PackageInfoNoLine}{#1#2}{fontsize=#1#2}%
+ \KOMA@UseObsoleteOption{\PackageInfoNoLine{\KOMAClassName}}%
+ {#1#2}{fontsize=#1#2}%
}{\@headlines}%
}{\@headlines}%
}
+\providecommand*{\@fontsizefilebase}{scrsize}
\KOMA@key{fontsize}{%
\scr@ifundefinedorrelax{changefontsizes}{%
\@defaultunits\@tempdima#1pt\relax\@nnil
\edef\@ptsize{#1}%
}{%
- \changefontsizes{#1}%
+ \expandafter\@defaultunits\expandafter\@tempdima#1 pt\relax\@nnil
+ \edef\@tempa{#1}%
+ \setlength{\@tempdimb}{\@tempdima}%
+ \edef\@tempb{\strip@pt\@tempdimb}%
+ \addtolength{\@tempdimb}{-10\p@}%
+ \edef\@ptsize{\strip@pt\@tempdimb}%
+ \edef\@tempa{%
+ \noexpand\makeatletter
+ \noexpand\InputIfFileExists{\@fontsizefilebase\@tempa.clo}{%
+ \noexpand\ClassInfo{\KOMAClassName}{%
+ File `\@fontsizefilebase\@tempa.clo' used to setup font sizes}%
+ }{%
+ \noexpand\InputIfFileExists{\@fontsizefilebase\@tempb pt.clo}{%
+ \noexpand\ClassInfo{\KOMAClassName}{%
+ File `\@fontsizefilebase\@tempb pt.clo' used instead of%
+ \noexpand\MessageBreak
+ file `\@fontsizefilebase\@tempa.clo' to setup font sizes}%
+ }{%
+ \noexpand\changefontsizes{#1}%
+ }%
+ }%
+ \noexpand\catcode`\noexpand\@=\the\catcode`\@
+ }%
+ \@tempa
}%
}
%%% From File: scrkvars.dtx
@@ -266,7 +296,7 @@
}
\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{oneside}{twoside=false}
\KOMA@key{twocolumn}[true]{%
- \if@atdocument\else\PassOptionsToPackage{twoside=#1}{typearea}\fi%
+ \if@atdocument\else\PassOptionsToPackage{twocolumn=#1}{typearea}\fi%
}
\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{onecolumn}{twocolumn=false}
\DeclareOption*{%
@@ -377,32 +407,28 @@
\endgroup
\fi
}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{parskip-}{parskip=full-}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{parskip+}{parskip=full+}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{parskip*}{parskip=full*}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{halfparskip}{parskip=half}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{halfparskip-}{parskip=half-}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{halfparskip+}{parskip=half+}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{halfparskip*}{parskip=half*}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{parindent}{parskip=false}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{parskip-}{parskip=full-}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{parskip+}{parskip=full+}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{parskip*}{parskip=full*}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{halfparskip}{parskip=half}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{halfparskip-}{parskip=half-}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{halfparskip+}{parskip=half+}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{halfparskip*}{parskip=half*}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{parindent}{parskip=false}
%%% From File: scrkpage.dtx
\newif\if@hsl
\KOMA@key{headsepline}[true]{%
\KOMA@set@ifkey{headsepline}{@hsl}{#1}%
- \@ifpackageloaded{typearea}{%
- \KOMAoptions{headinclude=#1}%
- }{}%
+ \KOMA@options{headinclude=#1}{}%
}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{headnosepline}{%
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{headnosepline}{%
headsepline=false}
\newif\if@fsl
\KOMA@key{footsepline}[true]{%
\KOMA@set@ifkey{footsepline}{@fsl}{#1}%
- \@ifpackageloaded{typearea}{%
- \KOMAoptions{footinclude=#1}%
- }{}%
+ \KOMA@options{footinclude=#1}{}%
}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{footnosepline}{%
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{footnosepline}{%
footsepline=false}
\@twosidefalse
\KOMA@key{cleardoublepage}{%
@@ -414,34 +440,103 @@
}%
\ifstr{#1}{current}{%
\def\@tempc{\endgroup%
- \let\cleardoublepage\cleardoublestandardpage
+ \def\cleardoublepage{\cleardoublestandardpage}%
+ \def\cleardoubleoddpage{\cleardoubleoddstandardpage}%
+ \def\cleardoubleevenpage{\cleardoubleevenstandardpage}%
}%
}{%
\ifnotundefined{ps@#1}{%
\def\@tempc{\endgroup%
\def\cleardoublepage{\cleardoublepageusingstyle{#1}}%
+ \def\cleardoubleoddpage{\cleardoubleoddpageusingstyle{#1}}%
+ \def\cleardoubleevenpage{\cleardoubleevenpageusingstyle{#1}}%
}%
}{}%
}%
\@tempc
}
-\newcommand*{\cleardoublestandardpage}{}
-\let\cleardoublestandardpage\cleardoublepage
+\newcommand*{\cleardoubleoddstandardpage}{}
+\let\cleardoubleoddstandardpage=\cleardoublepage
+\newcommand*{\cleardoubleoddpageusingstyle}[1]{\clearpage
+ {\thispagestyle{#1}\cleardoubleoddstandardpage}}
+\newcommand*{\cleardoubleoddemptypage}{\cleardoubleoddpageusingstyle{empty}}
+\newcommand*{\cleardoubleoddplainpage}{\cleardoubleoddpageusingstyle{plain}}
+\newcommand*{\cleardoubleevenstandardpage}{%
+ \clearpage
+ \if@twoside\ifodd\c@page
+ \hbox{}\newpage\if@twocolumn\hbox{}\newpage\fi
+ \fi\fi
+}
+\newcommand*{\cleardoubleevenpageusingstyle}[1]{\clearpage
+ {\thispagestyle{#1}\cleardoubleevenstandardpage}}
+\newcommand*{\cleardoubleevenemptypage}{\cleardoubleevenpageusingstyle{empty}}
+\newcommand*{\cleardoubleevenplainpage}{\cleardoubleevenpageusingstyle{plain}}
+\newcommand*{\cleardoublestandardpage}{\cleardoubleoddstandardpage}
+\renewcommand*{\cleardoublepage}{%
+ \expandafter\ifnum \@nameuse{scr@v@2.98c}<\scr@compatibility\relax
+ \cleardoubleemptypage
+ \else
+ \cleardoublestandardpage
+ \fi
+}
+\newcommand*{\cleardoubleoddpage}{\cleardoubleoddemptypage}
+\newcommand*{\cleardoubleevenpage}{\cleardoubleevenemptypage}
\newcommand*{\cleardoublepageusingstyle}[1]{\clearpage
{\thispagestyle{#1}\cleardoublestandardpage}}
\newcommand*{\cleardoubleemptypage}{\cleardoublepageusingstyle{empty}}
\newcommand*{\cleardoubleplainpage}{\cleardoublepageusingstyle{plain}}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{cleardoubleempty}{%
- cleardoublepage=empty%
-}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{cleardoubleplain}{%
- cleardoublepage=plain%
-}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{cleardoublestandard}{%
- cleardoublepage=current%
-}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{cleardoubleempty}%
+ {cleardoublepage=empty}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{cleardoubleplain}%
+ {cleardoublepage=plain}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{cleardoublestandard}%
+ {cleardoublepage=current}
%%% From File: scrkfloa.dtx
%%% From File: scrkftn.dtx
+\KOMA@key{footnotes}{%
+ \ifx\@footnotemark\scr@saved@footnotemark
+ \else
+ \ifx\@footnotemark\scr@footnotemark
+ \else
+ \ClassWarning{\KOMAClassName}{%
+ Change of `\string\@footnotemark' detected!\MessageBreak
+ Use of `footnotes=#1' may break\MessageBreak
+ another package!\MessageBreak
+ Maybe you should remove the usage of\MessageBreak
+ option `footnotes=#1'}%
+ \fi
+ \fi
+ \ifstr{#1}{multiple}{%
+ \let\@footnotemark\scr@footnotemark
+ \let\FN@mf@prepare\scr@mf@prepare
+ \def\scr@footmisc@options{multiple}%
+ }{%
+ \ifstr{#1}{nomultiple}{%
+ \let\@footnotemark\scr@saved@footnotemark
+ \let\FN@mf@prepare\relax
+ \let\scr@footmisc@options\@empty
+ }{%
+ \KOMA@unknown@keyval{footnotes}{#1}{`multiple' and `nomultiple'}%
+ }%
+ }%
+}
+\newcommand*{\scr@footmisc@options}{}
+\PassOptionsToPackage{\noexpand\scr@footmisc@options}{footmisc}
+\newcommand*{\scr@saved@footnotemark}{%
+ \leavevmode
+ \ifhmode\edef\@x@sf{\the\spacefactor}\nobreak\fi
+ \@makefnmark
+ \ifhmode\spacefactor\@x@sf\fi
+ \relax}
+\expandafter\CheckCommand\expandafter*\expandafter\@footnotemark
+\expandafter{\scr@saved@footnotemark}
+\newcommand*{\scr@footnotemark}{%
+ \leavevmode
+ \ifhmode\edef\@x@sf{\the\spacefactor}\FN@mf@check\nobreak\fi
+ \@makefnmark
+ \csname FN@mf@prepare\endcsname
+ \ifhmode\spacefactor\@x@sf\fi
+ \relax}
%%% From File: scrklist.dtx
%%% From File: scrknpap.dtx
\KOMA@ifkey{firsthead}{@firsthead}\@firstheadtrue
@@ -510,13 +605,13 @@
\@biglocfalse
\fi
}
-\DeclareOption{wlocfield}{\@ObsoleteOption{locfield=wide}}
-\DeclareOption{slocfield}{\@ObsoleteOption{locfield=narrow}}
+\KOMA@DeclareObsoleteOption[\ClassWarningNoLine]{wlocfield}{locfield=wide}
+\KOMA@DeclareObsoleteOption[\ClassWarningNoLine]{slocfield}{locfield=narrow}
\newif\if@fold\@foldtrue
\newcommand*{\@usefolds}{TMBPL}
\KOMA@key{foldmarks}[true]{%
\begingroup
- \def\KOMA@unknown@keyval##1##2##3{%
+ \def\FamilyUnknownKeyValue##1##2##3##4{%
\def\sc@nf@ldch@rs####1{%
\ifx ####1\@nil\else
\if ####1T\g@addto@macro\@usefolds{####1}\else
@@ -683,11 +778,12 @@
%%% From File: scrkcile.dtx
%%% From File: scrkmisc.dtx
\KOMAExecuteOptions{%
- parskip=false%
+ parskip=false,%
+ headings=big%
}
\KOMAProcessOptions\relax
%%% From File: scrkcomp.dtx
-\expandafter\ifnum \@nameuse{scr@v@2.95}>\scr@compatibility
+\expandafter\ifnum \@nameuse{scr@v@2.95}>\scr@compatibility\relax
\newcommand*{\@setif}[2][]{%
\begingroup
\edef\@tempa{#1}\ifx\@tempa\@empty
@@ -941,7 +1037,6 @@
\setlength\partopsep{.2\@tempdimc \@plus.1\@tempdimc \@minus.1\@tempdimc}%
}%
}
-\providecommand*{\@fontsizefilebase}{scrsize}
\expandafter\@defaultunits\expandafter\@tempdima\@ptsize pt\relax\@nnil
\edef\@tempa{\@ptsize}%
\setlength{\@tempdimb}{\@tempdima}%
@@ -1215,119 +1310,6 @@
\edef\LOPNP@size{#2}\edef\LOPNP@option{#1}%
}
%%% From File: scrklang.dtx
-\newcommand*{\providecaptionname}[3]{%
- \@ifundefined{captions#1}{%
- \@ifundefined{cap@info@#1@done}{%
- \ClassInfo{\KOMAClassName}{%
- No captions found for `#1'\MessageBreak
- --> skipped%
- }%
- \expandafter\let\csname cap@info@#1@done\endcsname\@empty
- }{}%
- }{%
- \begingroup
- \let\@tempa\endgroup
- \csname captions#1\endcsname
- \ifx #2\undefined
- \edef\@tempb{#1}%
- \@onelevel@sanitize\@tempb
- \@onelevel@sanitize\languagename
- \ifx\@tempb\languagename
- \def\@tempa{\endgroup%
- \expandafter\g@addto@macro\csname captions#1\endcsname{%
- \def#2{#3}}%
- \csname captions#1\endcsname
- }%
- \else
- \def\@tempa{\endgroup%
- \expandafter\g@addto@macro\csname captions#1\endcsname{%
- \def#2{#3}}%
- }%
- \fi
- \else
- \ClassInfo{\KOMAClassName}{%
- `\string#2' at language `#1' already
- defined\MessageBreak
- --> skipped%
- }%
- \fi
- \@tempa
- }%
-}
-\newcommand*{\newcaptionname}[3]{%
- \@ifundefined{captions#1}{%
- \ClassInfo{\KOMAClassName}{%
- No captions found for `#1' --> defining%
- }%
- \@namedef{captions#1}{}%
- }{}%
- \begingroup
- \csname captions#1\endcsname
- \ifx #2\undefined\else
- \ClassError{\KOMAClassName}{%
- `\string#2' at language `#1' already defined%
- }{%
- You've told me to define `\string#2' at language
- `#1',\MessageBreak
- but it is already defined.\MessageBreak
- It will be redefined, if you'll continue.%
- }%
- \fi
- \endgroup
- \expandafter\g@addto@macro\csname captions#1\endcsname{%
- \def#2{#3}%
- }%
- \begingroup
- \edef\@tempb{#1}%
- \@onelevel@sanitize\@tempb
- \@onelevel@sanitize\languagename
- \ifx\@tempb\languagename
- \def\@tempa{\endgroup\csname captions#1\endcsname}%
- \else
- \let\@tempa\endgroup
- \fi
- \@tempa
-}
-\newcommand*{\renewcaptionname}[3]{%
- \@ifundefined{captions#1}{%
- \ClassError{\KOMAClassName}{%
- No captions found for `#1'%
- }{%
- You've told me to redefine the caption `\string#2' at language
- `#1',\MessageBreak
- but `\expandafter\string\csname captions#1\endcsname' is not
- defined.\MessageBreak
- If you'll continue it will be defined.%
- }
- \@namedef{captions#1}{}%
- }{}%
- \begingroup
- \csname captions#1\endcsname
- \ifx #2\undefined
- \ClassError{\KOMAClassName}{%
- `\string#2' not defined at language `#1'%
- }{%
- You've told me to redefine `\string#2' at language
- `#1',\MessageBreak
- but it is not defined.\MessageBreak
- If you'll continue it will be defined.%
- }%
- \fi
- \endgroup
- \expandafter\g@addto@macro\csname captions#1\endcsname{%
- \def#2{#3}%
- }%
- \begingroup
- \edef\@tempb{#1}%
- \@onelevel@sanitize\@tempb
- \@onelevel@sanitize\languagename
- \ifx\@tempb\languagename
- \def\@tempa{\endgroup\csname captions#1\endcsname}%
- \else
- \let\@tempa\endgroup
- \fi
- \@tempa
-}
\newcommand*{\g@addnumerical@date}[2]{%
\@ifundefined{date#1}{%
\ClassInfo{%
@@ -1973,19 +1955,19 @@
\addtolength{#1}{\@tempskipa}%
\fi
}
-\g@addto@macro{\@listi}{\@list@extra}
-\let\@listI=\@listi
-\g@addto@macro{\@listii}{\@list@extra}
-\g@addto@macro{\@listiii}{\@list@extra}
+\newcommand*{\@list@extra}{%
+ \ifdim\parskip>\z@\topsep\z@\parsep\parskip\itemsep\z@\fi
+}
\newcommand*{\add@extra@listi}[1]{%
\expandafter\let\csname #1@listi\endcsname=\@listi
\def\@listi{\csname #1@listi\endcsname\@list@extra}%
}
-\g@addto@macro{\footnotesize}{\protect\add@extra@listi{ftns}}
-\g@addto@macro{\small}{\protect\add@extra@listi{sml}}
-\newcommand*{\@list@extra}{%
- \ifdim\parskip>\z@\topsep\z@\parsep\parskip\itemsep\z@\fi
-}
+ \l@addto@macro{\@listi}{\@list@extra}%
+ \let\@listI=\@listi
+ \l@addto@macro{\@listii}{\@list@extra}%
+ \l@addto@macro{\@listiii}{\@list@extra}%
+ \l@addto@macro{\footnotesize}{\protect\add@extra@listi{ftns}}%
+ \l@addto@macro{\small}{\protect\add@extra@listi{sml}}%
\@lowpenalty = 51
\@medpenalty =151
\@highpenalty =301
@@ -1997,16 +1979,18 @@
\addtolength{\@tempdima}{\marginparwidth}%
\fi
}
-\newcommand*\pnumfont{\normalfont\normalcolor}
-\newcommand*\headfont{\normalfont\normalcolor\slshape}
+\newcommand*{\pnumfont}{\normalfont\normalcolor}
+\newcommand*{\headfont}{\normalfont\normalcolor\slshape}
+\newcommand*{\footfont}{}
\newcommand*{\scr@fnt@pagenumber}{\pnumfont}
\aliaskomafont{pagination}{pagenumber}
-\newcommand*{\scr@fnt@pagehead}{\headfont}
+\newcommand*{\scr@fnt@pageheadfoot}{\headfont}
+\aliaskomafont{pagehead}{pageheadfoot}
\newcommand*{\scr@fnt@wrn@pagehead}[1]{%
- `pagehead' and `pagefoot' are aliases for the same\MessageBreak
- font element, changed%
+ `pagehead' is only an alias of `pageheadfoot'.\MessageBreak
+ Font of page foot will also be changed%
}
-\aliaskomafont{pagefoot}{pagehead}
+\newcommand*{\scr@fnt@pagefoot}{\footfont}
\newcommand*{\pagemark}{{\usekomafont{pagenumber}%
\pagename\ %
\thepage}}
@@ -2067,7 +2051,7 @@
\hrulefill\\
}%
\fi
- \vbox{\hsize=\textwidth\hbox to\textwidth{\headfont\@nextfoot}}%
+ \vbox{\hsize=\textwidth\hbox to\textwidth{\headfont\footfont\@nextfoot}}%
}%
}%
\let\@evenfoot\@oddfoot
@@ -2127,9 +2111,44 @@
\newcommand*{\ftntm@font}{}
\newcommand*{\scr@fnt@footnotereference}{\ftntm@font}
\newcommand*{\scr@fnt@footnoteref}{\ftntm@font}
+\newcommand*{\FN@mf@check}{%
+ \ifdim\lastkern=\multiplefootnotemarker\relax
+ \edef\@x@sf{\the\spacefactor}%
+ \unkern\multiplefootnoteseparator
+ \spacefactor\@x@sf\relax
+ \fi
+}
+\newcommand*{\scr@mf@prepare}{%
+ \kern-\multiplefootnotemarker
+ \kern\multiplefootnotemarker\relax
+}
+\@ifundefined{FN@mf@prepare}{}{}
+\newcommand*{\scr@saved@footnotetext}{}
+\let\scr@saved@footnotetext\@footnotetext
+\renewcommand*{\@footnotetext}[1]{%
+ \scr@saved@footnotetext{#1}%
+ \csname FN@mf@prepare\endcsname
+}
+\BeforePackage{footmisc}{%
+ \ifx\@footnotemark\scr@footnotemark
+ \let\@footnotemark\scr@saved@footnotemark
+ \fi
+ \let\@footnotetext\scr@saved@footnotetext
+}
+\newcommand*{\multiplefootnoteseparator}{%
+ \begingroup\let\thefootnotemark\multfootsep\@makefnmark\endgroup
+}
+\newcommand*{\multfootsep}{,}
+\newcommand*{\multiplefootnotemarker}{3sp}
\newcommand*{\thefootnotemark}{\@thefnmark}
\deffootnote[1em]{1.5em}{1em}{\textsuperscript{\thefootnotemark}}
\deffootnotemark{\textsuperscript{\thefootnotemark}}
+\newcommand*{\footref}[1]{%
+ \begingroup
+ \unrestored@protected@xdef\@thefnmark{\ref{#1}}%
+ \endgroup
+ \@footnotemark
+}
%%% From File: scrklist.dtx
\setlength{\leftmargini}{2.5em}
\setlength{\leftmarginii}{2.2em}
@@ -2780,7 +2799,6 @@
\@savevbox{\useplength{locheight}}{%
\noindent\hsize\useplength{locwidth}%
\ifcase\@alignfrom
- \usekomavar{location}%
\or
\if@logo
\ifkomavarempty{fromlogo}{\null}{%
@@ -2788,7 +2806,6 @@
\vskip\parskip}\noindent}%
\fi
\or
- \usekomavar{location}%
\or
\if@logo
\ifkomavarempty{fromlogo}{}{%
@@ -2866,8 +2883,8 @@
\fi
\\
}%
- \usekomavar{location}%
\fi
+ \usekomavar{location}%
\vskip \z@ \@plus .00001fil}%
{location field}{locheight}{\setkomavar}%
}}%
diff --git a/Master/texmf-dist/tex/latex/koma-script/scrpage.sty b/Master/texmf-dist/tex/latex/koma-script/scrpage.sty
index 57d06c2d22e..b77ac7d5f40 100644
--- a/Master/texmf-dist/tex/latex/koma-script/scrpage.sty
+++ b/Master/texmf-dist/tex/latex/koma-script/scrpage.sty
@@ -39,7 +39,7 @@
%%
%%% From File: scrpage.dtx
\NeedsTeXFormat{LaTeX2e}[1995/06/01]
-\ProvidesPackage{scrpage}[2006/03/29 v1.3d KOMA-Script
+\ProvidesPackage{scrpage}[2008/02/29 v1.3e KOMA-Script
package]
\DeclareOption{headinclude}{\PassOptionsToPackage{headinclude}{typearea}}
\DeclareOption{headexclude}{\PassOptionsToPackage{headexclude}{typearea}}
@@ -90,7 +90,7 @@ headinclude,footinclude%
\markboth {\ifnum \c@secnumdepth >\z@%
\if@mainmatter\sectionmarkformat\fi\fi ####1}{%
\ifnum \c@secnumdepth >\z@%
- \ifmainmatter\sectionmarkformat\fi\fi ####1}}%
+ \if@mainmatter\sectionmarkformat\fi\fi ####1}}%
\def\subsectionmark####1{%
\markright {\ifnum \c@secnumdepth >\@ne%
\subsectionmarkformat\fi ####1}}%
@@ -176,12 +176,12 @@ headinclude,footinclude%
\def\@evenfoot{\let\headmark\leftmark
\hss\hskip\@evenfootshift\vbox{\hsize=\@footwidth\relax
\topfoot@rule{#1}{#2}\hb@xt@\@footwidth{{%
- \headfont\strut #3}}%
+ \headfont\footfont\strut #3}}%
\botfoot@rule{#6}{#7}}\hskip\@oddfootshift\hss}%
\def\@oddfoot{\let\headmark\rightmark
\hss\hskip\@oddfootshift\vbox{\hsize=\@footwidth\relax
\topfoot@rule{#1}{#2}\hb@xt@\@footwidth{{%
- \headfont\strut #4}}%
+ \headfont\footfont\strut #4}}%
\botfoot@rule{#6}{#7}}\hskip\@evenfootshift\hss}%
}
\def\def@onesidefoot(#1,#2)#3#4#5(#6,#7){%
@@ -189,7 +189,7 @@ headinclude,footinclude%
\def\@oddfoot{\let\headmark\rightmark
\hss\hskip\@oddfootshift\vbox{\hsize=\@footwidth\relax
\topfoot@rule{#1}{#2}\hb@xt@\@footwidth{{%
- \headfont\strut #5}}
+ \headfont\footfont\strut #5}}
\botfoot@rule{#6}{#7}}\hskip\@evenfootshift\hss}%
}
\newcommand\topfoot@rule[2]{%
@@ -408,8 +408,8 @@ headinclude,footinclude%
\newcommand*{\@footwidth}{\textwidth}%
\newcommand*{\@oddfootshift}{\z@}%
\newcommand*{\@evenfootshift}{\z@}%
-\providecommand\pnumfont{\normalfont}
-\providecommand\headfont{\normalfont%
+\providecommand*{\pnumfont}{\normalfont}
+\providecommand*{\headfont}{\normalfont%
}
\providecommand{\partmarkformat} {\partname\ \thepart. \ }
\if@chapter
diff --git a/Master/texmf-dist/tex/latex/koma-script/scrpage2.sty b/Master/texmf-dist/tex/latex/koma-script/scrpage2.sty
index 8189fd75643..148e307167a 100644
--- a/Master/texmf-dist/tex/latex/koma-script/scrpage2.sty
+++ b/Master/texmf-dist/tex/latex/koma-script/scrpage2.sty
@@ -40,7 +40,7 @@
%%% From File: scrpage.dtx
\NeedsTeXFormat{LaTeX2e}[1995/06/01]
\ProvidesPackage{scrpage2}
- [2007/07/23 v2.2e LaTeX2e KOMA-Script
+ [2008/02/14 v2.2f LaTeX2e KOMA-Script
package]
\DeclareOption{headinclude}{\PassOptionsToPackage{headinclude}{typearea}}
\DeclareOption{headexclude}{\PassOptionsToPackage{headexclude}{typearea}}
@@ -246,13 +246,13 @@
\hss\hskip\@evenfootshift\vbox{\hsize=\@footwidth\relax
\topfoot@rule{#1}{#2}\hb@xt@\@footwidth{{%
\scr@nouppercase
- \headfont\strut #3}}%
+ \headfont\footfont\strut #3}}%
\botfoot@rule{#6}{#7}}\hskip\@oddfootshift\hss}%
\def\@oddfoot{\let\headmark\rightmark
\hss\hskip\@oddfootshift\vbox{\hsize=\@footwidth\relax
\topfoot@rule{#1}{#2}\hb@xt@\@footwidth{{%
\scr@nouppercase
- \headfont\strut #4}}%
+ \headfont\footfont\strut #4}}%
\botfoot@rule{#6}{#7}}\hskip\@evenfootshift\hss}%
}
\def\def@onesidefoot{%
@@ -272,7 +272,7 @@
\hss\hskip\@oddfootshift\vbox{\hsize=\@footwidth\relax
\topfoot@rule{#1}{#2}\hb@xt@\@footwidth{{%
\scr@nouppercase
- \headfont\strut #5}}
+ \headfont\footfont\strut #5}}
\botfoot@rule{#6}{#7}}\hskip\@evenfootshift\hss}%
}
\newcommand\topfoot@rule[2]{%
@@ -674,10 +674,17 @@
\fi
}
\fi
-\providecommand\pnumfont{\normalfont}
-\providecommand\headfont{\normalfont%
+\providecommand*{\pnumfont}{\normalfont}
+\providecommand*{\headfont}{\normalfont%
\slshape%
}
+\def\scr@fnt@wrn@pagehead#1{%
+ `pagehead' is only an alias of `pageheadfoot'.\MessageBreak
+ Font of page foot may also be changed%
+}
+\providecommand*{\footfont}{\normalfont}
+\providecommand*{\scr@fnt@pagefoot}{\footfont}
+\let\scr@fnt@wrn@pagefoot\relax
\newcommand*{\setheadtopline}{\scr@setline{head}{above}}
\newcommand*{\setheadsepline}{\scr@setline{head}{below}}
\newcommand*{\setfootsepline}{\scr@setline{foot}{above}}
diff --git a/Master/texmf-dist/tex/latex/koma-script/scrreprt.cls b/Master/texmf-dist/tex/latex/koma-script/scrreprt.cls
index 77f91c54c57..fcd7a998153 100644
--- a/Master/texmf-dist/tex/latex/koma-script/scrreprt.cls
+++ b/Master/texmf-dist/tex/latex/koma-script/scrreprt.cls
@@ -6,6 +6,7 @@
%%
%% scrkvers.dtx (with options: `class,report')
%% scrkbase.dtx (with options: `load')
+%% tocbasic.dtx (with options: `load')
%% scrkcomp.dtx (with options: `class,report,option')
%% scrkmisc.dtx (with options: `class,report,option')
%% scrklang.dtx (with options: `class,report,option')
@@ -91,7 +92,7 @@
\fi
}
\fi
- \@CheckKOMAScriptVersion{2007/12/24 v2.98 KOMA-Script}%
+ \@CheckKOMAScriptVersion{2008/11/03 v3.00 KOMA-Script}%
\endgroup
\newcommand*{\KOMAClassName}{%
scrreprt%
@@ -104,6 +105,13 @@
]
%%% From File: scrkbase.dtx
\RequirePackage{scrkbase}[\KOMAScriptVersion]
+%%% From File: tocbasic.dtx
+\def\tocbasicversion{2008/10/06 v1.0}
+\edef\@tempa{\noexpand\RequirePackage{tocbasic}[\tocbasicversion]}
+\@tempa
+\addtotoclist{toc}
+\addtotoclist[float]{lof}
+\addtotoclist[float]{lot}
%%% From File: scrkcomp.dtx
\newcommand*{\scr@compatibility}{0}
\KOMA@key{version}[last]{%
@@ -123,7 +131,8 @@
\ClassError{\KOMAClassName}{%
Option `version' too late%
}{%
- Option `version' may be set only while loading the class.\MessageBreak
+ Option `version' may be set only while loading the
+ class.\MessageBreak
But you've tried to set it up later.%
}%
}%
@@ -144,7 +153,11 @@
\@namedef{scr@v@2.97d}{5}
\@namedef{scr@v@2.97e}{6}
\@namedef{scr@v@2.98}{6}
-\@namedef{scr@v@last}{6}
+\@namedef{scr@v@2.98a}{6}
+\@namedef{scr@v@2.98b}{6}
+\@namedef{scr@v@2.98c}{7}
+\@namedef{scr@v@3.00}{8}
+\@namedef{scr@v@last}{8}
%%% From File: scrkmisc.dtx
\KOMA@key{draft}[true]{%
\KOMA@set@ifkey{draft}{@tempswa}{#1}%
@@ -169,16 +182,41 @@
\def\@pt@@scan #1pt#2\@pt@@scan{%
\ifstr{#2}{pt}{%
\ifnumber{#1}{%
- \KOMA@UseObsoleteOption{\PackageInfoNoLine}{#1#2}{fontsize=#1#2}%
+ \KOMA@UseObsoleteOption{\PackageInfoNoLine{\KOMAClassName}}%
+ {#1#2}{fontsize=#1#2}%
}{\@headlines}%
}{\@headlines}%
}
+\providecommand*{\@fontsizefilebase}{scrsize}
\KOMA@key{fontsize}{%
\scr@ifundefinedorrelax{changefontsizes}{%
\@defaultunits\@tempdima#1pt\relax\@nnil
\edef\@ptsize{#1}%
}{%
- \changefontsizes{#1}%
+ \expandafter\@defaultunits\expandafter\@tempdima#1 pt\relax\@nnil
+ \edef\@tempa{#1}%
+ \setlength{\@tempdimb}{\@tempdima}%
+ \edef\@tempb{\strip@pt\@tempdimb}%
+ \addtolength{\@tempdimb}{-10\p@}%
+ \edef\@ptsize{\strip@pt\@tempdimb}%
+ \edef\@tempa{%
+ \noexpand\makeatletter
+ \noexpand\InputIfFileExists{\@fontsizefilebase\@tempa.clo}{%
+ \noexpand\ClassInfo{\KOMAClassName}{%
+ File `\@fontsizefilebase\@tempa.clo' used to setup font sizes}%
+ }{%
+ \noexpand\InputIfFileExists{\@fontsizefilebase\@tempb pt.clo}{%
+ \noexpand\ClassInfo{\KOMAClassName}{%
+ File `\@fontsizefilebase\@tempb pt.clo' used instead of%
+ \noexpand\MessageBreak
+ file `\@fontsizefilebase\@tempa.clo' to setup font sizes}%
+ }{%
+ \noexpand\changefontsizes{#1}%
+ }%
+ }%
+ \noexpand\catcode`\noexpand\@=\the\catcode`\@
+ }%
+ \@tempa
}%
}
%%% From File: scrktare.dtx
@@ -244,7 +282,7 @@
}
\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{oneside}{twoside=false}
\KOMA@key{twocolumn}[true]{%
- \if@atdocument\else\PassOptionsToPackage{twoside=#1}{typearea}\fi%
+ \if@atdocument\else\PassOptionsToPackage{twocolumn=#1}{typearea}\fi%
}
\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{onecolumn}{twocolumn=false}
\DeclareOption*{%
@@ -354,66 +392,134 @@
\endgroup
\fi
}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{parskip-}{parskip=full-}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{parskip+}{parskip=full+}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{parskip*}{parskip=full*}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{halfparskip}{parskip=half}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{halfparskip-}{parskip=half-}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{halfparskip+}{parskip=half+}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{halfparskip*}{parskip=half*}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{parindent}{parskip=false}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{parskip-}{parskip=full-}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{parskip+}{parskip=full+}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{parskip*}{parskip=full*}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{halfparskip}{parskip=half}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{halfparskip-}{parskip=half-}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{halfparskip+}{parskip=half+}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{halfparskip*}{parskip=half*}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{parindent}{parskip=false}
%%% From File: scrktitl.dtx
\newif\if@titlepage
\@titlepagetrue
-\KOMA@ifkey{titlepage}{@titlepage}
-\KOMA@DeclareObsoleteOption[\ClassInfo]{notitlepage}{titlepage=false}
+\KOMA@ifkey{titlepage}{@titlepage}%
+\KOMA@DeclareObsoleteOption%
+ [\PackageInfoNoLine]%
+ {notitlepage}{titlepage=false}
\newif\if@abstrt\@abstrtfalse
\KOMA@ifkey{abstract}{@abstrt}
-\KOMA@DeclareObsoleteOption[\ClassInfo]{abstracton}{abstract=true}
-\KOMA@DeclareObsoleteOption[\ClassInfo]{abstractoff}{abstract=false}
+\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{abstracton}{abstract=true}
+\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{abstractoff}{abstract=false}
%%% From File: scrksect.dtx
\newif\if@openright
\@openrightfalse
-\DeclareOption{openright}{\@openrighttrue}
-\DeclareOption{openany}{\@openrightfalse}
-\DeclareOption{pointednumbers}{%
- \AtEndOfClass{\@altsecnumformattrue
- \global\let\@altsecnumformatfalse\@altsecnumformattrue}%
-}
-\DeclareOption{pointednumber}{%
- \AtEndOfClass{\@altsecnumformattrue
- \global\let\@altsecnumformatfalse\@altsecnumformattrue}%
+\KOMA@key{open}{%
+ \KOMA@set@ncmdkey{open}{@tempa}{%
+ {any}{0},%
+ {right}{1},%
+ {left}{2}%
+ }{#1}%
+ \ifcase \@tempa\relax
+ \@openrightfalse
+ \renewcommand*{\cleardoublestandardpage}{\cleardoubleoddstandardpage}%
+ \or
+ \@openrighttrue
+ \renewcommand*{\cleardoublestandardpage}{\cleardoubleoddstandardpage}%
+ \or
+ \@openrighttrue
+ \renewcommand*{\cleardoublestandardpage}{\cleardoubleevenstandardpage}%
+ \fi
+}
+\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{openright}{open=right}
+\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{openany}{open=any}
+%% \fi
+\newcommand*{\scr@dotchangeatdocument}[1]{%
\ClassError{\KOMAClassName}{%
- undefined option `pointednumber' instead of `pointednumbers'%
+ change of end dot feature after \string\begin{document}%
}{%
- You've used the class-option `pointednumber'.\MessageBreak
- This name was an implementation-error at versions from 2.3h till
- 2.4f.\MessageBreak
- The correct name is `pointednumbers'.
- Change this at your document.\MessageBreak
- If you'll continue, the option `pointednumbers' will be used%
+ 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.%
}%
}
-\DeclareOption{pointlessnumbers}{%
- \AtEndOfClass{\@altsecnumformatfalse
- \global\let\@altsecnumformattrue\@altsecnumformatfalse}%
+\KOMA@key{numbers}{%
+ \KOMA@set@ncmdkey{numbers}{@tempa}{%
+ {autoendperiod}{0},{autoenddot}{0},{auto}{0},%
+ {endperiod}{1},{withendperiod}{1},{periodatend}{1},%
+ {enddot}{1},{withenddot}{1},{dotatend}{1},%
+ {noendperiod}{2},{noperiodatend}{2},%
+ {noenddot}{2},{nodotatend}{2}%
+ }{#1}%
+ \ifcase \@tempa\relax
+ \if@atdocument\scr@dotchangeatdocument{#1}\else
+ \let\scr@altsecnumhook\@empty
+ \fi
+ \or
+ \if@atdocument\scr@dotchangeatdocument{#1}\else
+ \let\scr@altsecnumhook\scr@altsecnumhooktrue
+ \fi
+ \or
+ \if@atdocument\scr@dotchangeatdocument{#1}\else
+ \let\scr@altsecnumhook\scr@altsecnumhookfalse
+ \fi
+ \fi
}
-\DeclareOption{pointlessnumber}{%
- \AtEndOfClass{\@altsecnumformatfalse
- \global\let\@altsecnumformattrue\@altsecnumformatfalse}%
- \ClassError{\KOMAClassName}{%
- undefined option `pointlessnumber' instead of `pointlessnumbers'%
- }{%
- You've used the class-option `pointlessnumber'.\MessageBreak
- This name was an implementation-error at versions from 2.3h till
- 2.4f.\MessageBreak
- The correct name is `pointlessnumbers'.
- Change this at your document.\MessageBreak
- If you'll continue, the option `pointlessnumbers' will be used%
- }%
+\newcommand*{\scr@altsecnumhook}{}
+\AtBeginDocument{\scr@altsecnumhook}
+\newcommand*{\scr@altsecnumhooktrue}{%
+ \@altsecnumformattrue\global\let\@altsecnumformatfalse\@altsecnumformattrue
+}
+\newcommand*{\scr@altsecnumhookfalse}{%
+ \@altsecnumformatfalse\global\let\@altsecnumformattrue\@altsecnumformatfalse
+}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{pointednumbers}%
+ {numbers=enddot}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{pointlessnumbers}%
+ {numbers=noenddot}
+\newif\if@chapterprefix\@chapterprefixfalse
+\KOMA@ifkey{chapterprefix}{@chapterprefix}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{nochapterprefix}%
+ {chapterprefix=false}
+\KOMA@key{appendixprefix}[true]{%
+ \KOMA@set@ifkey{appendixprefix}{@tempswa}{#1}%
+ \if@tempswa
+ \def\appendixmore{\@chapterprefixtrue}%
+ \else
+ \def\appendixmore{\@chapterprefixfalse}%
+ \fi
}
-\newcommand\@bigheadings{%
- \AtEndOfClass{%
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{noappendixprefix}%
+ {appendixprefix=false}
+\newcommand*{\size@part}{}
+\newcommand*{\size@partnumber}{}
+\newcommand*{\size@chapter}{}
+\newcommand*{\size@chapterprefix}{\size@chapter}
+\newcommand*{\size@section}{}
+\newcommand*{\size@subsection}{}
+\newcommand*{\size@subsubsection}{}
+\newcommand*{\size@paragraph}{}
+\newcommand*{\size@subparagraph}{}
+\newcommand*{\chapterheadstartvskip}{}
+\newcommand*{\chapterheadendvskip}{}
+\KOMA@key{headings}{%
+ \KOMA@set@ncmdkey{headings}{@tempa}{%
+ {big}{0},%
+ {normal}{1},%
+ {small}{2}%
+ ,{openany}{3},%
+ {openright}{4},%
+ {openleft}{5}%
+ ,{twolinechapter}{6},{chapterprefix}{6},{chapterwithprefix}{6},%
+ {chapterwithprefixline}{6},%
+ {onelinechapter}{7},{nochapterprefix}{7},{chapterwithoutprefix}{7},%
+ {chapterwithoutprefixline}{7}%
+ ,{twolineappendix}{8},{appendixprefix}{8},{appendixwithprefix}{8},%
+ {appendixwithprefixline}{8},%
+ {onelineappendix}{9},{noappendixprefix}{9},{appendixwithoutprefix}{9},%
+ {appendixwithoutprefixline}{9}%
+ }{#1}%
+ \ifcase \@tempa\relax
\renewcommand*{\chapterheadstartvskip}{%
\vspace*{2.3\baselineskip}%
}%
@@ -421,32 +527,15 @@
\vspace{1.725\baselineskip
\@plus .115\baselineskip \@minus .192\baselineskip}%
}%
- \let\size@part\Huge
- \let\size@partnumber\huge
- \let\size@chapter\huge
- \let\size@section\Large
- \let\size@subsection\large
- \let\size@subsubsection\normalsize
- \let\size@paragraph\normalsize
- \let\size@subparagraph\normalsize
- }%
-}
-\DeclareOption{bigheadings}{\@bigheadings}
-\DeclareOption{bigheading}{%
- \@bigheadings
- \ClassError{\KOMAClassName}{%
- undefined option `bigheading' instead of `bigheadings'%
- }{%
- You've used the old option name `bigheading'!\MessageBreak
- The correct name of the option is `bigheadings'.\MessageBreak
- The old name was an implementation error from\MessageBreak
- version 2.3h till 2.4f.\MessageBreak
- You should change this at your document!\MessageBreak
- If you'll continue, option `bigheadings' will be used%
- }%
-}
-\newcommand\@normalheadings{%
- \AtEndOfClass{%
+ \renewcommand*{\size@part}{\Huge}%
+ \renewcommand*{\size@partnumber}{\huge}%
+ \renewcommand*{\size@chapter}{\huge}%
+ \renewcommand*{\size@section}{\Large}%
+ \renewcommand*{\size@subsection}{\large}%
+ \renewcommand*{\size@subsubsection}{\normalsize}%
+ \renewcommand*{\size@paragraph}{\normalsize}%
+ \renewcommand*{\size@subparagraph}{\normalsize}%
+ \or
\renewcommand*{\chapterheadstartvskip}{%
\vspace*{2\baselineskip}%
}%
@@ -454,32 +543,15 @@
\vspace{1.5\baselineskip
\@plus .1\baselineskip \@minus .167\baselineskip}%
}%
- \let\size@part\huge
- \let\size@partnumber\huge
- \let\size@chapter\LARGE
- \let\size@section\Large
- \let\size@subsection\large
- \let\size@subsubsection\normalsize
- \let\size@paragraph\normalsize
- \let\size@subparagraph\normalsize
- }%
-}
-\DeclareOption{normalheadings}{\@normalheadings}
-\DeclareOption{normalheading}{%
- \@normalheadings
- \ClassError{\KOMAClassName}{%
- undefined option `normalheading' instead of `normalheadings'%
- }{%
- You've used the old option name `normalheading'!\MessageBreak
- The correct name of the option is `normalheadings'.\MessageBreak
- The old name was an implementation error from\MessageBreak
- version 2.3h till 2.4f.\MessageBreak
- You should change this at your document!\MessageBreak
- If you'll continue, option `normalheadings' will be used%
- }%
-}
-\newcommand\@smallheadings{%
- \AtEndOfClass{
+ \renewcommand*{\size@part}{\huge}%
+ \renewcommand*{\size@partnumber}{\huge}%
+ \renewcommand*{\size@chapter}{\LARGE}%
+ \renewcommand*{\size@section}{\Large}%
+ \renewcommand*{\size@subsection}{\large}%
+ \renewcommand*{\size@subsubsection}{\normalsize}%
+ \renewcommand*{\size@paragraph}{\normalsize}%
+ \renewcommand*{\size@subparagraph}{\normalsize}%
+ \or
\renewcommand*{\chapterheadstartvskip}{%
\vspace*{1.8\baselineskip}%
}%
@@ -487,62 +559,50 @@
\vspace{1.35\baselineskip
\@plus 0.09\baselineskip \@minus .15\baselineskip}%
}%
- \let\size@part\LARGE
- \let\size@partnumber\LARGE
- \let\size@chapter\Large
- \let\size@section\large
- \let\size@subsection\normalsize
- \let\size@subsubsection\normalsize
- \let\size@paragraph\normalsize
- \let\size@subparagraph\normalsize
- }%
-}
-\DeclareOption{smallheadings}{\@smallheadings}
-\DeclareOption{smallheading}{%
- \@smallheadings
- \ClassError{\KOMAClassName}{%
- undefined option `smallheading' instead of `smallheadings'%
- }{%
- You've used the old option name `smallheading'!\MessageBreak
- The correct name of the option is `smallheadings'.\MessageBreak
- The old name was an implementation error from\MessageBreak
- version 2.3h till 2.4f.\MessageBreak
- You should change this at your document!\MessageBreak
- If you'll continue, option `smallheadings' will be used%
- }%
-}
-\@bigheadings
-\newif\if@chapterprefix\@chapterprefixfalse
-\KOMA@ifkey{chapterprefix}{@chapterprefix}
-\KOMA@DeclareObsoleteOption{nochapterprefix}{chapterprefix=false}
-\KOMA@key{appendixprefix}[true]{%
- \KOMA@set@ifkey{appendixprefix}{@tempswa}{#1}%
- \if@tempswa
- \def\appendixmore{\@chapterprefixtrue}%
- \else
- \def\appendixmore{\@chapterprefixfalse}%
+ \renewcommand*{\size@part}{\LARGE}%
+ \renewcommand*{\size@partnumber}{\LARGE}%
+ \renewcommand*{\size@chapter}{\Large}%
+ \renewcommand*{\size@section}{\large}%
+ \renewcommand*{\size@subsection}{\normalsize}%
+ \renewcommand*{\size@subsubsection}{\normalsize}%
+ \renewcommand*{\size@paragraph}{\normalsize}%
+ \renewcommand*{\size@subparagraph}{\normalsize}%
+ \or
+ \KOMA@options{open=any}{}%
+ \or
+ \KOMA@options{open=right}{}%
+ \or
+ \KOMA@options{open=left}{}%
+ \or
+ \KOMA@options{chapterprefix=true}{}%
+ \or
+ \KOMA@options{chapterprefix=false}{}%
+ \or
+ \KOMA@options{appendixprefix=true}{}%
+ \or
+ \KOMA@options{appendixprefix=false}{}%
\fi
}
-\KOMA@DeclareObsoleteOption[\ClassInfo]{noappendixprefix}{%
- appendixprefix=false}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{bigheadings}%
+ {headings=big}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{normalheadings}%
+ {headings=normal}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{smallheadings}%
+ {headings=small}
%%% From File: scrkpage.dtx
\newif\if@hsl
\KOMA@key{headsepline}[true]{%
\KOMA@set@ifkey{headsepline}{@hsl}{#1}%
- \@ifpackageloaded{typearea}{%
- \KOMAoptions{headinclude=#1}%
- }{}%
+ \KOMA@options{headinclude=#1}{}%
}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{headnosepline}{%
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{headnosepline}{%
headsepline=false}
\newif\if@fsl
\KOMA@key{footsepline}[true]{%
\KOMA@set@ifkey{footsepline}{@fsl}{#1}%
- \@ifpackageloaded{typearea}{%
- \KOMAoptions{footinclude=#1}%
- }{}%
+ \KOMA@options{footinclude=#1}{}%
}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{footnosepline}{%
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{footnosepline}{%
footsepline=false}
\@twosidefalse
\KOMA@key{cleardoublepage}{%
@@ -554,81 +614,263 @@
}%
\ifstr{#1}{current}{%
\def\@tempc{\endgroup%
- \let\cleardoublepage\cleardoublestandardpage
+ \def\cleardoublepage{\cleardoublestandardpage}%
+ \def\cleardoubleoddpage{\cleardoubleoddstandardpage}%
+ \def\cleardoubleevenpage{\cleardoubleevenstandardpage}%
}%
}{%
\ifnotundefined{ps@#1}{%
\def\@tempc{\endgroup%
\def\cleardoublepage{\cleardoublepageusingstyle{#1}}%
+ \def\cleardoubleoddpage{\cleardoubleoddpageusingstyle{#1}}%
+ \def\cleardoubleevenpage{\cleardoubleevenpageusingstyle{#1}}%
}%
}{}%
}%
\@tempc
}
-\newcommand*{\cleardoublestandardpage}{}
-\let\cleardoublestandardpage\cleardoublepage
+\newcommand*{\cleardoubleoddstandardpage}{}
+\let\cleardoubleoddstandardpage=\cleardoublepage
+\newcommand*{\cleardoubleoddpageusingstyle}[1]{\clearpage
+ {\thispagestyle{#1}\cleardoubleoddstandardpage}}
+\newcommand*{\cleardoubleoddemptypage}{\cleardoubleoddpageusingstyle{empty}}
+\newcommand*{\cleardoubleoddplainpage}{\cleardoubleoddpageusingstyle{plain}}
+\newcommand*{\cleardoubleevenstandardpage}{%
+ \clearpage
+ \if@twoside\ifodd\c@page
+ \hbox{}\newpage\if@twocolumn\hbox{}\newpage\fi
+ \fi\fi
+}
+\newcommand*{\cleardoubleevenpageusingstyle}[1]{\clearpage
+ {\thispagestyle{#1}\cleardoubleevenstandardpage}}
+\newcommand*{\cleardoubleevenemptypage}{\cleardoubleevenpageusingstyle{empty}}
+\newcommand*{\cleardoubleevenplainpage}{\cleardoubleevenpageusingstyle{plain}}
+\newcommand*{\cleardoublestandardpage}{\cleardoubleoddstandardpage}
+\renewcommand*{\cleardoublepage}{%
+ \expandafter\ifnum \@nameuse{scr@v@2.98c}<\scr@compatibility\relax
+ \cleardoubleemptypage
+ \else
+ \cleardoublestandardpage
+ \fi
+}
+\newcommand*{\cleardoubleoddpage}{\cleardoubleoddemptypage}
+\newcommand*{\cleardoubleevenpage}{\cleardoubleevenemptypage}
\newcommand*{\cleardoublepageusingstyle}[1]{\clearpage
{\thispagestyle{#1}\cleardoublestandardpage}}
\newcommand*{\cleardoubleemptypage}{\cleardoublepageusingstyle{empty}}
\newcommand*{\cleardoubleplainpage}{\cleardoublepageusingstyle{plain}}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{cleardoubleempty}{%
- cleardoublepage=empty%
-}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{cleardoubleplain}{%
- cleardoublepage=plain%
-}
-\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{cleardoublestandard}{%
- cleardoublepage=current%
-}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{cleardoubleempty}%
+ {cleardoublepage=empty}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{cleardoubleplain}%
+ {cleardoublepage=plain}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{cleardoublestandard}%
+ {cleardoublepage=current}
%%% From File: scrkfloa.dtx
\newif\if@tablecaptionabove\@tablecaptionabovefalse
-\DeclareOption{tablecaptionabove}{\@tablecaptionabovetrue}
-\DeclareOption{tablecaptionbelow}{\@tablecaptionabovefalse}
-\newif\if@komalongtable\@komalongtabletrue
-\DeclareOption{origlongtable}{\@komalongtablefalse}
\newif\ifonelinecaptions\onelinecaptionstrue
-\DeclareOption{onelinecaption}{\onelinecaptionstrue
- \PassOptionsToPackage{oneline}{caption2}%
-}
-\DeclareOption{noonelinecaption}{\onelinecaptionsfalse
- \PassOptionsToPackage{nooneline}{caption2}%
+\newcommand*{\scap@pos}{r}
+\newcommand*{\scap@valign}{b}
+\KOMA@key{captions}{%
+ \KOMA@set@ncmdkey{captions}{@tempa}{%
+ {tableheading}{0},%
+ {tableabove}{0},{abovetable}{0},{abovetabular}{0},{topattable}{0},%
+ {tablesignature}{1},%
+ {tablebelow}{1},{belowtable}{1},{belowtabular}{1},{bottomattable}{1},%
+ {oneline}{2},%
+ {nooneline}{3},%
+ {rightbeside}{4},{besideright}{4},%
+ {leftbeside}{5},{besideleft}{5},%
+ {innerbeside}{6},{besideinner}{6},%
+ {outerbeside}{7},{besideouter}{7},%
+ {topbeside}{8},{besidetop}{8},%
+ {centeredbeside}{9},{besidecentered}{9},%
+ {middlebeside}{9},{besidemiddle}{9},%
+ {bottombeside}{10},{besidebottom}{10}%
+ }{#1}%
+ \ifcase \@tempa\relax
+ \@tablecaptionabovetrue
+ \or
+ \@tablecaptionabovefalse
+ \or
+ \onelinecaptionstrue
+ \or
+ \onelinecaptionsfalse
+ \or
+ \renewcommand*{\scap@pos}{r}%
+ \or
+ \renewcommand*{\scap@pos}{l}%
+ \or
+ \renewcommand*{\scap@pos}{i}%
+ \or
+ \renewcommand*{\scap@pos}{o}%
+ \or
+ \renewcommand*{\scap@valign}{t}%
+ \or
+ \renewcommand*{\scap@valign}{c}%
+ \or
+ \renewcommand*{\scap@valign}{b}%
+ \fi
}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{tablecaptionabove}%
+ {captions=tableheading}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{tablecaptionbelow}%
+ {captions=tablesignature}
+\newif\if@komalongtable\@komalongtabletrue
+\DeclareOption{origlongtable}{\@komalongtablefalse}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{onelinecaption}
+ {captions=oneline}
+\KOMA@DeclareObsoleteOption[\PackageWarningNoLine]{noonelinecaption}
+ {captions=nooneline}
%%% From File: scrkftn.dtx
-%%% From File: scrkliof.dtx
-\newif\if@tocleft
-\DeclareOption{tocleft}{\@toclefttrue}
-\DeclareOption{tocindent}{\@tocleftfalse}
-\DeclareOption{liststotoc}{%
- \AtEndOfClass{%
- \renewcommand*{\float@listhead}[1]{%
- \addchap{#1}
- \@mkboth{#1}{#1}%
- \if@dynlist
- \newcommand*{\scr@starttoc}{}%
- \let\scr@starttoc=\@starttoc
- \renewcommand*{\@starttoc}[1]{%
- \before@starttoc{##1}\scr@starttoc{##1}\after@starttoc{##1}}%
- \fi
+\KOMA@key{footnotes}{%
+ \ifx\@footnotemark\scr@saved@footnotemark
+ \else
+ \ifx\@footnotemark\scr@footnotemark
+ \else
+ \ClassWarning{\KOMAClassName}{%
+ Change of `\string\@footnotemark' detected!\MessageBreak
+ Use of `footnotes=#1' may break\MessageBreak
+ another package!\MessageBreak
+ Maybe you should remove the usage of\MessageBreak
+ option `footnotes=#1'}%
+ \fi
+ \fi
+ \ifstr{#1}{multiple}{%
+ \let\@footnotemark\scr@footnotemark
+ \let\FN@mf@prepare\scr@mf@prepare
+ \def\scr@footmisc@options{multiple}%
+ }{%
+ \ifstr{#1}{nomultiple}{%
+ \let\@footnotemark\scr@saved@footnotemark
+ \let\FN@mf@prepare\relax
+ \let\scr@footmisc@options\@empty
+ }{%
+ \KOMA@unknown@keyval{footnotes}{#1}{`multiple' and `nomultiple'}%
}%
}%
}
-\DeclareOption{liststotocnumbered}{%
- \AtEndOfClass{%
- \renewcommand*{\float@listhead}[1]{%
- \chapter{#1}
- \@mkboth{\chaptermarkformat #1}{\chaptermarkformat #1}%
- \if@dynlist
- \newcommand*{\scr@starttoc}{}%
- \let\scr@starttoc=\@starttoc
- \renewcommand*{\@starttoc}[1]{%
- \before@starttoc{##1}\scr@starttoc{##1}\after@starttoc{##1}}%
- \fi
- }%
- }%
+\newcommand*{\scr@footmisc@options}{}
+\PassOptionsToPackage{\noexpand\scr@footmisc@options}{footmisc}
+\newcommand*{\scr@saved@footnotemark}{%
+ \leavevmode
+ \ifhmode\edef\@x@sf{\the\spacefactor}\nobreak\fi
+ \@makefnmark
+ \ifhmode\spacefactor\@x@sf\fi
+ \relax}
+\expandafter\CheckCommand\expandafter*\expandafter\@footnotemark
+\expandafter{\scr@saved@footnotemark}
+\newcommand*{\scr@footnotemark}{%
+ \leavevmode
+ \ifhmode\edef\@x@sf{\the\spacefactor}\FN@mf@check\nobreak\fi
+ \@makefnmark
+ \csname FN@mf@prepare\endcsname
+ \ifhmode\spacefactor\@x@sf\fi
+ \relax}
+%%% From File: scrkliof.dtx
+\newif\if@tocleft
+\KOMA@key{toc}{%
+ \KOMA@set@ncmdkey{toc}{@tempa}{%
+ {noindex}{0},{noidx}{0},%
+ {index}{1},{idx}{1},%
+ {nolistof}{2},%
+ {listof}{3},%
+ {listofnumbered}{4},{numberedlistof}{4},%
+ {nobibliography}{5},{nobib}{5},%
+ {bibliography}{6},{bib}{6},%
+ {bibliographynumbered}{7},{bibnumbered}{7},{numberedbibliography}{7},%
+ {numberedbib}{7},%
+ {flat}{8},{left}{8},%
+ {graduated}{9},{indent}{9},{indented}{9}%
+ }{#1}%
+ \ifcase \@tempa\relax
+ \KOMA@options{index=notoc}{}%
+ \or
+ \KOMA@options{index=totoc}{}%
+ \or
+ \KOMA@options{listof=notoc}{}%
+ \or
+ \KOMA@options{listof=totoc}{}%
+ \or
+ \KOMA@options{listof=numbered}{}%
+ \or
+ \KOMA@options{bibliography=nottotoc}{}%
+ \or
+ \KOMA@options{bibliography=totoc}{}%
+ \or
+ \KOMA@options{bibliography=totocnumbered}{}%
+ \or
+ \@toclefttrue
+ \or
+ \@tocleftfalse
+ \fi
+}
+\KOMA@DeclareObsoleteOption[\ClassWarningNoLine]{tocleft}{toc=flat}
+\KOMA@DeclareObsoleteOption[\ClassWarningNoLine]{tocindent}{toc=graduated}
+\newcommand*{\float@@listhead}{%
+ \chapter*
}
\newif\if@dynlist
-\DeclareOption{listsleft}{\@dynlisttrue}
-\DeclareOption{listsindent}{\@dynlistfalse}
+\KOMA@key{listof}{%
+ \KOMA@set@ncmdkey{listof}{@tempa}{%
+ {notoc}{0},{nottotoc}{0},{plainheading}{0},%
+ {totoc}{1},{toc}{1},{notnumbered}{1},%
+ {numbered}{2},{totocnumbered}{2},{tocnumbered}{2},{numberedtotoc}{2},%
+ {numberedtoc}{2},%
+ {flat}{3},{left}{3},%
+ {graduated}{4},{indent}{4},{indented}{4},%
+ {leveldown}{5},
+ {chapterentry}{6},{withchapterentry}{6},%
+ {nochaptergap}{7},{ignorechapter}{7},%
+ {chaptergapsmall}{8},{smallchaptergap}{8},%
+ {chaptergapline}{9},{onelinechaptergap}{9}%
+ }{#1}%
+ \ifcase \@tempa\relax
+ \renewcommand*{\float@@listhead}{%
+ \chapter*
+ }%
+ \doforeachtocfile[float]{%
+ \unsettoc{\@currext}{numbered}%
+ \unsettoc{\@currext}{totoc}%
+ }%
+ \or% totoc
+ \renewcommand*{\float@@listhead}{%
+ \addchap
+ }%
+ \doforeachtocfile[float]{%
+ \unsettoc{\@currext}{numbered}%
+ \setuptoc{\@currext}{totoc}%
+ }%
+ \or% numbered
+ \renewcommand*{\float@@listhead}{%
+ \chapter
+ }%
+ \doforeachtocfile[float]{%
+ \setuptoc{\@currext}{numbered}%
+ \setuptoc{\@currext}{totoc}%
+ }%
+ \or% flat
+ \@dynlisttrue
+ \or% graduated
+ \@dynlistfalse
+ \or% leveldown
+ \doforeachtocfile[float]{%
+ \setuptoc{\@currext}{leveldown}%
+ }%
+ \or% chapterentry
+ \KOMA@options{chapteratlists=entry}{}%
+ \or% chaptergap
+ \KOMA@options{chapteratlists=\z@}{}%
+ \or% chaptergapsmall
+ \KOMA@options{chapteratlists=10\p@}{}%
+ \or% chaptergapline
+ \KOMA@options{chapteratlists=\baselineskip}{}%
+ \fi
+}
+\KOMA@DeclareObsoleteOption[\ClassWarningNoLine]{liststotoc}{listof=totoc}
+\KOMA@DeclareObsoleteOption[\ClassWarningNoLine]{liststotocnumbered}
+ {listof=numbered}
+\KOMA@DeclareObsoleteOption[\ClassWarningNoLine]{listsleft}{listof=flat}
+\KOMA@DeclareObsoleteOption[\ClassWarningNoLine]{listsindent}{listof=graduated}
\newcommand*{\@chapterlistsgap}{10\p@}
\newif\if@chaptertolists\@chaptertolistsfalse
\KOMA@key{chapteratlists}[entry]{%
@@ -639,47 +881,119 @@
}%
}
%%% From File: scrkbib.dtx
-\DeclareOption{openbib}{%
- \AtEndOfPackage{%
- \renewcommand*\@openbib@code{%
- \advance\leftmargin\bibindent
- \itemindent -\bibindent
- \listparindent \itemindent
- \parsep \z@
+\newcommand{\newbibstyle}[3][]{%
+ \scr@ifundefinedorrelax{scr@bibstyle@#2}{%
+ \scr@ifundefinedorrelax{scr@bibstyle@#1}{%
+ \ClassError{\KOMAClassName}{%
+ parent bibliography style `#1' does not exist}{%
+ You've told me to define the new bibliography style `#2'\MessageBreak
+ to be a child of bibliography style `#1', but bibliography
+ style\MessageBreak
+ `#1' does not exist.\MessageBreak
+ You have to remove the parent declaration or use an existing parent!
+ See the KOMA-Script manual for more information.%
+ }%
+ }{%
+ \@namedef{scr@bibstyle@#2}{%
+ \let\@openbib@code\@empty
+ \let\newblock\@empty
+ \let\bib@beginhook\@empty
+ \let\bib@endhook\@empty
+ \csname scr@bibstyle@#1\endcsname
+ #3%
+ }%
+ \g@addto@macro\scr@bibstylelist{, `#2'}%
+ }%
+ }{%
+ \ClassError{\KOMAClassName}{bibliography style `#2' already exists}{%
+ You've told me to define the new bibliography style `#2',\MessageBreak
+ but this style already exists.\MessageBreak
+ You have to use another bibliography style name.\MessageBreak
+ See the KOMA-Script manual for more information.%
}%
- \renewcommand*\newblock{\par}%
}%
}
-\DeclareOption{bibtotoc}{%
- \AtEndOfClass{%
- \renewcommand*\bib@heading{%
- \addchap{\bibname}%
- \@mkboth{\bibname}{\bibname}%
- }%
+\newcommand*{\scr@bibstyle@}{}
+\newcommand*{\bib@beginhook}{}
+\newcommand*{\bib@endhook}{}
+\newcommand*{\scr@bibstylelist}{\@gobble}
+\newcommand*{\@openbib@code}{}
+\newcommand*{\newblock}{}
+\newbibstyle{openstyle}{%
+ \renewcommand*{\@openbib@code}{%
+ \advance\leftmargin\bibindent
+ \itemindent -\bibindent
+ \listparindent \itemindent
+ \parsep \z@
}%
+ \renewcommand*{\newblock}{\par}%
}
-\DeclareOption{bibtotocnumbered}{%
- \AtEndOfClass{%
- \renewcommand*\bib@heading{%
- \chapter{\bibname}%
- \@mkboth{\chaptermarkformat \bibname}{\chaptermarkformat \bibname}%
- }%
+\newbibstyle{oldstyle}{%
+ \renewcommand*{\newblock}{\hskip .11em\@plus.33em\@minus.07em}%
+}
+\scr@bibstyle@oldstyle
+\newcommand*\bib@heading{%
+ \chapter*{\bibname}%
+ \@mkboth{\bibname}{\bibname}%
+}
+\KOMA@key{bibliography}{%
+ \scr@ifundefinedorrelax{scr@bibstyle@#1}{%
+ \let\FamilyElseValues\scr@bibstylelist
+ \KOMA@set@ncmdkey{bibliography}{@tempa}{%
+ {notoc}{0},{nottotoc}{0},{plainheading}{0},%
+ {totoc}{1},{toc}{1},{notnumbered}{1},%
+ {numbered}{2},{totocnumbered}{2},{tocnumbered}{2},{numberedtotoc}{2},%
+ {numberedtoc}{2}%
+ }{#1}%
+ \ifcase \@tempa\relax
+ \renewcommand*\bib@heading{%
+ \chapter*{\bibname}%
+ \@mkboth{\bibname}{\bibname}%
+ }%
+ \or% totoc
+ \renewcommand*\bib@heading{%
+ \addchap{\bibname}%
+ \@mkboth{\bibname}{\bibname}%
+ }%
+ \or% numbered
+ \renewcommand*\bib@heading{%
+ \chapter{\bibname}%
+ \@mkboth{\chaptermarkformat \bibname}{\chaptermarkformat \bibname}%
+ }
+ \fi
+ }{%
+ \csname scr@bibstyle@#1\endcsname
}%
}
+\KOMA@DeclareObsoleteOption[\ClassInfoNoLine]{openbib}{bibliography=openstyle}
+\KOMA@DeclareObsoleteOption[\ClassWarningNoLine]{bibtotoc}{bibliography=totoc}
+\KOMA@DeclareObsoleteOption[\ClassWarningNoLine]{bibtotocnumbered}{%
+ bibliography=totocnumbered}
%%% From File: scrkidx.dtx
-\DeclareOption{idxtotoc}{%
- \AtEndOfClass{%
- \renewcommand*\idx@heading{%
- \if@openright\cleardoublepage\else\clearpage\fi
- \twocolumn[\addchap{\indexname}]%
- \@mkboth{\indexname}{\indexname}%
+\newcommand*{\idx@@heading}{%
+ \chapter*
+}
+\KOMA@key{index}{%
+ \KOMA@set@ncmdkey{index}{@tempa}{%
+ {notoc}{0},{nottotoc}{0},{default}{0},{plainheading}{0},%
+ {totoc}{1},{toc}{1},{notnumbered}{1}%
+ }{#1}%
+ \ifcase \@tempa\relax
+ \renewcommand*{\idx@@heading}{%
+ \chapter*
}%
- }%
+ \or
+ \renewcommand*{\idx@@heading}{%
+ \addchap
+ }%
+ \fi
}
+\KOMA@DeclareObsoleteOption[\ClassWarningNoLine]{idxtotoc}{index=totoc}
%%% From File: scrklist.dtx
%%% From File: scrkmisc.dtx
\KOMAExecuteOptions{%
- parskip=false%
+ parskip=false,%
+ headings=big%
}
\KOMAProcessOptions\relax
%%% From File: scrkcomp.dtx
@@ -926,7 +1240,6 @@
\setlength\partopsep{.2\@tempdimc \@plus.1\@tempdimc \@minus.1\@tempdimc}%
}%
}
-\providecommand*{\@fontsizefilebase}{scrsize}
\expandafter\@defaultunits\expandafter\@tempdima\@ptsize pt\relax\@nnil
\edef\@tempa{\@ptsize}%
\setlength{\@tempdimb}{\@tempdima}%
@@ -1065,119 +1378,6 @@
}%
}
%%% From File: scrklang.dtx
-\newcommand*{\providecaptionname}[3]{%
- \@ifundefined{captions#1}{%
- \@ifundefined{cap@info@#1@done}{%
- \ClassInfo{\KOMAClassName}{%
- No captions found for `#1'\MessageBreak
- --> skipped%
- }%
- \expandafter\let\csname cap@info@#1@done\endcsname\@empty
- }{}%
- }{%
- \begingroup
- \let\@tempa\endgroup
- \csname captions#1\endcsname
- \ifx #2\undefined
- \edef\@tempb{#1}%
- \@onelevel@sanitize\@tempb
- \@onelevel@sanitize\languagename
- \ifx\@tempb\languagename
- \def\@tempa{\endgroup%
- \expandafter\g@addto@macro\csname captions#1\endcsname{%
- \def#2{#3}}%
- \csname captions#1\endcsname
- }%
- \else
- \def\@tempa{\endgroup%
- \expandafter\g@addto@macro\csname captions#1\endcsname{%
- \def#2{#3}}%
- }%
- \fi
- \else
- \ClassInfo{\KOMAClassName}{%
- `\string#2' at language `#1' already
- defined\MessageBreak
- --> skipped%
- }%
- \fi
- \@tempa
- }%
-}
-\newcommand*{\newcaptionname}[3]{%
- \@ifundefined{captions#1}{%
- \ClassInfo{\KOMAClassName}{%
- No captions found for `#1' --> defining%
- }%
- \@namedef{captions#1}{}%
- }{}%
- \begingroup
- \csname captions#1\endcsname
- \ifx #2\undefined\else
- \ClassError{\KOMAClassName}{%
- `\string#2' at language `#1' already defined%
- }{%
- You've told me to define `\string#2' at language
- `#1',\MessageBreak
- but it is already defined.\MessageBreak
- It will be redefined, if you'll continue.%
- }%
- \fi
- \endgroup
- \expandafter\g@addto@macro\csname captions#1\endcsname{%
- \def#2{#3}%
- }%
- \begingroup
- \edef\@tempb{#1}%
- \@onelevel@sanitize\@tempb
- \@onelevel@sanitize\languagename
- \ifx\@tempb\languagename
- \def\@tempa{\endgroup\csname captions#1\endcsname}%
- \else
- \let\@tempa\endgroup
- \fi
- \@tempa
-}
-\newcommand*{\renewcaptionname}[3]{%
- \@ifundefined{captions#1}{%
- \ClassError{\KOMAClassName}{%
- No captions found for `#1'%
- }{%
- You've told me to redefine the caption `\string#2' at language
- `#1',\MessageBreak
- but `\expandafter\string\csname captions#1\endcsname' is not
- defined.\MessageBreak
- If you'll continue it will be defined.%
- }
- \@namedef{captions#1}{}%
- }{}%
- \begingroup
- \csname captions#1\endcsname
- \ifx #2\undefined
- \ClassError{\KOMAClassName}{%
- `\string#2' not defined at language `#1'%
- }{%
- You've told me to redefine `\string#2' at language
- `#1',\MessageBreak
- but it is not defined.\MessageBreak
- If you'll continue it will be defined.%
- }%
- \fi
- \endgroup
- \expandafter\g@addto@macro\csname captions#1\endcsname{%
- \def#2{#3}%
- }%
- \begingroup
- \edef\@tempb{#1}%
- \@onelevel@sanitize\@tempb
- \@onelevel@sanitize\languagename
- \ifx\@tempb\languagename
- \def\@tempa{\endgroup\csname captions#1\endcsname}%
- \else
- \let\@tempa\endgroup
- \fi
- \@tempa
-}
\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
@@ -1282,44 +1482,62 @@
\addtolength{#1}{\@tempskipa}%
\fi
}
-\g@addto@macro{\@listi}{\@list@extra}
-\let\@listI=\@listi
-\g@addto@macro{\@listii}{\@list@extra}
-\g@addto@macro{\@listiii}{\@list@extra}
+\newcommand*{\@list@extra}{%
+ \ifdim\parskip>\z@\topsep\z@\parsep\parskip\itemsep\z@\fi
+}
\newcommand*{\add@extra@listi}[1]{%
\expandafter\let\csname #1@listi\endcsname=\@listi
\def\@listi{\csname #1@listi\endcsname\@list@extra}%
}
-\g@addto@macro{\footnotesize}{\protect\add@extra@listi{ftns}}
-\g@addto@macro{\small}{\protect\add@extra@listi{sml}}
-\newcommand*{\@list@extra}{%
- \ifdim\parskip>\z@\topsep\z@\parsep\parskip\itemsep\z@\fi
-}
+ \l@addto@macro{\@listi}{\@list@extra}%
+ \let\@listI=\@listi
+ \l@addto@macro{\@listii}{\@list@extra}%
+ \l@addto@macro{\@listiii}{\@list@extra}%
+ \l@addto@macro{\footnotesize}{\protect\add@extra@listi{ftns}}%
+ \l@addto@macro{\small}{\protect\add@extra@listi{sml}}%
\@lowpenalty = 51
\@medpenalty =151
\@highpenalty =301
%%% From File: scrktitl.dtx
-\newcommand*{\@extratitle}{}
-\newcommand{\extratitle}[1]{\gdef\@extratitle{#1}}
-\newcommand*{\@titlehead}{}
-\newcommand{\titlehead}[1]{\gdef\@titlehead{#1}}
-\newcommand*{\@subject}{}
-\newcommand*{\subject}[1]{\gdef\@subject{#1}}
-\newcommand*{\subtitle}[1]{\gdef\@subtitle{#1}}
-\newcommand*{\@subtitle}{}
-\newcommand*{\@publishers}{}
-\newcommand{\publishers}[1]{\gdef\@publishers{#1}}
-\newcommand*{\@uppertitleback}{}
-\newcommand{\uppertitleback}[1]{\gdef\@uppertitleback{#1}}
-\newcommand*{\@lowertitleback}{}
-\newcommand{\lowertitleback}[1]{\gdef\@lowertitleback{#1}}
-\newcommand*{\@dedication}{}
-\newcommand{\dedication}[1]{\gdef\@dedication{#1}}
-\newcommand*{\next@tpage}{\clearpage\thispagestyle{empty}}
+\newcommand*{\@extratitle}{}%
+\newcommand{\extratitle}[1]{\gdef\@extratitle{%
+ #1%
+}}%
+\newcommand*{\@titlehead}{}%
+\newcommand{\titlehead}[1]{\gdef\@titlehead{%
+ #1%
+}}%
+\newcommand*{\@subject}{}%
+\newcommand*{\subject}[1]{\gdef\@subject{%
+ #1%
+}}%
+\newcommand*{\subtitle}[1]{\gdef\@subtitle{%
+ #1%
+}}%
+\newcommand*{\@subtitle}{}%
+\newcommand*{\@publishers}{}%
+\newcommand{\publishers}[1]{\gdef\@publishers{%
+ #1%
+}}%
+\newcommand*{\@uppertitleback}{}%
+\newcommand{\uppertitleback}[1]{\gdef\@uppertitleback{%
+ #1%
+}}%
+\newcommand*{\@lowertitleback}{}%
+\newcommand{\lowertitleback}[1]{\gdef\@lowertitleback{%
+ #1%
+}}%
+\newcommand*{\@dedication}{}%
+\newcommand{\dedication}[1]{\gdef\@dedication{%
+ #1%
+}}%
+\newcommand*{\next@tpage}{\clearpage\thispagestyle{empty}}%
\if@titlepage
\newcommand*\maketitle[1][1]{%
\begin{titlepage}
- \setcounter{page}{#1}%
+ \setcounter{page}{%
+ #1%
+ }%
\let\footnotesize\small
\let\footnoterule\relax
\let\footnote\thanks
@@ -1401,10 +1619,12 @@
\global\let\dedication\relax
\global\let\date\relax
\global\let\and\relax
- }
+ }%
\else
\newcommand*\maketitle[1][1]{\par
- \@tempcnta=#1\relax\ifnum\@tempcnta=1\else
+ \@tempcnta=%
+ #1%
+ \relax\ifnum\@tempcnta=1\else
\ClassWarning{\KOMAClassName}{%
Optional argument of \string\maketitle\space ignored
at\MessageBreak
@@ -1455,7 +1675,7 @@
\global\let\dedication\relax
\global\let\date\relax
\global\let\and\relax
- }
+ }%
\fi
\newcommand*{\@maketitle}{%
\clearpage
@@ -1497,12 +1717,26 @@
\end{center}%
\par
\vskip 2em
-}
-\newcommand*\titlefont{\sectfont}
-\newcommand*{\subject@font}{\normalfont\normalcolor\bfseries\Large}
-\newkomafont{subtitle}{\usekomafont{title}\large}
-\newcommand*{\scr@fnt@title}{\titlefont}
-\newcommand*{\scr@fnt@subject}{\subject@font}
+}%
+\newenvironment{titlepage}{%
+ \cleardoublepage
+ \if@twocolumn
+ \@restonecoltrue\onecolumn
+ \else
+ \@restonecolfalse\newpage
+ \fi
+ \thispagestyle{empty}%
+ \if@compatibility
+ \setcounter{page}{0}%
+ \fi
+}{%
+ \if@restonecol\twocolumn \else \newpage \fi
+}%
+\newcommand*\titlefont{\sectfont}%
+\newcommand*{\subject@font}{\normalfont\normalcolor\bfseries\Large}%
+\newkomafont{subtitle}{\usekomafont{title}\large}%
+\newcommand*{\scr@fnt@title}{\titlefont}%
+\newcommand*{\scr@fnt@subject}{\subject@font}%
\if@titlepage
\newenvironment{abstract}{%
\titlepage
@@ -1536,20 +1770,6 @@
\if@twocolumn\else\endquotation\fi
}
\fi
-\newenvironment{titlepage}{%
- \cleardoublepage
- \if@twocolumn
- \@restonecoltrue\onecolumn
- \else
- \@restonecolfalse\newpage
- \fi
- \thispagestyle{empty}%
- \if@compatibility
- \setcounter{page}{0}%
- \fi
-}{%
- \if@restonecol\twocolumn \else \newpage \fi
-}
%%% From File: scrksect.dtx
\newcommand*\appendix{\par%
\setcounter{chapter}{0}%
@@ -1560,22 +1780,25 @@
}
\newcommand*\chaptermark[1]{}
\newif\if@altsecnumformat\@altsecnumformatfalse
-\newif\if@autodot\@autodotfalse
+\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
}
\newcommand*{\@@maybeautodot}[1]{%
\ifx #1\@stop\let\@@maybeautodot\relax
\else
- \ifx #1\Alph \aftergroup\@autodottrue\fi
- \ifx #1\alph \aftergroup\@autodottrue\fi
- \ifx #1\Roman \aftergroup\@autodottrue\fi
- \ifx #1\roman \aftergroup\@autodottrue\fi
- \ifx #1\@Alph \aftergroup\@autodottrue\fi
- \ifx #1\@alph \aftergroup\@autodottrue\fi
- \ifx #1\@Roman \aftergroup\@autodottrue\fi
- \ifx #1\@roman \aftergroup\@autodottrue\fi
- \ifx #1\romannumeral \aftergroup\@autodottrue\fi
+ \ifx #1\Alph \@autodottrue\fi
+ \ifx #1\alph \@autodottrue\fi
+ \ifx #1\Roman \@autodottrue\fi
+ \ifx #1\roman \@autodottrue\fi
+ \ifx #1\@Alph \@autodottrue\fi
+ \ifx #1\@alph \@autodottrue\fi
+ \ifx #1\@Roman \@autodottrue\fi
+ \ifx #1\@roman \@autodottrue\fi
+ \ifx #1\romannumeral \@autodottrue\fi
\fi
\@@maybeautodot
}
@@ -1724,7 +1947,9 @@
\secdef\@addpart\@saddpart
}
\newcommand*{\@addpart}{}
-\def\@addpart[#1]#2{\addcontentsline{toc}{part}{#1}\@spart{#2}%
+\def\@addpart[#1]#2{%
+ \csname phantomsection\endcsname
+ \addcontentsline{toc}{part}{#1}\@spart{#2}%
\ifx\partmark\@gobble\else\@mkboth{#1}{}\fi
}
\newcommand*{\@saddpart}{\@spart}
@@ -1766,14 +1991,14 @@
\fi%
}
}
-\newcommand*{\chapterheadstartvskip}{}
-\newcommand*{\chapterheadendvskip}{}
\newcommand\chapter{\if@openright\cleardoublepage\else\clearpage\fi
\thispagestyle{\chapterpagestyle}%
\global\@topnum\z@
\@afterindentfalse
\secdef\@chapter\@schapter
}
+\setuptoc{lof}{chapteratlist}
+\setuptoc{lot}{chapteratlist}
\newcommand*{\@chapter}{}
\def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne
\refstepcounter{chapter}%
@@ -1781,34 +2006,79 @@
\typeout{\@chapapp\space\thechapter.}%
\addcontentsline{toc}{chapter}{\protect\numberline{\thechapter}#1}%
\if@chaptertolists
- \addcontentsline{lof}{chapteratlist}{%
- \protect\numberline{\thechapter}#1}%
- \addcontentsline{lot}{chapteratlist}{%
- \protect\numberline{\thechapter}#1}%
+ \doforeachtocfile{%
+ \iftocfeature{\@currext}{chapteratlist}{%
+ \addcontentsline{\@currext}{chapteratlist}{%
+ \protect\numberline{\thechapter}#1}%
+ }{}%
+ }%
\@ifundefined{float@addtolists}{}{%
- \float@addtolists{%
- \protect\contentsline{chapteratlist}{%
- \protect\numberline{\thechapter}#1}{\thepage}%
+ \ClassWarning{\KOMAClassName}{%
+ Usage of deprecated \string\float@addtolists!\MessageBreak
+ You should use the features of package `tocbasic'\MessageBreak
+ instead of \string\float@addtolists.\MessageBreak
+ Definition of \string\float@addtolists\space may be removed
+ from\MessageBreak
+ KOMA-Script soon, so it should not be used
+ }%
+ \scr@ifundefinedorrelax{@currentHref}{%
+ \float@addtolists{%
+ \protect\contentsline{chapteratlist}{%
+ \protect\numberline{\thechapter}#1}{\thepage}%
+ }%
+ }{%
+ \float@addtolists{%
+ \protect\contentsline{chapteratlist}{%
+ \protect\numberline{\thechapter}#1}{\thepage}{\@currentHref}%
+ }%
}%
}%
\fi
\else
\addcontentsline{toc}{chapter}{#1}%
\if@chaptertolists
- \addcontentsline{lof}{chapteratlist}{#1}%
- \addcontentsline{lot}{chapteratlist}{#1}%
+ \doforeachtocfile{%
+ \iftocfeature{\@currext}{chapteratlist}{%
+ \addcontentsline{\@currext}{chapteratlist}{#1}%
+ }{}%
+ }%
\@ifundefined{float@addtolists}{}{%
- \float@addtolists{%
- \protect\contentsline{chapteratlist}{#1}{\thepage}%
+ \ClassWarning{\KOMAClassName}{%
+ Usage of deprecated \string\float@addtolists!\MessageBreak
+ You should use the features of package `tocbasic'\MessageBreak
+ instead of \string\float@addtolists.\MessageBreak
+ Definition of \string\float@addtolists\space may be removed
+ from\MessageBreak
+ KOMA-Script soon, so it should not be used
+ }%
+ \scr@ifundefinedorrelax{@currentHref}{%
+ \float@addtolists{%
+ \protect\contentsline{chapteratlist}{#1}{\thepage}%
+ }%
+ }{%
+ \float@addtolists{%
+ \protect\contentsline{chapteratlist}{#1}{\thepage}{\@currentHref}%
+ }%
}%
}%
\fi
\fi
\chaptermark{#1}%
\ifdim \@chapterlistsgap>\z@
- \addtocontents{lof}{\protect\addvspace{\@chapterlistsgap}}%
- \addtocontents{lot}{\protect\addvspace{\@chapterlistsgap}}%
+ \doforeachtocfile{%
+ \iftocfeature{\@currext}{chapteratlist}{%
+ \addtocontents{\@currext}{\protect\addvspace{\@chapterlistsgap}}%
+ }{}%
+ }%
\@ifundefined{float@addtolists}{}{%
+ \ClassWarning{\KOMAClassName}{%
+ Usage of deprecated \string\float@addtolists!\MessageBreak
+ You should use the features of package `tocbasic'\MessageBreak
+ instead of \string\float@addtolists.\MessageBreak
+ Definition of \string\float@addtolists\space may be removed
+ from\MessageBreak
+ KOMA-Script soon, so it should not be used
+ }%
\float@addtolists{\protect\addvspace{\@chapterlistsgap}}%
}%
\fi
@@ -1881,31 +2151,59 @@
\global\@topnum\z@
\@afterindentfalse
\secdef\@addchap\@saddchap%
-}
-\newcommand*{\@addchap}{}
+}%
+\newcommand*{\@addchap}{}%
\def\@addchap[#1]#2{\@schapter{#2}%
\addcontentsline{toc}{chapter}{#1}%
\if@chaptertolists
- \addcontentsline{lof}{chapteratlist}{#1}%
- \addcontentsline{lot}{chapteratlist}{#1}%
+ \doforeachtocfile{%
+ \iftocfeature{\@currext}{chapteratlist}{%
+ \addcontentsline{\@currext}{chapteratlist}{#1}%
+ }{}%
+ }%
\@ifundefined{float@addtolists}{}{%
- \float@addtolists{%
- \protect\contentsline{chapteratlist}{#1}{\thepage}%
+ \ClassWarning{\KOMAClassName}{%
+ Usage of deprecated \string\float@addtolists!\MessageBreak
+ You should use the features of package `tocbasic'\MessageBreak
+ instead of \string\float@addtolists.\MessageBreak
+ Definition of \string\float@addtolists\space may be removed
+ from\MessageBreak
+ KOMA-Script soon, so it should not be used
+ }%
+ \scr@ifundefinedorrelax{@currentHref}{%
+ \float@addtolists{%
+ \protect\contentsline{chapteratlist}{#1}{\thepage}%
+ }%
+ }{%
+ \float@addtolists{%
+ \protect\contentsline{chapteratlist}{#1}{\thepage}{\@currentHref}%
+ }%
}%
}%
\fi
- \ifnum \@nameuse{scr@v@2.96}<\scr@compatibility
+ \ifnum \@nameuse{scr@v@2.96}<\scr@compatibility\relax
\ifdim \@chapterlistsgap>\z@
- \addtocontents{lof}{\protect\addvspace{\@chapterlistsgap}}%
- \addtocontents{lot}{\protect\addvspace{\@chapterlistsgap}}%
+ \doforeachtocfile{%
+ \iftocfeature{\@currext}{chapteratlist}{%
+ \addtocontents{\@currext}{\protect\addvspace{\@chapterlistsgap}}%
+ }{}%
+ }%
\@ifundefined{float@addtolists}{}{%
+ \ClassWarning{\KOMAClassName}{%
+ Usage of deprecated \string\float@addtolists!\MessageBreak
+ You should use the features of package `tocbasic'\MessageBreak
+ instead of \string\float@addtolists.\MessageBreak
+ Definition of \string\float@addtolists\space may be removed
+ from\MessageBreak
+ KOMA-Script soon, so it should not be used
+ }%
\float@addtolists{\protect\addvspace{\@chapterlistsgap}}%
}%
\fi
\fi
\if@twoside\@mkboth{#1}{}\else\@mkboth{}{#1}\fi
-}
-\newcommand*{\@saddchap}[1]{\@schapter{#1}\@mkboth{}{}}
+}%
+\newcommand*{\@saddchap}[1]{\@schapter{#1}\@mkboth{}{}}%
\newcommand*\addsec{\secdef\@addsec\@saddsec}
\newcommand*{\@addsec}{}
\def\@addsec[#1]#2{\section*{#2}\addcontentsline{toc}{section}{#1}
@@ -1915,23 +2213,23 @@
\newcommand\section{\@startsection{section}{1}{\z@}%
{-3.5ex \@plus -1ex \@minus -.2ex}%
{2.3ex \@plus.2ex}%
- {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\setlength{\parfillskip}{\z@
- plus 1fil}\fi
+ {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax
+ \setlength{\parfillskip}{\z@ plus 1fil}\fi
\raggedsection\normalfont\sectfont\nobreak\size@section}%
}
\newcommand\subsection{\@startsection{subsection}{2}{\z@}%
{-3.25ex\@plus -1ex \@minus -.2ex}%
{1.5ex \@plus .2ex}%
- {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\setlength{\parfillskip}{\z@
- plus 1fil}\fi
+ {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax
+ \setlength{\parfillskip}{\z@ plus 1fil}\fi
\raggedsection\normalfont\sectfont\nobreak\size@subsection
}%
}
\newcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%
{-3.25ex\@plus -1ex \@minus -.2ex}%
{1.5ex \@plus .2ex}%
- {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\setlength{\parfillskip}{\z@
- plus 1fil}\fi
+ {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax
+ \setlength{\parfillskip}{\z@ plus 1fil}\fi
\raggedsection\normalfont\sectfont\nobreak\size@subsubsection
}%
}
@@ -1963,16 +2261,8 @@
\newkomafont{partentrypagenumber}{}
\newkomafont{chapterentry}{\usekomafont{sectioning}}
\newkomafont{chapterentrypagenumber}{}
-\newcommand*{\size@part}{}
-\newcommand*{\size@partnumber}{}
-\newcommand*{\size@chapter}{}
-\newcommand*{\size@chapterprefix}{\size@chapter}
-\newcommand*{\size@section}{}
-\newcommand*{\size@subsection}{}
-\newcommand*{\size@subsubsection}{}
-\newcommand*{\size@paragraph}{}
-\newcommand*{\size@subparagraph}{}
\newcommand*{\scr@fnt@disposition}{\sectfont}
+\aliaskomafont{sectioning}{disposition}
\newcommand*{\scr@fnt@part}{\size@part}
\newcommand*{\scr@fnt@partnumber}{\size@partnumber}
\newcommand*{\scr@fnt@chapter}{\size@chapter}
@@ -1982,7 +2272,6 @@
\newcommand*{\scr@fnt@subsubsection}{\size@subsubsection}
\newcommand*{\scr@fnt@paragraph}{\size@paragraph}
\newcommand*{\scr@fnt@subparagraph}{\size@subparagraph}
-\aliaskomafont{sectioning}{disposition}
\newcommand*{\use@preamble}[1]{%
\@ifundefined{#1@preamble}{}{%
\@nameuse{#1@preamble}%
@@ -2114,7 +2403,7 @@
\usekomafont{partentry}{#1\nobreak
\usekomafont{partentrypagenumber}{\hfil\nobreak
\hb@xt@\@pnumwidth{\hss#2}}}\par
- \ifnum \scr@compatibility>\@nameuse{scr@v@2.96}
+ \ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax
\endgroup
\penalty20010
\else
@@ -2146,7 +2435,7 @@
\usekomafont{chapterentrypagenumber}{%
\hfill\nobreak
\hb@xt@\@pnumwidth{\hss#2}}}\par
- \ifnum \scr@compatibility>\@nameuse{scr@v@2.96}
+ \ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax
\endgroup
\penalty20009
\else
@@ -2163,7 +2452,7 @@
\newcommand*\l@paragraph{\bprot@dottedtocline{4}{10em}{5em}}
\newcommand*\l@subparagraph{\bprot@dottedtocline{5}{12em}{6em}}
\newcommand*{\bprot@dottedtocline}[5]{%
- \ifnum \scr@compatibility>\@nameuse{scr@v@2.96}
+ \ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax
\ifnum #1>\c@tocdepth \else
\begingroup
\@tempcnta 20010
@@ -2263,16 +2552,19 @@
\addtolength{\@tempdima}{\marginparwidth}%
\fi
}
-\newcommand*\pnumfont{\normalfont\normalcolor}
-\newcommand*\headfont{\normalfont\normalcolor\slshape}
+\newcommand*{\pnumfont}{\normalfont\normalcolor}
+\newcommand*{\headfont}{\normalfont\normalcolor\slshape}
+\newcommand*{\footfont}{}
\newcommand*{\scr@fnt@pagenumber}{\pnumfont}
\aliaskomafont{pagination}{pagenumber}
-\newcommand*{\scr@fnt@pagehead}{\headfont}
-\newcommand*{\scr@fnt@wrn@pagehead}[1]{%
- `pagehead' and `pagefoot' are aliases for the same\MessageBreak
- font element, changed%
+\newcommand*{\scr@fnt@pageheadfoot}{\headfont}
+\aliaskomafont{pagehead}{pageheadfoot}
+\newcommand*{\scr@fnt@pagefoot}{\footfont}
+\newcommand*{\scr@fnt@wrn@pagefoot}[1]{%
+ This class does not use font element `pagefoot'!\MessageBreak
+ Maybe you should load package `scrpage2', before\MessageBreak
+ using this element%
}
-\aliaskomafont{pagefoot}{pagehead}
\newcommand*{\pagemark}{{\usekomafont{pagenumber}%
\thepage}}
\renewcommand*{\ps@plain}{%
@@ -2376,8 +2668,6 @@
\AtBeginDocument{\let\scr@caption\caption}
\newcommand{\captionabove}{\@captionabovetrue\scr@caption}
\newcommand{\captionbelow}{\@captionabovefalse\scr@caption}
-\newcommand*{\scap@pos}{r}
-\newcommand*{\scap@valign}{b}
\newcommand*{\scap@caption}{}
\newcommand*{\scap@width}{\linewidth}
\newcommand*{\scap@move}{\z@}
@@ -2417,7 +2707,16 @@
\newbox\c@pti@nb@sid@b@x
\newcommand{\c@pti@nb@sid@}{}
\long\def\c@pti@nb@sid@[#1]#2{%
- \def\scap@caption{\captionbelow[{#1}]{#2}}%
+ \def\scap@caption{%
+ \if c\scap@valign
+ \setlength{\abovecaptionskip}{\z@}%
+ \setlength{\belowcaptionskip}{\z@}%
+ \else
+ \setlength{\abovecaptionskip}{-\ht\strutbox}%
+ \setlength{\belowcaptionskip}{-\dp\strutbox}%
+ \fi
+ \captionbelow[{#1}]{#2}%
+ }%
\begin{lrbox}{\c@pti@nb@sid@b@x}%
}
\newenvironment*{captionbeside}{%
@@ -2498,12 +2797,12 @@
\AfterPackage{caption2}{%
\renewcommand*{\setcapindent}{%
\ClassWarning{\KOMAClassName}{%
- You're using package caption2.\MessageBreak
- Because of this you should also use \string\captionstyle\space
+ You're using package `caption2'.\MessageBreak
+ Because of this you should also use `\string\captionstyle'
and\MessageBreak
- set length \string\captionindent\space instead if
+ set length '\string\captionindent' instead of
using\MessageBreak
- \string\setcapindent
+ `\string\setcapindent'%
}%
\captionstyle{indent}%
\@ifstar{\setlength{\captionindent}}{\setlength{\captionindent}}%
@@ -2513,10 +2812,10 @@
\AfterPackage{caption2}{%
\renewcommand*{\setcaphanging}{%
\ClassWarning{\KOMAClassName}{%
- You're using package caption2.\MessageBreak
+ You're using package `caption2'.\MessageBreak
Because of this you should also use
- \string\captionstyle\MessageBreak
- instead of \string\setcaphang
+ `\string\captionstyle'\MessageBreak
+ instead of `\string\setcaphang'%
}
\captionstyle{hang}%
}%
@@ -2606,11 +2905,11 @@
\AfterPackage{caption2}{%
\renewcommand*{\setcapwidth}[2][]{%
\ClassWarning{\KOMAClassName}{%
- Ignorring optional argument of \string\setcapwidth!\MessageBreak
- You're using package caption2.\MessageBreak
+ Ignorring optional argument of `\string\setcapwidth'!\MessageBreak
+ You're using package `caption2'.\MessageBreak
Because of this you should also use
- \string\setcaptionwidth\MessageBreak
- instead of \string\setcapwidth\MessageBreak
+ `\string\setcaptionwidth'\MessageBreak
+ instead of `\string\setcapwidth'%
}%
\setcaptionwidth{#2}%
}%
@@ -2669,10 +2968,10 @@
\ifdim\@tempdima\@tempdimb\else
\ClassWarning{\KOMAClassName}{%
Can set only centered caption!\MessageBreak
- You're using package caption2.\MessageBreak
+ You're using package `caption2'.\MessageBreak
Because of this you should also use
- \string\setcaptionmargin\MessageBreak
- instead of \string\setcapmargin
+ `\string\setcaptionmargin'\MessageBreak
+ instead of `\string\setcapmargin'%
}%
\fi
\addtolength{\@tempdimb}{\@tempdimb}%
@@ -2744,20 +3043,22 @@
\fi
\endgroup
}
+\newcommand*{\scr@caption@before@longtable@warning}[1]{%
+ \ClassWarning{\KOMAClassName}{%
+ you've loaded package `#1' before package\MessageBreak
+ `longtable'!\MessageBreak
+ Because of this package `#1' isn't able to\MessageBreak
+ control `\string\caption' at longtables. \space After loading
+ \MessageBreak
+ package `#1' KOMA-Script also doesn't control\MessageBreak
+ `\string\caption'.\MessageBreak
+ I think, you should load package `caption' after\MessageBreak
+ package `longtable'%
+ }%
+}
\AfterPackage{longtable}{%
\@ifpackageloaded{caption2}{\@komalongtablefalse
- \ClassWarning{\KOMAClassName}{%
- you've loaded package caption2 before package\MessageBreak
- longtable!\MessageBreak
- Because of this package caption2 isn't able to
- control\MessageBreak
- \string\caption\space at longtables. After loading package
- caption2\MessageBreak
- KOMA-Script also doesn't control \string\caption.\MessageBreak
- I think, you should load package caption after
- package\MessageBreak
- longtable and use the new interface%
- }%
+ \scr@caption@before@longtable@warning{caption2}%
}{}%
\if@komalongtable
\renewcommand{\LT@makecaption}[3]{%
@@ -2921,9 +3222,44 @@
\newcommand*{\ftntm@font}{}
\newcommand*{\scr@fnt@footnotereference}{\ftntm@font}
\newcommand*{\scr@fnt@footnoteref}{\ftntm@font}
+\newcommand*{\FN@mf@check}{%
+ \ifdim\lastkern=\multiplefootnotemarker\relax
+ \edef\@x@sf{\the\spacefactor}%
+ \unkern\multiplefootnoteseparator
+ \spacefactor\@x@sf\relax
+ \fi
+}
+\newcommand*{\scr@mf@prepare}{%
+ \kern-\multiplefootnotemarker
+ \kern\multiplefootnotemarker\relax
+}
+\@ifundefined{FN@mf@prepare}{}{}
+\newcommand*{\scr@saved@footnotetext}{}
+\let\scr@saved@footnotetext\@footnotetext
+\renewcommand*{\@footnotetext}[1]{%
+ \scr@saved@footnotetext{#1}%
+ \csname FN@mf@prepare\endcsname
+}
+\BeforePackage{footmisc}{%
+ \ifx\@footnotemark\scr@footnotemark
+ \let\@footnotemark\scr@saved@footnotemark
+ \fi
+ \let\@footnotetext\scr@saved@footnotetext
+}
+\newcommand*{\multiplefootnoteseparator}{%
+ \begingroup\let\thefootnotemark\multfootsep\@makefnmark\endgroup
+}
+\newcommand*{\multfootsep}{,}
+\newcommand*{\multiplefootnotemarker}{3sp}
\newcommand*{\thefootnotemark}{\@thefnmark}
\deffootnote[1em]{1.5em}{1em}{\textsuperscript{\thefootnotemark}}
\deffootnotemark{\textsuperscript{\thefootnotemark}}
+\newcommand*{\footref}[1]{%
+ \begingroup
+ \unrestored@protected@xdef\@thefnmark{\ref{#1}}%
+ \endgroup
+ \@footnotemark
+}
%%% From File: scrkliof.dtx
\renewcommand*{\numberline}[1]{%
\hb@xt@\@tempdima{#1\autodot\hfil}}
@@ -2967,30 +3303,39 @@
\string\gdef\expandafter\string\csname#1@l@number\endcsname{%
\@l@number}}%
}
+\g@addto@macro\tocbasic@@before@hook{%
+ \if@dynlist\expandafter\before@starttoc\expandafter{\@currext}\fi
+}
+\g@addto@macro\tocbasic@@after@hook{%
+ \if@dynlist\expandafter\after@starttoc\expandafter{\@currext}\fi
+}
\newcommand*\contentsname{Contents}
+\newcommand*\listoftocname{\contentsname}
\setcounter{tocdepth}{2}
\newcommand*\toc@heading{%
+ \ClassWarning{\KOMAClassName}{%
+ usage of deprecated \string\toc@heading!\MessageBreak
+ You should use the features of package `tocbasic'\MessageBreak
+ instead of \string\toc@heading.\MessageBreak
+ Definition of \string\toc@heading\space my be removed from\MessageBreak
+ KOMA-Script soon, so it should not be used
+ }%
\chapter*{\contentsname}%
\@mkboth{\contentsname}{\contentsname}%
}
\newcommand*{\toc@l@number}{}
\newcommand*{\tableofcontents}{%
- \begingroup
- \if@twocolumn
- \@restonecoltrue\onecolumn
- \else
- \@restonecolfalse
- \fi
- \toc@heading%
- \setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative
- \if@tocleft\before@starttoc{toc}\fi
- \@starttoc{toc}%
- \if@tocleft\after@starttoc{toc}\fi
- \if@restonecol\twocolumn\fi
- \endgroup
+ \begingroup\let\if@dynlist\if@tocleft\listoftoc{toc}\endgroup
}
\newcommand*{\float@listhead}[1]{%
- \chapter*{#1}%
+ \ClassWarning{\KOMAClassName}{%
+ usage of deprecated \string\float@listhead!\MessageBreak
+ You should use the features of package `tocbasic'\MessageBreak
+ instead of \string\float@listhead.\MessageBreak
+ Definition of \string\float@listhead\space my be removed from\MessageBreak
+ KOMA-Script soon, so it should not be used
+ }%
+ \float@@listhead{#1}%
\@mkboth{#1}{#1}%
\if@dynlist%
\newcommand*{\scr@starttoc}{}%
@@ -3001,53 +3346,37 @@
\fi
}
\newcommand*\listfigurename{List of Figures}
+\newcommand*\listoflofname{\listfigurename}
\newcommand*\listtablename{List of Tables}
-\newcommand*\lof@heading{\float@listhead{\listfigurename}}
-\newcommand*\listoffigures{%
- \begingroup%
- \if@twocolumn
- \@restonecoltrue\onecolumn
- \else
- \@restonecolfalse
- \fi
- \lof@heading%
- \setparsizes{0}{0}{\z@\@plus 1fil}\par@updaterelative
- \@starttoc{lof}%
- \if@restonecol\twocolumn\fi
- \endgroup
-}
+\newcommand*\listoflotname{\listtablename}
+\newcommand*\listoffigures{\listoftoc{lof}}
\newcommand*\l@figure{\@dottedtocline{1}{1.5em}{2.3em}}
-\newcommand*\lot@heading{\float@listhead{\listtablename}}
-\newcommand*\listoftables{%
- \begingroup
- \if@twocolumn
- \@restonecoltrue\onecolumn
- \else
- \@restonecolfalse
- \fi
- \lot@heading
- \setparsizes{0}{0}{\z@\@plus 1fil}\par@updaterelative
- \@starttoc{lot}%
- \if@restonecol\twocolumn\fi
- \endgroup
-}
+\newcommand*\listoftables{\listoftoc{lot}}
\let\l@table\l@figure
%%% From File: scrkbib.dtx
\newcommand*\bibname{Bibliography}
\newcommand*{\bibpreamble}{\relax}
\let\bibpreamble\relax
\newcommand{\setbibpreamble}[1]{\def\bibpreamble{#1}}
-\newcommand*\bib@heading{%
- \chapter*{\bibname}%
- \@mkboth{\bibname}{\bibname}%
-}
\newdimen\bibindent
\bibindent=1.5em
\newenvironment{thebibliography}[1]{%
- \ifx\bibpreamble\relax\else\ifx\bibpreamble\@empty\else
- \setchapterpreamble{\bibpreamble}%
- \fi\fi
- \bib@heading
+ \if@bib@break@
+ \bib@beginhook
+ \else
+ \ifx\bibpreamble\relax\else\ifx\bibpreamble\@empty\else
+ \setchapterpreamble{\bibpreamble}%
+ \fi\fi
+ \bib@heading
+ \bib@beginhook
+ \bib@before@hook
+ \fi
+ \renewcommand{\BreakBibliography}[1]{%
+ \@bib@break
+ \end{thebibliography}%
+ \begingroup ##1\endgroup
+ \begin{thebibliography}{#1}
+ }%
\list{%
\@biblabel{\@arabic\c@enumiv}%
}{%
@@ -3055,27 +3384,67 @@
\leftmargin\labelwidth
\advance\leftmargin\labelsep
\@openbib@code
- \usecounter{enumiv}%
+ \if@bib@break@
+ \edef\@tempa{%
+ \noexpand\usecounter{enumiv}%
+ \noexpand\setcounter{enumiv}{\the\c@enumiv}%
+ }\@tempa
+ \no@bib@break
+ \else
+ \usecounter{enumiv}%
+ \fi
\let\p@enumiv\@empty
\renewcommand*\theenumiv{\@arabic\c@enumiv}%
}%
\sloppy\clubpenalty4000 \widowpenalty4000
\sfcode`\.=\@m
}{%
- \def\@noitemerr{%
- \@latex@warning{Empty `thebibliography' environment}%
- }%
+ \if@bib@break@
+ \def\@noitemerr{%
+ \@latex@warning{%
+ \string\BreakBibliography\space at begin of `thebibliography'
+ environment\MessageBreak
+ or following \string\BreakBibliography}%
+ }%
+ \else
+ \def\@noitemerr{%
+ \@latex@warning{%
+ Empty `thebibliography' environment or
+ \string\BreakBibliography\MessageBreak
+ before end of `thebibliography' environment}%
+ }%
+ \fi
\endlist
+ \if@bib@break@
+ \else
+ \bib@after@hook
+ \let\bib@before@hook\@empty
+ \let\bib@after@hook\@empty
+ \fi
+ \bib@endhook
+}
+\newif\if@bib@break@
+\newcommand{\no@bib@break}{\global\let\if@bib@break@\iffalse}
+\newcommand*{\@bib@break}{\global\let\if@bib@break@\iftrue}
+\newcommand*{\bib@before@hook}{}
+\newcommand*{\bib@after@hook}{}
+\newcommand{\BreakBibliography}[1]{%
+ \ClassWarning{\KOMAClassName}{%
+ You've used \string\BreakBibliography\space either outside of\MessageBreak
+ the bibliography or `thebibliography' was redefined\MessageBreak
+ incompatible, e.g., using a bibliography package.\MessageBreak
+ \string\BreakBibliography\space ignored%
+ }%
}
-\newcommand*\newblock{\hskip .11em\@plus.33em\@minus.07em}
-\let\@openbib@code\@empty
+\newcommand{\AfterBibliographyPreamble}{\g@addto@macro\bib@before@hook}
+\newcommand{\AtEndBibliography}{\g@addto@macro\bib@after@hook}
%%% From File: scrkidx.dtx
\newcommand*{\index@preamble}{}
\let\index@preamble=\relax
\newcommand{\setindexpreamble}[1]{\def\index@preamble{#1}}
\newcommand*{\idx@heading}{%
\if@openright\cleardoublepage\else\clearpage\fi%
- \twocolumn[\chapter*{\indexname}]%
+ \twocolumn[\idx@@heading{\indexname}]%
\@mkboth{\indexname}{\indexname}%
}
\newenvironment{theindex}{%
diff --git a/Master/texmf-dist/tex/latex/koma-script/scrsize10pt.clo b/Master/texmf-dist/tex/latex/koma-script/scrsize10pt.clo
new file mode 100644
index 00000000000..9bc58653dff
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/koma-script/scrsize10pt.clo
@@ -0,0 +1,162 @@
+%%
+%% This is file `scrsize10pt.clo',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% scrkvers.dtx (with options: `clo,10pt')
+%% scrkfont.dtx (with options: `clo,10pt')
+%% scrkpar.dtx (with options: `clo,10pt')
+%%
+%% Copyright (c) 1994-2007
+%% Markus Kohm and any individual authors listed elsewhere in this file.
+%%
+%% This file was generated from file(s) of the KOMA-Script bundle.
+%% ---------------------------------------------------------------
+%%
+%% It may be distributed under the conditions of the
+%% LaTeX Project Public License in the version distributed together
+%% with KOMA-Script, see file `lppl.txt' or `lppl-de.txt'.
+%%
+%% This file may only be distributed together with a copy of the
+%% KOMA-Script bundle. You may however distribute the
+%% KOMA-Script bundle without all such generated files. See also
+%% `lppl.txt' or `lppl-de.txt' for additional information.
+%%
+%% The list of files belonging to KOMA-Script distribution is given in
+%% the file `manifest.txt'. See also `lppl.txt' or `lppl-de.txt' for
+%% additional information.
+%%
+%% If this file is a beta version, you are not allowed to distribute it.
+%%
+%% English and German manuals are part of KOMA-Script bundle.
+%% ----------------------------------------------------------
+%%
+%% See `README'.
+%%
+%% The KOMA-Script bundle (but maybe not this file) was based upon the
+%% LaTeX2.09 Script family created by Frank Neukam 1993 and the LaTeX2e
+%% standard classes created by The LaTeX3 Project 1994-1996.
+%%
+%%% From File: scrkvers.dtx
+\begingroup
+ \makeatletter
+ \ifx\KOMAScriptVersion\undefined
+ \newcommand*{\@CheckKOMAScriptVersion}[1]{%
+ \gdef\KOMAScriptVersion{#1}%
+ }%
+ \else
+ \newcommand*{\@CheckKOMAScriptVersion}[1]{%
+ \def\@tempa{#1}%
+ \ifx\KOMAScriptVersion\@tempa\else
+ \@latex@warning@no@line{%
+ \noexpand\KOMAScriptVersion\space is
+ `\KOMAScriptVersion',\MessageBreak
+ but `#1' was expected!\MessageBreak
+ You should not use classes, packages or files
+ from\MessageBreak
+ different KOMA-Script versions%
+ }%
+ \fi
+ }
+ \fi
+ \@CheckKOMAScriptVersion{2008/11/03 v3.00 KOMA-Script}%
+\endgroup
+%%% From File: scrkfont.dtx
+\ProvidesFile{%
+ scrsize10pt.clo%
+}[\KOMAScriptVersion\space font size class option %
+ (10pt)%
+]
+\def\normalsize{%
+ \@setfontsize\normalsize\@xpt\@xiipt
+ \abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@
+ \abovedisplayshortskip \z@ \@plus3\p@
+ \belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@
+ \belowdisplayskip \abovedisplayskip
+ \let\@listi\@listI
+}
+\def\small{%
+ \@setfontsize\small\@ixpt{11}%
+ \abovedisplayskip 8.5\p@ \@plus3\p@ \@minus4\p@
+ \abovedisplayshortskip \z@ \@plus2\p@
+ \belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@
+ \def\@listi{\leftmargin\leftmargini
+ \topsep 4\p@ \@plus2\p@ \@minus2\p@
+ \parsep 2\p@ \@plus\p@ \@minus\p@
+ \itemsep \parsep}%
+ \belowdisplayskip \abovedisplayskip
+}
+\def\footnotesize{%
+ \@setfontsize\footnotesize\@viiipt{9.5}%
+ \abovedisplayskip 6\p@ \@plus2\p@ \@minus4\p@
+ \abovedisplayshortskip \z@ \@plus\p@
+ \belowdisplayshortskip 3\p@ \@plus\p@ \@minus2\p@
+ \def\@listi{\leftmargin\leftmargini
+ \topsep 3\p@ \@plus\p@ \@minus\p@
+ \parsep 2\p@ \@plus\p@ \@minus\p@
+ \itemsep \parsep}%
+ \belowdisplayskip \abovedisplayskip
+}
+\def\scriptsize{\@setfontsize\scriptsize\@viipt\@viiipt}
+\def\tiny{\@setfontsize\tiny\@vpt\@vipt}
+\def\large{\@setfontsize\large\@xiipt{14}}
+\def\Large{\@setfontsize\Large\@xivpt{18}}
+\def\LARGE{\@setfontsize\LARGE\@xviipt{22}}
+\def\huge{\@setfontsize\huge\@xxpt{25}}
+\def\Huge{\@setfontsize\Huge\@xxvpt{30}}
+\normalsize
+\setlength\footnotesep {6.65\p@}
+\setlength{\skip\footins} {9\p@ \@plus 4\p@ \@minus 2\p@}
+\setlength\floatsep {12\p@ \@plus 2\p@ \@minus 2\p@}
+\setlength\textfloatsep {20\p@ \@plus 2\p@ \@minus 4\p@}
+\setlength\intextsep {12\p@ \@plus 2\p@ \@minus 2\p@}
+\setlength\dblfloatsep {12\p@ \@plus 2\p@ \@minus 2\p@}
+\setlength\dbltextfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@}
+\setlength\@fptop {0\p@ \@plus 1fil}
+\setlength\@fpsep {8\p@ \@plus 2fil}
+\setlength\@fpbot {0\p@ \@plus 1fil}
+\setlength\@dblfptop {0\p@ \@plus 1fil}
+\setlength\@dblfpsep {8\p@ \@plus 2fil}
+\setlength\@dblfpbot {0\p@ \@plus 1fil}
+\setlength\partopsep {2\p@ \@plus 1\p@ \@minus 1\p@}
+\def\@listi{\leftmargin\leftmargini
+ \parsep 4\p@ \@plus2\p@ \@minus\p@
+ \topsep 8\p@ \@plus2\p@ \@minus4\p@
+ \itemsep4\p@ \@plus2\p@ \@minus\p@}
+\let\@listI\@listi
+\def\@listii {\leftmargin\leftmarginii
+ \labelwidth\leftmarginii
+ \advance\labelwidth-\labelsep
+ \topsep 4\p@ \@plus2\p@ \@minus\p@
+ \parsep 2\p@ \@plus\p@ \@minus\p@
+ \itemsep \parsep}
+\def\@listiii{\leftmargin\leftmarginiii
+ \labelwidth\leftmarginiii
+ \advance\labelwidth-\labelsep
+ \topsep 2\p@ \@plus\p@\@minus\p@
+ \parsep \z@
+ \partopsep \p@ \@plus\z@ \@minus\p@
+ \itemsep \topsep}
+\def\@listiv {\leftmargin\leftmarginiv
+ \labelwidth\leftmarginiv
+ \advance\labelwidth-\labelsep}
+\def\@listv {\leftmargin\leftmarginv
+ \labelwidth\leftmarginv
+ \advance\labelwidth-\labelsep}
+\def\@listvi {\leftmargin\leftmarginvi
+ \labelwidth\leftmarginvi
+ \advance\labelwidth-\labelsep}
+%%% From File: scrkpar.dtx
+\@ifundefined{@list@extra}{}{%
+ \l@addto@macro{\@listi}{\@list@extra}%
+ \let\@listI=\@listi
+ \l@addto@macro{\@listii}{\@list@extra}%
+ \l@addto@macro{\@listiii}{\@list@extra}%
+ \l@addto@macro{\footnotesize}{\protect\add@extra@listi{ftns}}%
+ \l@addto@macro{\small}{\protect\add@extra@listi{sml}}%
+ \@listi
+}
+\endinput
+%%
+%% End of file `scrsize10pt.clo'.
diff --git a/Master/texmf-dist/tex/latex/koma-script/scrsize11pt.clo b/Master/texmf-dist/tex/latex/koma-script/scrsize11pt.clo
new file mode 100644
index 00000000000..95ec33a88e0
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/koma-script/scrsize11pt.clo
@@ -0,0 +1,162 @@
+%%
+%% This is file `scrsize11pt.clo',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% scrkvers.dtx (with options: `clo,11pt')
+%% scrkfont.dtx (with options: `clo,11pt')
+%% scrkpar.dtx (with options: `clo,11pt')
+%%
+%% Copyright (c) 1994-2007
+%% Markus Kohm and any individual authors listed elsewhere in this file.
+%%
+%% This file was generated from file(s) of the KOMA-Script bundle.
+%% ---------------------------------------------------------------
+%%
+%% It may be distributed under the conditions of the
+%% LaTeX Project Public License in the version distributed together
+%% with KOMA-Script, see file `lppl.txt' or `lppl-de.txt'.
+%%
+%% This file may only be distributed together with a copy of the
+%% KOMA-Script bundle. You may however distribute the
+%% KOMA-Script bundle without all such generated files. See also
+%% `lppl.txt' or `lppl-de.txt' for additional information.
+%%
+%% The list of files belonging to KOMA-Script distribution is given in
+%% the file `manifest.txt'. See also `lppl.txt' or `lppl-de.txt' for
+%% additional information.
+%%
+%% If this file is a beta version, you are not allowed to distribute it.
+%%
+%% English and German manuals are part of KOMA-Script bundle.
+%% ----------------------------------------------------------
+%%
+%% See `README'.
+%%
+%% The KOMA-Script bundle (but maybe not this file) was based upon the
+%% LaTeX2.09 Script family created by Frank Neukam 1993 and the LaTeX2e
+%% standard classes created by The LaTeX3 Project 1994-1996.
+%%
+%%% From File: scrkvers.dtx
+\begingroup
+ \makeatletter
+ \ifx\KOMAScriptVersion\undefined
+ \newcommand*{\@CheckKOMAScriptVersion}[1]{%
+ \gdef\KOMAScriptVersion{#1}%
+ }%
+ \else
+ \newcommand*{\@CheckKOMAScriptVersion}[1]{%
+ \def\@tempa{#1}%
+ \ifx\KOMAScriptVersion\@tempa\else
+ \@latex@warning@no@line{%
+ \noexpand\KOMAScriptVersion\space is
+ `\KOMAScriptVersion',\MessageBreak
+ but `#1' was expected!\MessageBreak
+ You should not use classes, packages or files
+ from\MessageBreak
+ different KOMA-Script versions%
+ }%
+ \fi
+ }
+ \fi
+ \@CheckKOMAScriptVersion{2008/11/03 v3.00 KOMA-Script}%
+\endgroup
+%%% From File: scrkfont.dtx
+\ProvidesFile{%
+ scrsize11pt.clo%
+}[\KOMAScriptVersion\space font size class option %
+ (11pt)%
+]
+\def\normalsize{%
+ \@setfontsize\normalsize\@xipt{13.6}%
+ \abovedisplayskip 11\p@ \@plus3\p@ \@minus6\p@
+ \abovedisplayshortskip \z@ \@plus3\p@
+ \belowdisplayshortskip 6.5\p@ \@plus3.5\p@ \@minus3\p@
+ \belowdisplayskip \abovedisplayskip
+ \let\@listi\@listI
+}
+\def\small{%
+ \@setfontsize\small\@xpt\@xiipt
+ \abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@
+ \abovedisplayshortskip \z@ \@plus3\p@
+ \belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@
+ \def\@listi{\leftmargin\leftmargini
+ \topsep 6\p@ \@plus2\p@ \@minus2\p@
+ \parsep 3\p@ \@plus2\p@ \@minus\p@
+ \itemsep \parsep}%
+ \belowdisplayskip \abovedisplayskip
+}
+\def\footnotesize{%
+ \@setfontsize\footnotesize\@ixpt{11}%
+ \abovedisplayskip 8\p@ \@plus2\p@ \@minus4\p@
+ \abovedisplayshortskip \z@ \@plus\p@
+ \belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@
+ \def\@listi{\leftmargin\leftmargini
+ \topsep 4\p@ \@plus2\p@ \@minus2\p@
+ \parsep 2\p@ \@plus\p@ \@minus\p@
+ \itemsep \parsep}%
+ \belowdisplayskip \abovedisplayskip
+}
+\def\scriptsize{\@setfontsize\scriptsize\@viiipt{9.5}}
+\def\tiny{\@setfontsize\tiny\@vipt\@viipt}
+\def\large{\@setfontsize\large\@xiipt{14}}
+\def\Large{\@setfontsize\Large\@xivpt{18}}
+\def\LARGE{\@setfontsize\LARGE\@xviipt{22}}
+\def\huge{\@setfontsize\huge\@xxpt{25}}
+\def\Huge{\@setfontsize\Huge\@xxvpt{30}}
+\normalsize
+\setlength\footnotesep {7.7\p@}
+\setlength{\skip\footins} {10\p@ \@plus 4\p@ \@minus 2\p@}
+\setlength\floatsep {12\p@ \@plus 2\p@ \@minus 2\p@}
+\setlength\textfloatsep {20\p@ \@plus 2\p@ \@minus 4\p@}
+\setlength\intextsep {12\p@ \@plus 2\p@ \@minus 2\p@}
+\setlength\dblfloatsep {12\p@ \@plus 2\p@ \@minus 2\p@}
+\setlength\dbltextfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@}
+\setlength\@fptop {0\p@ \@plus 1fil}
+\setlength\@fpsep {8\p@ \@plus 2fil}
+\setlength\@fpbot {0\p@ \@plus 1fil}
+\setlength\@dblfptop {0\p@ \@plus 1fil}
+\setlength\@dblfpsep {8\p@ \@plus 2fil}
+\setlength\@dblfpbot {0\p@ \@plus 1fil}
+\setlength\partopsep {3\p@ \@plus 1\p@ \@minus 1\p@}
+\def\@listi{\leftmargin\leftmargini
+ \parsep 4.5\p@ \@plus2\p@ \@minus\p@
+ \topsep 9\p@ \@plus3\p@ \@minus5\p@
+ \itemsep4.5\p@ \@plus2\p@ \@minus\p@}
+\let\@listI\@listi
+\def\@listii {\leftmargin\leftmarginii
+ \labelwidth\leftmarginii
+ \advance\labelwidth-\labelsep
+ \topsep 4.5\p@ \@plus2\p@ \@minus\p@
+ \parsep 2\p@ \@plus\p@ \@minus\p@
+ \itemsep \parsep}
+\def\@listiii{\leftmargin\leftmarginiii
+ \labelwidth\leftmarginiii
+ \advance\labelwidth-\labelsep
+ \topsep 2\p@ \@plus\p@\@minus\p@
+ \parsep \z@
+ \partopsep \p@ \@plus\z@ \@minus\p@
+ \itemsep \topsep}
+\def\@listiv {\leftmargin\leftmarginiv
+ \labelwidth\leftmarginiv
+ \advance\labelwidth-\labelsep}
+\def\@listv {\leftmargin\leftmarginv
+ \labelwidth\leftmarginv
+ \advance\labelwidth-\labelsep}
+\def\@listvi {\leftmargin\leftmarginvi
+ \labelwidth\leftmarginvi
+ \advance\labelwidth-\labelsep}
+%%% From File: scrkpar.dtx
+\@ifundefined{@list@extra}{}{%
+ \l@addto@macro{\@listi}{\@list@extra}%
+ \let\@listI=\@listi
+ \l@addto@macro{\@listii}{\@list@extra}%
+ \l@addto@macro{\@listiii}{\@list@extra}%
+ \l@addto@macro{\footnotesize}{\protect\add@extra@listi{ftns}}%
+ \l@addto@macro{\small}{\protect\add@extra@listi{sml}}%
+ \@listi
+}
+\endinput
+%%
+%% End of file `scrsize11pt.clo'.
diff --git a/Master/texmf-dist/tex/latex/koma-script/scrsize12pt.clo b/Master/texmf-dist/tex/latex/koma-script/scrsize12pt.clo
new file mode 100644
index 00000000000..a059699b1c8
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/koma-script/scrsize12pt.clo
@@ -0,0 +1,162 @@
+%%
+%% This is file `scrsize12pt.clo',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% scrkvers.dtx (with options: `clo,12pt')
+%% scrkfont.dtx (with options: `clo,12pt')
+%% scrkpar.dtx (with options: `clo,12pt')
+%%
+%% Copyright (c) 1994-2007
+%% Markus Kohm and any individual authors listed elsewhere in this file.
+%%
+%% This file was generated from file(s) of the KOMA-Script bundle.
+%% ---------------------------------------------------------------
+%%
+%% It may be distributed under the conditions of the
+%% LaTeX Project Public License in the version distributed together
+%% with KOMA-Script, see file `lppl.txt' or `lppl-de.txt'.
+%%
+%% This file may only be distributed together with a copy of the
+%% KOMA-Script bundle. You may however distribute the
+%% KOMA-Script bundle without all such generated files. See also
+%% `lppl.txt' or `lppl-de.txt' for additional information.
+%%
+%% The list of files belonging to KOMA-Script distribution is given in
+%% the file `manifest.txt'. See also `lppl.txt' or `lppl-de.txt' for
+%% additional information.
+%%
+%% If this file is a beta version, you are not allowed to distribute it.
+%%
+%% English and German manuals are part of KOMA-Script bundle.
+%% ----------------------------------------------------------
+%%
+%% See `README'.
+%%
+%% The KOMA-Script bundle (but maybe not this file) was based upon the
+%% LaTeX2.09 Script family created by Frank Neukam 1993 and the LaTeX2e
+%% standard classes created by The LaTeX3 Project 1994-1996.
+%%
+%%% From File: scrkvers.dtx
+\begingroup
+ \makeatletter
+ \ifx\KOMAScriptVersion\undefined
+ \newcommand*{\@CheckKOMAScriptVersion}[1]{%
+ \gdef\KOMAScriptVersion{#1}%
+ }%
+ \else
+ \newcommand*{\@CheckKOMAScriptVersion}[1]{%
+ \def\@tempa{#1}%
+ \ifx\KOMAScriptVersion\@tempa\else
+ \@latex@warning@no@line{%
+ \noexpand\KOMAScriptVersion\space is
+ `\KOMAScriptVersion',\MessageBreak
+ but `#1' was expected!\MessageBreak
+ You should not use classes, packages or files
+ from\MessageBreak
+ different KOMA-Script versions%
+ }%
+ \fi
+ }
+ \fi
+ \@CheckKOMAScriptVersion{2008/11/03 v3.00 KOMA-Script}%
+\endgroup
+%%% From File: scrkfont.dtx
+\ProvidesFile{%
+ scrsize12pt.clo%
+}[\KOMAScriptVersion\space font size class option %
+ (12pt)%
+]
+\def\normalsize{%
+ \@setfontsize\normalsize\@xiipt{14.5}%
+ \abovedisplayskip 12\p@ \@plus3\p@ \@minus7\p@
+ \abovedisplayshortskip \z@ \@plus3\p@
+ \belowdisplayshortskip 6.5\p@ \@plus3.5\p@ \@minus3\p@
+ \belowdisplayskip \abovedisplayskip
+ \let\@listi\@listI
+}
+\def\small{%
+ \@setfontsize\small\@xipt{13.6}%
+ \abovedisplayskip 11\p@ \@plus3\p@ \@minus6\p@
+ \abovedisplayshortskip \z@ \@plus3\p@
+ \belowdisplayshortskip 6.5\p@ \@plus3.5\p@ \@minus3\p@
+ \def\@listi{\leftmargin\leftmargini
+ \topsep 9\p@ \@plus3\p@ \@minus5\p@
+ \parsep 4.5\p@ \@plus2\p@ \@minus\p@
+ \itemsep \parsep}%
+ \belowdisplayskip \abovedisplayskip
+}
+\def\footnotesize{%
+ \@setfontsize\footnotesize\@xpt\@xiipt
+ \abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@
+ \abovedisplayshortskip \z@ \@plus3\p@
+ \belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@
+ \def\@listi{\leftmargin\leftmargini
+ \topsep 6\p@ \@plus2\p@ \@minus2\p@
+ \parsep 3\p@ \@plus2\p@ \@minus\p@
+ \itemsep \parsep}%
+ \belowdisplayskip \abovedisplayskip
+}
+\def\scriptsize{\@setfontsize\scriptsize\@viiipt{9.5}}
+\def\tiny{\@setfontsize\tiny\@vipt\@viipt}
+\def\large{\@setfontsize\large\@xivpt{18}}
+\def\Large{\@setfontsize\Large\@xviipt{22}}
+\def\LARGE{\@setfontsize\LARGE\@xxpt{25}}
+\def\huge{\@setfontsize\huge\@xxvpt{30}}
+\let\Huge=\huge
+\normalsize
+\setlength\footnotesep {8.4\p@}
+\setlength{\skip\footins} {10.8\p@ \@plus 4\p@ \@minus 2\p@}
+\setlength\floatsep {12\p@ \@plus 2\p@ \@minus 4\p@}
+\setlength\textfloatsep {20\p@ \@plus 2\p@ \@minus 4\p@}
+\setlength\intextsep {14\p@ \@plus 4\p@ \@minus 4\p@}
+\setlength\dblfloatsep {14\p@ \@plus 2\p@ \@minus 4\p@}
+\setlength\dbltextfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@}
+\setlength\@fptop {0\p@ \@plus 1fil}
+\setlength\@fpsep {10\p@ \@plus 2fil}
+\setlength\@fpbot {0\p@ \@plus 1fil}
+\setlength\@dblfptop {0\p@ \@plus 1fil}
+\setlength\@dblfpsep {10\p@ \@plus 2fil}
+\setlength\@dblfpbot {0\p@ \@plus 1fil}
+\setlength\partopsep {3\p@ \@plus 2\p@ \@minus 2\p@}
+\def\@listi{\leftmargin\leftmargini
+ \parsep 5\p@ \@plus2.5\p@ \@minus\p@
+ \topsep 10\p@ \@plus4\p@ \@minus6\p@
+ \itemsep5\p@ \@plus2.5\p@ \@minus\p@}
+\let\@listI\@listi
+\def\@listii {\leftmargin\leftmarginii
+ \labelwidth\leftmarginii
+ \advance\labelwidth-\labelsep
+ \topsep 5\p@ \@plus2.5\p@ \@minus\p@
+ \parsep 2.5\p@ \@plus\p@ \@minus\p@
+ \itemsep \parsep}
+\def\@listiii{\leftmargin\leftmarginiii
+ \labelwidth\leftmarginiii
+ \advance\labelwidth-\labelsep
+ \topsep 2.5\p@\@plus\p@\@minus\p@
+ \parsep \z@
+ \partopsep \p@ \@plus\z@ \@minus\p@
+ \itemsep \topsep}
+\def\@listiv {\leftmargin\leftmarginiv
+ \labelwidth\leftmarginiv
+ \advance\labelwidth-\labelsep}
+\def\@listv {\leftmargin\leftmarginv
+ \labelwidth\leftmarginv
+ \advance\labelwidth-\labelsep}
+\def\@listvi {\leftmargin\leftmarginvi
+ \labelwidth\leftmarginvi
+ \advance\labelwidth-\labelsep}
+%%% From File: scrkpar.dtx
+\@ifundefined{@list@extra}{}{%
+ \l@addto@macro{\@listi}{\@list@extra}%
+ \let\@listI=\@listi
+ \l@addto@macro{\@listii}{\@list@extra}%
+ \l@addto@macro{\@listiii}{\@list@extra}%
+ \l@addto@macro{\footnotesize}{\protect\add@extra@listi{ftns}}%
+ \l@addto@macro{\small}{\protect\add@extra@listi{sml}}%
+ \@listi
+}
+\endinput
+%%
+%% End of file `scrsize12pt.clo'.
diff --git a/Master/texmf-dist/tex/latex/koma-script/tocbasic.sty b/Master/texmf-dist/tex/latex/koma-script/tocbasic.sty
new file mode 100644
index 00000000000..2a7b81e1b32
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/koma-script/tocbasic.sty
@@ -0,0 +1,406 @@
+%%
+%% This is file `tocbasic.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% tocbasic.dtx (with options: `package')
+%% scrlogo.dtx (with options: `logo')
+%%
+%% Copyright (c) 2007-2008
+%% Markus Kohm and any individual authors listed elsewhere in this file.
+%%
+%% This file was generated from file(s) of the KOMA-Script bundle.
+%% ---------------------------------------------------------------
+%%
+%% This work may be distributed and/or modified under the conditions of
+%% the LaTeX Project Public License, version 1.3b of the license.
+%% The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3b or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later and of this work.
+%%
+%% This work has the LPPL maintenance status "author-maintained".
+%%
+%% The Current Maintainer and author of this work is Markus Kohm.
+%%
+%% This file may only be distributed together with the files
+%% `scrlogo.dtx' and `tocbasic.dtx'. You may however distribute the files
+%% `scrlogo.dtx' and `tocbasic.dtx' without this file.
+%% See also `tocbasic.dtx' for additional information.
+%%
+%% If this file is a beta version, you are not allowed to distribute it.
+%%
+%% Currently there is only a short english manual at `tocbasic.dtx', that
+%% should also be found as `tocbasic.pdf'.
+%%
+%% The KOMA-Script bundle (but maybe not this file) was based upon the
+%% LaTeX2.09 Script family created by Frank Neukam 1993 and the LaTeX2e
+%% standard classes created by The LaTeX3 Project 1994-1996.
+%%
+%%% From File: tocbasic.dtx
+\def\tocbasicversion{2008/10/06 v1.0}
+\NeedsTeXFormat{LaTeX2e}[1995/06/01]
+\ProvidesPackage{tocbasic}
+ [\tocbasicversion
+ (package)%
+ ]
+\newcommand*{\tb@listoftocs}{}
+\newcommand{\ifattoclist}[1]{%
+ \begingroup
+ \def\do##1##2{%
+ \edef\reserved@a{##1}%
+ \ifx\reserved@a\reserved@b\@tempswatrue\fi
+ }%
+ \edef\reserved@b{#1}\@tempswafalse\tb@listoftocs
+ \if@tempswa\aftergroup\@firstoftwo\else\aftergroup\@secondoftwo\fi
+ \endgroup
+}
+\newcommand*{\addtotoclist}{%
+ \@ifnextchar [%]
+ \@@addtotoclist\@addtotoclist
+}
+\newcommand*{\@addtotoclist}{%
+ \ifx\@currname\@empty
+ \def\reserved@a{\@@addtotoclist[]}%
+ \else
+ \edef\reserved@a{\noexpand\@@addtotoclist[\@currname.\@currext]}%
+ \fi
+ \reserved@a
+}
+\newcommand*{\@@addtotoclist}[2][]{%
+ \ifattoclist{#2}{%
+ \PackageError{tocbasic}{%
+ file extension `#2' cannot be used twice
+ }{%
+ File extension `#2' is already used by a toc-file, while
+ \ifx\relax#1\relax someone\else #2\fi\MessageBreak
+ tried to use it again for a toc-file.\MessageBreak
+ This may be either an incompatibility of packages, an error at a
+ package,\MessageBreak
+ or a mistake by the user.\MessageBreak
+ }%
+ }{%
+ \g@addto@macro\tb@listoftocs{\do{#2}{#1}}%
+ \ifx\relax #1\relax\else
+ \@ifundefined{tb@#1@add@hook}{}{%
+ \edef\reserved@a{%
+ \noexpand\def\noexpand\@currext{#2}%
+ \noexpand\@nameuse{tb@#1@add@hook}%
+ \noexpand\def\noexpand\@currext{\@currext}%
+ }\reserved@a
+ }%
+ \fi
+ \edef\reserved@a{%
+ \noexpand\def\noexpand\@currext{#2}%
+ \noexpand\@nameuse{tb@@add@hook}%
+ \noexpand\def\noexpand\@currext{\@currext}%
+ }\reserved@a
+ }%
+}
+\newcommand*{\AtAddToTocList}{%
+ \@ifnextchar [%]
+ \@@AtAddToTocList\@AtAddToTocList
+}
+\newcommand*{\@AtAddToTocList}{%
+ \ifx\@currname\@empty
+ \def\reserved@a{\@@AtAddToTocList[]}%
+ \else
+ \edef\reserved@a{\noexpand\@@AtAddToTocList[\@currname.\@currext]}%
+ \fi
+ \reserved@a
+}
+\newcommand*{\@@AtAddToTocList}[1][]{%
+ \@ifundefined{tb@#1@add@hook}{\@namedef{tb@#1@add@hook}{}}{}%
+ \expandafter\g@addto@macro\csname tb@#1@add@hook\endcsname
+}
+\newcommand*{\tocbasic@extend@babel}[1]{%
+ \begingroup\expandafter\expandafter\expandafter\endgroup
+ \ifx\csname bbl@set@language\endcsname\relax
+ \PackageInfo{tocbasic}{babel extension for `#1' omitted\MessageBreak
+ because of missing \string\bbl@set@language}%
+ \else
+ \iftocfeature{#1}{nobabel}{%
+ \PackageInfo{tocbasic}{omitting babel extension for `#1'\MessageBreak
+ because of feature `nobabel' available\MessageBreak
+ for `#1'}%
+ }{%
+ \PackageInfo{tocbasic}{setting babel extension for `#1'}%
+ \expandafter\gdef\expandafter\bbl@set@language\expandafter##\expandafter1%
+ \expandafter{%
+ \bbl@set@language{##1}%
+ \addtocontents{#1}{\xstring\select@language{\languagename}}%
+ }%
+ }%
+ \fi
+}
+\AtAddToTocList[]{\expandafter\tocbasic@extend@babel\expandafter{\@currext}}
+\newcommand*{\removefromtoclist}{%
+ \@ifnextchar [%]
+ \@removefromtoclist\@@removefromtoclist
+}
+\newcommand*{\@removefromtoclist}[2][]{%
+ \begingroup
+ \let\tb@oldlist\tb@listoftocs
+ \def\do##1##2{%
+ \edef\reserved@a{##1}%
+ \ifx\reserved@a\reserved@b
+ \begingroup
+ \edef\reserved@a{##2}%
+ \edef\reserved@b{#1}%
+ \ifx\reserved@a\reserved@b\else
+ \g@addto@macro\tb@listoftocs{\do{##1}{##2}}%
+ \fi
+ \endgroup
+ \else
+ \g@addto@macro\tb@listoftocs{\do{##1}{##2}}%
+ \fi
+ }%
+ \edef\reserved@b{#2}\let\tb@listoftocs\@empty
+ \tb@oldlist
+ \endgroup
+}
+\newcommand*{\@@removefromtoclist}[1]{%
+ \begingroup
+ \let\tb@oldlist\tb@listoftocs
+ \def\do##1##2{%
+ \edef\reserved@a{##1}%
+ \ifx\reserved@a\reserved@b\else
+ \g@addto@macro\tb@listoftocs{\do{##1}{##2}}%
+ \fi
+ }%
+ \edef\reserved@b{#1}\let\tb@listoftocs\@empty
+ \tb@oldlist
+ \endgroup
+}
+\newcommand{\doforeachtocfile}{%
+ \@ifnextchar [%]
+ \@doforeachtocfile\@@doforeachtocfile
+}
+\newcommand{\@doforeachtocfile}[2][]{%
+ \def\do##1##2{%
+ \edef\reserved@a{#1}\edef\reserved@b{##2}\ifx\reserved@a\reserved@b
+ \edef\@currext{##1}#2%
+ \fi
+ }%
+ \edef\reserved@a{%
+ \noexpand\tb@listoftocs
+ \noexpand\def\noexpand\@currext{\@currext}%
+ }\reserved@a
+ \let\do\relax
+}
+\newcommand{\@@doforeachtocfile}[1]{%
+ \def\do##1##2{%
+ \edef\@currext{##1}#1%
+ }%
+ \edef\reserved@a{%
+ \noexpand\tb@listoftocs
+ \noexpand\def\noexpand\@currext{\@currext}%
+ }\reserved@a
+ \let\do\relax
+}
+\newcommand{\addtoeachtocfile}{%
+ \@ifnextchar [%]
+ \@addtoeachtocfile\@@addtoeachtocfile
+}
+\newcommand{\@addtoeachtocfile}[2][]{%
+ \doforeachtocfile[{#1}]{\addtocontents{\@currext}{#2}}%
+}
+\newcommand{\@@addtoeachtocfile}[1]{%
+ \doforeachfocfile{\addtocontents{\@currext}{#1}}%
+}
+\newcommand{\addcontentslinetoeachtocfile}{%
+ \@ifnextchar [%]
+ \@addcontentslinetoeachtocfile\@@addcontentslinetoeachtocfile
+}
+\newcommand{\@addcontentslinetoeachtocfile}[3][]{%
+ \doforeachtocfile[{#1}]{\addcontentsline{\@currext}{#2}{#3}}%
+}
+\newcommand{\@@addcontentslinetoeachtocfile}[2]{%
+ \doforeachtocfile{\addcontentsline{\@currext}{#1}{#2}}%
+}
+\newcommand*{\tocbasic@starttoc}[1]{%
+ \begingroup
+ \setlength{\parskip}{\z@}%
+ \setlength{\parindent}{\z@}%
+ \setlength{\parfillskip}{\z@\@plus 1fil}%
+ \def\@currext{#1}%
+ \csname tocbasic@@before@hook\endcsname
+ \csname tb@#1@before@hook\endcsname
+ \@starttoc{#1}%
+ \csname tb@#1@after@hook\endcsname
+ \csname tocbasic@@after@hook\endcsname
+ \endgroup
+}
+\newcommand*{\tocbasic@@before@hook}{}
+\newcommand*{\tocbasic@@after@hook}{}
+\newcommand{\BeforeStartingTOC}[2][]{%
+ \expandafter\g@addto@macro\csname tb@#1@before@hook\endcsname{#2}%
+}
+\newcommand{\AfterStartingTOC}[2][]{%
+ \expandafter\g@addto@macro\csname tb@#1@after@hook\endcsname{#2}%
+}
+\newcommand*{\listoftoc}{%
+ \@ifstar \tocbasic@starttoc\@listoftoc
+}
+\newcommand*{\@listoftoc}[2][\list@fname]{%
+ \begingroup
+ \@ifundefined{listof#2name}{%
+ \PackageWarning{tocbasic}{%
+ You should either define \expandafter\string\csname
+ listof#2name\endcsname\MessageBreak
+ or use the optional argument of \string\listoftoc\space\MessageBreak
+ to set the term to be used for the\MessageBreak
+ heading of list of #2}%
+ \def\list@fname{\listofname~#2}%
+ }{%
+ \expandafter\let\expandafter\list@fname\csname listof#2name\endcsname
+ }%
+ \if@twocolumn
+ \aftergroup\twocolumne\onecolumn
+ \fi
+ \def\@currext{#2}%
+ \tocbasic@listhead{#1}%
+ \tocbasic@starttoc{#2}%
+ \endgroup
+}
+\newcommand*{\listofname}{List of}
+\newcommand*{\listofeachtoc}{%
+ \@ifnextchar [%]
+ \@listofeachtoc\@@listofeachtoc
+}
+\newcommand{\@listofeachtoc}[1][]{%
+ \doforeachtocfile[{#1}]{\listoftoc{\@currext}}%
+}
+\newcommand{\@@listofeachtoc}[1]{%
+ \doforeachfocfile{\listoftoc{\@currext}}%
+}
+\newcommand*{\tocbasic@listhead}[1]{%
+ \@ifundefined{tocbasic@listhead@\@currext}{%
+ \begingroup\expandafter\expandafter\expandafter\endgroup
+ \expandafter\ifx\csname chapter\endcsname\relax
+ \expandafter\def\csname tocbasic@listhead@\@currext\endcsname##1{%
+ \iftocfeature{\@currext}{leveldown}{%
+ \iftocfeature{\@currext}{numbered}{%
+ \subsection[##1]{##1}%
+ }{%
+ \subsection*{##1}%
+ \iftocfeature{\@currext}{totoc}{%
+ \addcontentsline{toc}{subsection}{##1}%
+ }{}%
+ }%
+ \ifx\@mkboth\@gobbletwo\else\markright{\MakeMarkcase{##1}}\fi
+ }{%
+ \iftocfeature{\@currext}{numbered}{%
+ \section[##1]{##1\@mkboth{##1}{##1}}%
+ }{%
+ \section*{##1}%
+ \iftocfeature{\@currext}{totoc}{%
+ \addcontentsline{toc}{section}{##1}%
+ }{}%
+ }%
+ \@mkboth{\MakeMarkcase{##1}}{\MakeMarkcase{##1}}%
+ }%
+ }%
+ \else
+ \expandafter\def\csname tocbasic@listhead@\@currext\endcsname##1{%
+ \iftocfeature{\@currext}{leveldown}{%
+ \iftocfeature{\@currext}{numbered}{%
+ \section{##1}%
+ }{%
+ \section*{##1}%
+ \iftocfeature{\@currext}{totoc}{%
+ \addcontentsline{toc}{section}{##1}%
+ }{}%
+ }%
+ \ifx\@mkboth\@gobbletwo\else\markright{\MakeMarkcase{##1}}\fi
+ }{%
+ \iftocfeature{\@currext}{numbered}{%
+ \chapter[##1]{##1\@mkboth{##1}{##1}}%
+ }{%
+ \chapter*{##1}%
+ \iftocfeature{\@currext}{totoc}{%
+ \addcontentsline{toc}{chapter}{##1}%
+ }{}%
+ }%
+ \@mkboth{\MakeMarkcase{##1}}{\MakeMarkcase{##1}}%
+ }%
+ }%
+ \fi
+ }{}%
+ \csname tb@@beforehead@hook\endcsname
+ \csname tb@\@currext @beforehead@hook\endcsname
+ \csname tocbasic@listhead@\@currext\endcsname{#1}%
+ \csname tb@\@currext @afterhead@hook\endcsname
+ \csname tb@@afterhead@hook\endcsname
+}
+\newcommand{\BeforeTOCHead}[2][]{%
+ \expandafter\g@addto@macro\csname tb@#1@beforehead@hook\endcsname{#2}%
+}
+\newcommand{\AfterTOCHead}[2][]{%
+ \expandafter\g@addto@macro\csname tb@#1@afterhead@hook\endcsname{#2}%
+}
+\AtBeginDocument{%
+ \@ifundefined{MakeMarkcase}{%
+ \begingroup\expandafter\expandafter\expandafter\endgroup
+ \expandafter\ifx\csname KOMAClassName\endcsname\relax
+ \let\MakeMarkcase\MakeUppercase
+ \else
+ \let\MakeMarkcase\@firstofone
+ \fi
+ }{}%
+}
+\newcommand*{\deftocheading}[1]{%
+ \@namedef{tocbasic@listhead@#1}##1}
+\newcommand*{\setuptoc}[2]{%
+ \@for\@tempa:=#2\do{%
+ \expandafter\tb@@sp@def\expandafter\@tempa\expandafter{\@tempa}%
+ \@namedef{tocbasic@#1@feature@\@tempa}{}%
+ }%
+}
+\newcommand*{\unsettoc}[2]{%
+ \@for\@tempa:=#2\do{%
+ \expandafter\tb@@sp@def\expandafter\@tempa\expandafter{\@tempa}%
+ \expandafter\let\csname tocbasic@#1@feature@\@tempa\endcsname\relax
+ }%
+}
+\def\@tempa#1{%
+ \def\tb@@sp@def##1##2{%
+ \futurelet\tb@sp@tempa\tb@@sp@d##2\@nil\@nil#1\@nil\relax##1}%
+ \def\tb@@sp@d{%
+ \ifx\tb@sp@tempa\@sptoken
+ \expandafter\tb@@sp@b
+ \else
+ \expandafter\tb@@sp@b\expandafter#1%
+ \fi}%
+ \def\tb@@sp@b#1##1 \@nil{\tb@@sp@c##1}%
+}
+\@tempa{ }
+\def\tb@@sp@c#1\@nil#2\relax#3{\@temptokena{#1}\edef#3{\the\@temptokena}}
+\setuptoc{toc}{nobabel}
+\setuptoc{lof}{nobabel}
+\setuptoc{lot}{nobabel}
+\newcommand*{\iftocfeature}[2]{%
+ \begingroup\expandafter\expandafter\expandafter\endgroup
+ \expandafter\ifx\csname tocbasic@#1@feature@#2\endcsname\relax
+ \expandafter\@secondoftwo
+ \else
+ \expandafter\@firstoftwo
+ \fi
+}
+\newcommand*{\tocbasicautomode}{%
+ \let\tb@saved@starttoc\@starttoc
+ \BeforeStartingTOC{%
+ \let\@starttoc\tb@saved@starttoc
+ \expandafter\ifattoclist\expandafter{\@currext}{}{%
+ \@addtotoclist[tocbasicautomode]{\@currext}%
+ }%
+ }%
+}
+%%% From File: scrlogo.dtx
+\@ifundefined{KOMAScript}{%
+ \DeclareRobustCommand{\KOMAScript}{\textsf{K\kern.05em O\kern.05em%
+ M\kern.05em A\kern.1em-\kern.1em Script}}}{}
+\endinput
+%%
+%% End of file `tocbasic.sty'.
diff --git a/Master/texmf-dist/tex/latex/koma-script/tocstyle.sty b/Master/texmf-dist/tex/latex/koma-script/tocstyle.sty
index d221819ca8e..ac668525223 100644
--- a/Master/texmf-dist/tex/latex/koma-script/tocstyle.sty
+++ b/Master/texmf-dist/tex/latex/koma-script/tocstyle.sty
@@ -7,7 +7,7 @@
%% tocstyle.dtx (with options: `package,trace,tocstyle')
%% scrlogo.dtx (with options: `logo')
%%
-%% Copyright (c) 2007 by Markus Kohm <komascript(at)gmx.info>
+%% Copyright (c) 2007-2008 by Markus Kohm <komascript(at)gmx.info>
%%
%% Copyright (c) 1994-2007
%% Markus Kohm and any individual authors listed elsewhere in this file.
@@ -50,7 +50,7 @@
%%% From File: tocstyle.dtx
\NeedsTeXFormat{LaTeX2e}[1995/06/01]
\ProvidesPackage{tocstyle}
- [2007/12/21 v0.2alpha LaTeX2e KOMA-Script package (versatile toc styles)]
+ [2008/10/20 v0.2c-alpha LaTeX2e KOMA-Script package (versatile toc styles)]
\PackageWarningNoLine{tocstyle}{%
THIS IS AN ALPHA VERSION!\MessageBreak
USAGE OF THIS VERSION IS ON YOUR OWN RISK!\MessageBreak
@@ -123,15 +123,19 @@
toctextentriesleft}
\ProcessOptions\relax
\ifcsname if@tocleft\endcsname
- \if@tocleft
- \PackageWarningNoLine{tocstyle}{%
- You should not use class option `tocleft'!\MessageBreak
- This may result in errors or unexpected results.\MessageBreak
- I'll try to deactivate `tocleft', now.\MessageBreak
- You may use options `tocflat' and\MessageBreak
- `tocindentauto' instead of `tocleft'}%
- \csname @tocleftfalse\endcsname
- \fi
+ \expandafter\let\csname if@tempswa\expandafter\endcsname
+ \csname if@tocleft\endcsname
+\else
+ \@tempswafalse
+\fi
+\if@tempswa
+ \PackageWarningNoLine{tocstyle}{%
+ You should not use class option `toc=flat'!\MessageBreak
+ This may result in errors or unexpected results.\MessageBreak
+ I'll try to deactivate `toc=flat', now.\MessageBreak
+ You may use package options `tocflat' and\MessageBreak
+ `tocindentauto' instead of `toc=flat'}%
+ \csname @tocleftfalse\endcsname
\fi
\newcommand*\tocstyle@saved@starttoc{}
\let\tocstyle@saved@starttoc\@starttoc
@@ -638,30 +642,47 @@
}
\newcommand*{\tocstyle@feature@excludelist}{}
\newcommand*{\usetocstyle}[2][]{%
- \@ifundefined{tocstyle@style@#2}{%
- \PackageError{tocstyle}{unknown TOC style `#2'}{%
- You've told me to use TOC style `#2',\MessageBreak
- but there's no TOC style `#2' defined.}%
- }{%
- \def\settocfeature{%
- \@ifnextchar[ {\@@settocfeature[{#1}]}{\@@settocfeature[{#1}][]}%
+ \@ifundefined{tocstyle@deprecated@style@#2}{%
+ \@ifundefined{tocstyle@style@#2}{%
+ \PackageError{tocstyle}{unknown TOC style `#2'}{%
+ You've told me to use TOC style `#2',\MessageBreak
+ but there's no TOC style `#2' defined.}%
+ }{%
+ \def\settocfeature{%
+ \@ifnextchar[ {\@@settocfeature[{#1}]}{\@@settocfeature[{#1}][]}%
+ }%
+ \let\settocstylefeature\settocfeature
+ \expandafter\ifx\csname tocstyle@commandlist@#1\endcsname\relax
+ \else
+ \expandafter\expandafter\expandafter\@for
+ \expandafter\expandafter\expandafter\@tempa
+ \expandafter\expandafter\expandafter:%
+ \expandafter\expandafter\expandafter=%
+ \csname tocstyle@commandlist@#1\endcsname
+ \do{%
+ \expandafter\let\csname \@tempa\endcsname\relax
+ }%
+ \expandafter\let\csname tocstyle@commandlist@#1\endcsname\relax
+ \fi
+ \@usetocstyle{#2}%
+ \let\settocfeature\@settocfeature
+ \let\settocstylefeature\@settocstylefeature
}%
- \let\settocstylefeature\settocfeature
- \expandafter\ifx\csname tocstyle@commandlist@#1\endcsname\relax
+ }{%
+ \expandafter\ifx\csname tocstyle@deprecated@style@#2\endcsname\@empty
+ \PackageWarning{tocstyle}{%
+ deprecated TOC style `#2'!\MessageBreak
+ You should not longer use this style,\MessageBreak
+ because it will be removed soon.\MessageBreak
+ You should select another TOC style}%
+ \usetocstyle[{#1}]{deprecated@#2}%
\else
- \expandafter\expandafter\expandafter\@for
- \expandafter\expandafter\expandafter\@tempa
- \expandafter\expandafter\expandafter:%
- \expandafter\expandafter\expandafter=%
- \csname tocstyle@commandlist@#1\endcsname
- \do{%
- \expandafter\let\csname \@tempa\endcsname\relax
- }%
- \expandafter\let\csname tocstyle@commandlist@#1\endcsname\relax
+ \PackageWarning{tocstyle}{%
+ deprecated TOC style `#2'!\MessageBreak
+ You should use TOC style '\csname
+ tocstyle@deprecated@style@#2\endcsname'\MessageBreak
+ instead of `#2'}%
\fi
- \@usetocstyle{#2}%
- \let\settocfeature\@settocfeature
- \let\settocstylefeature\@settocstylefeature
}%
}
\newcommand*{\@usetocstyle}[1]{%
@@ -731,10 +752,11 @@
}
\begingroup\expandafter\expandafter\expandafter\endgroup
\expandafter\ifx\csname sectfont\endcsname\relax
- \newtocstyle{KOMAScript}{%
+ \newtocstyle{KOMAlike}{%
\settocfeature{dothook}{\normalfont}%
\settocfeature[-1]{entryhook}{\sffamily\bfseries}%
\settocfeature[-1]{entryvskip}{2.25em\@plus\p@}%
+ \settocfeature[-1]{leaders}{\hfill}%
\settocfeature[0]{entryvskip}{1em\@plus\p@}%
\settocfeature[0]{leaders}{\hfill}%
\settocfeature[0]{entryhook}{%
@@ -756,10 +778,11 @@
\fi
}
\else
- \newtocstyle{KOMAScript}{%
+ \newtocstyle{KOMAlike}{%
\settocfeature{dothook}{\normalfont}%
\settocfeature[-1]{entryhook}{\sectfont}%
\settocfeature[-1]{entryvskip}{2.25em\@plus\p@}%
+ \settocfeature[-1]{leaders}{\hfill}%
\settocfeature[0]{entryvskip}{1em\@plus\p@}%
\settocfeature[0]{leaders}{\hfill}%
\settocfeature[0]{entryhook}{%
@@ -781,7 +804,8 @@
\fi
}
\fi
-\newtocstyle[KOMAScript]{classic}{%
+\newcommand*{\tocstyle@deprecated@style@KOMAScript}{KOMAlike}%
+\newtocstyle[KOMAlike]{classic}{%
\settocfeature{pagenumberhook}{\normalfont\normalcolor}%
\settocfeature{raggedhook}{\raggedright}%
}
diff --git a/Master/texmf-dist/tex/latex/koma-script/typearea.sty b/Master/texmf-dist/tex/latex/koma-script/typearea.sty
index eb193344299..c612137313a 100644
--- a/Master/texmf-dist/tex/latex/koma-script/typearea.sty
+++ b/Master/texmf-dist/tex/latex/koma-script/typearea.sty
@@ -62,7 +62,7 @@
\fi
}
\fi
- \@CheckKOMAScriptVersion{2007/12/24 v2.98 KOMA-Script}%
+ \@CheckKOMAScriptVersion{2008/11/03 v3.00 KOMA-Script}%
\endgroup
%%% From File: scrktare.dtx
\ProvidesPackage{typearea}[%
@@ -221,6 +221,12 @@
\endgroup
\def\ta@hh{#1\baselineskip}%
}
+\KOMA@key{headheight}{%
+ \begingroup
+ \setlength{\@tempdima}{#1}%
+ \endgroup
+ \def\ta@hh{#1}%
+}
\newif\if@hincl\@ifundefined{if@hsl}{}{\let\if@hincl\if@hsl}
\KOMA@ifkey{headinclude}{@hincl}
\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{headexclude}{%
@@ -257,10 +263,27 @@
\AtEndOfPackage{\KOMA@key{DIV}{\typearea[current]{#1}}}
\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{DIVcalc}{DIV=calc}
\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{DIVclassic}{DIV=classic}
+\newif\if@semitwoside
+\g@addto@macro\@twosidetrue\@semitwosidefalse
+\g@addto@macro\@twosidefalse\@semitwosidefalse
\KOMA@key{twoside}[true]{%
\if@atdocument\if@twoside\cleardoublepage\else\clearpage\fi\fi
- \KOMA@set@ifkey{twoside}{@twoside}{#1}%
- \if@twoside\@mparswitchtrue\else\@mparswitchfalse\fi%
+ \ifstr{#1}{semi}{%
+ \@twosidetrue
+ \@semitwosidetrue
+ }{%
+ \def\FamilyElseValue{, `semi'}%
+ \KOMA@set@ifkey{twoside}{@twoside}{#1}%
+ }%
+ \if@twoside
+ \if@semitwoside
+ \@mparswitchfalse
+ \else
+ \@mparswitchtrue
+ \fi
+ \else
+ \@mparswitchfalse
+ \fi%
\csname recalctypearea\endcsname
}
\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{oneside}{twoside=false}
@@ -347,8 +370,8 @@
\ifnotundefined{mediaheight}{\mediaheight=\paperheight}{}%
}%
}
-\KOMA@DeclareObsoleteOption[\PackageWarning]{dvips}{%
- pagesize=dvips%
+\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{dvips}{%
+ pagesize=automedia%
}
\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{pdftex}{%
pagesize=pdftex%
@@ -444,7 +467,11 @@
}{}
\KOMAExecuteOptions{paper=A4}
\if@twoside
- \KOMAExecuteOptions{twoside}
+ \if@semitwoside
+ \KOMAExecuteOptions{twoside=semi}
+ \else
+ \KOMAExecuteOptions{twoside}
+ \fi
\else
\KOMAExecuteOptions{twoside=false}
\fi
@@ -464,7 +491,11 @@
\advance\marginparwidth by-\marginparsep
\else
\if@twoside
- \marginparwidth=1.5\ta@hblk
+ \if@semitwoside
+ \marginparwidth=\ta@hblk
+ \else
+ \marginparwidth=1.5\ta@hblk
+ \fi
\else
\marginparwidth=\ta@hblk
\fi
@@ -472,12 +503,18 @@
\oddsidemargin=-1in
\evensidemargin=-1in
\if@twoside
- \advance\oddsidemargin by\ta@hblk
- \advance\oddsidemargin by\ta@bcor
- \advance\evensidemargin by2\ta@hblk
- \if@mincl
- \advance\evensidemargin by\marginparwidth
- \advance\evensidemargin by\marginparsep
+ \if@semitwoside
+ \advance\oddsidemargin by1.5\ta@hblk
+ \advance\oddsidemargin by\ta@bcor
+ \evensidemargin=\oddsidemargin
+ \else
+ \advance\oddsidemargin by\ta@hblk
+ \advance\oddsidemargin by\ta@bcor
+ \advance\evensidemargin by2\ta@hblk
+ \if@mincl
+ \advance\evensidemargin by\marginparwidth
+ \advance\evensidemargin by\marginparsep
+ \fi
\fi
\else
\advance\oddsidemargin by1.5\ta@hblk
@@ -599,7 +636,7 @@
\if@mincl
\PackageInfo{typearea}{%
With option `mpinclude' there are no predefined\MessageBreak
- DIV-values. Using DIV calculation for good line\MessageBreak
+ DIV values. Using DIV calculation for good line\MessageBreak
width%
}%
\ta@div=2
@@ -787,62 +824,67 @@
\fi
\ifnum\@tempcnta <-15
\PackageWarningNoLine{typearea}{%
- Bad DIV-value!\MessageBreak
+ Bad DIV value!\MessageBreak
You should e.g. decrease DIV, increase fontsize\MessageBreak
or change papersize%
}%
\else
\ifnum\@tempcnta>15
\PackageWarningNoLine{typearea}{%
- Bad DIV-value!\MessageBreak
+ Bad DIV value!\MessageBreak
You should e.g. increase DIV, decrease fontsize\MessageBreak
or change papersize%
}
\fi\fi
\ifnum\ta@div <6
\PackageWarningNoLine{typearea}{%
- Very low DIV-value!\MessageBreak
- DIV-values less than 6 result in textwidth/-height\MessageBreak
+ Very low DIV value!\MessageBreak
+ DIV values less than 6 result in textwidth/-height\MessageBreak
smaller than total marginwidth/-height.\MessageBreak
You should e.g. increase DIV, increase fontsize or\MessageBreak
change papersize%
}
\fi
- \PackageInfo{typearea}{%
- These are the values describing the layout:\MessageBreak
- DIV\space\space=\space\number\ta@div\MessageBreak
- BCOR\space=\space\the\ta@bcor\MessageBreak
- \string\paperwidth\space\space\space\space\space\space=%
- \space\the\paperwidth\MessageBreak
- \space\string\textwidth\space\space\space\space\space\space=%
- \space\the\textwidth\MessageBreak
- \space DIV-departure\space\space\space=%
- \space\the\@tempcnta/100\MessageBreak
- \space\string\evensidemargin\space=%
- \space\the\evensidemargin\MessageBreak
- \space\string\oddsidemargin\space\space=%
- \space\the\oddsidemargin\MessageBreak
- \string\paperheight\space\space\space\space\space=%
- \space\the\paperheight\MessageBreak
- \space\string\textheight\space\space\space\space\space=%
- \space\the\textheight\MessageBreak
- \space\string\topmargin\space\space\space\space\space\space=%
- \space\the\topmargin\MessageBreak
- \space\string\headheight\space\space\space\space\space=%
- \space\the\headheight\MessageBreak
- \space\string\headsep\space\space\space\space\space\space\space\space=%
- \space\the\headsep\MessageBreak
- \space\string\topskip\space\space\space\space\space\space\space\space=%
- \space\the\topskip\MessageBreak
- \space\string\footskip\space\space\space\space\space\space\space=%
- \space\the\footskip\MessageBreak
- \space\string\baselineskip\space\space\space=%
- \space\the\baselineskip\MessageBreak
- }%
+ \ta@layoutinfo{\number\ta@div}{\the\@tempcnta}%
\@typearea@end
\activateareas
\fi
}
+\newcommand*{\ta@layoutinfo}[2]{%
+ \PackageInfo{typearea}{%
+ These are the values describing the layout:\MessageBreak
+ DIV\space\space=\space#1\MessageBreak
+ BCOR\space=\space\the\ta@bcor\MessageBreak
+ \string\paperwidth\space\space\space\space\space\space=%
+ \space\the\paperwidth\MessageBreak
+ \space\string\textwidth\space\space\space\space\space\space=%
+ \space\the\textwidth\MessageBreak
+ \ifx\relax#2\relax\else
+ \space DIV departure\space\space\space=%
+ \space#2\@percentchar\MessageBreak
+ \fi
+ \space\string\evensidemargin\space=%
+ \space\the\evensidemargin\MessageBreak
+ \space\string\oddsidemargin\space\space=%
+ \space\the\oddsidemargin\MessageBreak
+ \string\paperheight\space\space\space\space\space=%
+ \space\the\paperheight\MessageBreak
+ \space\string\textheight\space\space\space\space\space=%
+ \space\the\textheight\MessageBreak
+ \space\string\topmargin\space\space\space\space\space\space=%
+ \space\the\topmargin\MessageBreak
+ \space\string\headheight\space\space\space\space\space=%
+ \space\the\headheight\MessageBreak
+ \space\string\headsep\space\space\space\space\space\space\space\space=%
+ \space\the\headsep\MessageBreak
+ \space\string\topskip\space\space\space\space\space\space\space\space=%
+ \space\the\topskip\MessageBreak
+ \space\string\footskip\space\space\space\space\space\space\space=%
+ \space\the\footskip\MessageBreak
+ \space\string\baselineskip\space\space\space=%
+ \space\the\baselineskip\MessageBreak
+ }%
+}
\AtEndOfPackage{\newcommand*{\recalctypearea}{\typearea[current]{last}}}
\newcommand*\areaset[3][\z@]{%
\edef\@tempa{#1}\edef\@tempb{current}\ifx\@tempa\@tempb\else
@@ -859,9 +901,15 @@
\oddsidemargin=-1in
\evensidemargin=-1in
\if@twoside
- \advance\oddsidemargin by\ta@hblk
- \advance\oddsidemargin by\ta@bcor
- \advance\evensidemargin by2\ta@hblk
+ \if@semitwoside
+ \advance\oddsidemargin by1.5\ta@hblk
+ \advance\oddsidemargin by\ta@bcor
+ \evensidemargin\oddsidemargin
+ \else
+ \advance\oddsidemargin by\ta@hblk
+ \advance\oddsidemargin by\ta@bcor
+ \advance\evensidemargin by2\ta@hblk
+ \fi
\else
\advance\oddsidemargin by1.5\ta@hblk
\advance\oddsidemargin by\ta@bcor
@@ -895,12 +943,17 @@
\advance\topmargin by-\headsep
\fi
\if@twoside
- \marginparwidth=1.5\ta@hblk
+ \if@semitwoside
+ \marginparwidth=\ta@hblk
+ \else
+ \marginparwidth=1.5\ta@hblk
+ \fi
\else
\marginparwidth=\ta@hblk
\fi
\marginparsep=1cc
\marginparpush=0.45\baselineskip
+ \ta@layoutinfo{areaset}{}%
\activateareas
}
\typearea[current]{current}