diff options
author | Karl Berry <karl@freefriends.org> | 2006-08-20 00:02:10 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2006-08-20 00:02:10 +0000 |
commit | 524b07990fd2040ab6ce24b015b9a2bd4544a3c1 (patch) | |
tree | 93d7c1e1089e6c5df66ce81b57ed93482321baaa /Master/texmf-dist/tex/latex | |
parent | affc79c45bfab740028ac1e6b8480c5465a42b01 (diff) |
koma-script 2.95b, using provided texmf zip
git-svn-id: svn://tug.org/texlive/trunk@1990 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex')
19 files changed, 9866 insertions, 7141 deletions
diff --git a/Master/texmf-dist/tex/latex/koma-script/DIN.lco b/Master/texmf-dist/tex/latex/koma-script/DIN.lco index ef08c3815c9..ee0ce0ed8e4 100644 --- a/Master/texmf-dist/tex/latex/koma-script/DIN.lco +++ b/Master/texmf-dist/tex/latex/koma-script/DIN.lco @@ -4,66 +4,68 @@ %% %% The original source files were: %% -%% scrclass.dtx (with options: `lco,DIN') +%% scrklco.dtx (with options: `lco,DIN,head') +%% scrklco.dtx (with options: `lco,DIN,body') +%% scrlogo.dtx (with options: `logo') %% -%% Copyright (C) 1994-2004 Markus Kohm. +%% Copyright (c) 1994-2006 +%% Markus Kohm and any individual authors listed elsewhere in this file. %% -%% All rights reserved. For further copyright information see the file -%% LEGAL.TXT or LEGALDE.TXT. +%% This file was generated from file(s) of the KOMA-Script bundle. +%% --------------------------------------------------------------- %% -%% This file is part of the LaTeX2e 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'. %% -%% The KOMA-Script bundle bases on the Script-family created by -%% Frank Neukam 1993 and the standard documents classes created -%% by the LaTeX3-Team 1994-1996. -%% ------------------------------------------------------------------------ +%% 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. %% -%% This system is distributed in the hope that it will be useful, -%% but WITHOUT ANY WARRANTY; without even the implied warranty of -%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +%% 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. %% -%% IMPORTANT NOTICE: +%% English and German manuals are part of KOMA-Script bundle. +%% ---------------------------------------------------------- %% -%% For error reports in case of UNCHANGED versions see documentation. +%% See `README'. %% -%% Please do not request updates from us directly. Distribution is -%% done through Mail-Servers, Mailboxes and TeX organizations. -%% -%% You are not allowed to change this file. -%% -%% You are allowed to distribute this file under the condition that -%% it is distributed together with all files mentioned in readme.txt -%% and liesmich.txt. See LEGAL.TXT or LEGALDE.TXT for further -%% information. -%% -%% If you receive only some of these files from someone, complain! -%% -%% You are NOT ALLOWED to distribute this file alone. +%% 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: scrklco.dtx \ProvidesFile{% DIN% - .lco} - [2004/09/16 v2.9t LaTeX2e KOMA - letter-class-option] + .lco}[\KOMAScriptVersion\space letter-class-option] +\providecommand*\LCOWarningNoLine[2]{% + \LCOWarning{#1}{#2\@gobble}% +} +\providecommand*\LCOWarning[2]{% + \GenericWarning{% + (#1)\@spaces\@spaces\@spaces\@spaces\@spaces\@spaces\@spaces + }{% + Letter class option #1 Warning: #2% + }% +} +%%% From File: scrklco.dtx \@ifundefined{scr@fromname@var}{% - \GenericWarning{(% - DIN% - .lco)\@spaces\@spaces\@spaces\@spaces\@spaces\@spaces}{% - Letter-class-option - DIN - Warning:\space - This letter class option file was made only\MessageBreak - to be used with KOMA-Script letter class\MessageBreak - `scrlttr2'. Use with other classes may result\MessageBreak - in a lot of errors\@gobble - } + \LCOWarningNoLine{% + DIN% + }{% + This letter class option file was made only\MessageBreak + to be used with KOMA-Script letter class\MessageBreak + `scrlttr2'. Use with other classes may result\MessageBreak + in a lot of errors% + }% }{} \LetterOptionNeedsPapersize{% DIN% - } - {a4} +}{a4} \@setplength{foldmarkhpos}{3.5mm} \@setplength{tfoldmarkvpos}{105mm} \@setplength{bfoldmarkvpos}{210mm} @@ -86,16 +88,25 @@ \@addtoplength[2]{firstheadwidth}{\useplength{toaddrhpos}} \fi \@setplength{firstfootwidth}{\useplength{firstheadwidth}} -\@setplength{firstfootvpos}{1in} -\@addtoplength{firstfootvpos}{\topmargin} -\@addtoplength{firstfootvpos}{\headheight} -\@addtoplength{firstfootvpos}{\headsep} -\@addtoplength{firstfootvpos}{\textheight} -\@addtoplength{firstfootvpos}{\footskip} +\ifnum \scr@compatibility >\@nameuse{scr@v@2.9t}\relax + \@setplength{firstfootvpos}{\paperheight} + \@addtoplength{firstfootvpos}{-16mm} +\else + \@setplength{firstfootvpos}{1in} + \@addtoplength{firstfootvpos}{\topmargin} + \@addtoplength{firstfootvpos}{\headheight} + \@addtoplength{firstfootvpos}{\headsep} + \@addtoplength{firstfootvpos}{\textheight} + \@addtoplength{firstfootvpos}{\footskip} +\fi \@setplength{refwidth}{0pt} \@setplength{sigindent}{0mm} \@setplength{sigbeforevskip}{2\baselineskip} \let\raggedsignature=\centering +%%% 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 `DIN.lco'. diff --git a/Master/texmf-dist/tex/latex/koma-script/DINmtext.lco b/Master/texmf-dist/tex/latex/koma-script/DINmtext.lco index 25271a13d2b..e014d075779 100644 --- a/Master/texmf-dist/tex/latex/koma-script/DINmtext.lco +++ b/Master/texmf-dist/tex/latex/koma-script/DINmtext.lco @@ -4,66 +4,68 @@ %% %% The original source files were: %% -%% scrclass.dtx (with options: `lco,DINmoretext') +%% scrklco.dtx (with options: `lco,DINmoretext,head') +%% scrklco.dtx (with options: `lco,DINmoretext,body') +%% scrlogo.dtx (with options: `logo') %% -%% Copyright (C) 1994-2004 Markus Kohm. +%% Copyright (c) 1994-2006 +%% Markus Kohm and any individual authors listed elsewhere in this file. %% -%% All rights reserved. For further copyright information see the file -%% LEGAL.TXT or LEGALDE.TXT. +%% This file was generated from file(s) of the KOMA-Script bundle. +%% --------------------------------------------------------------- %% -%% This file is part of the LaTeX2e 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'. %% -%% The KOMA-Script bundle bases on the Script-family created by -%% Frank Neukam 1993 and the standard documents classes created -%% by the LaTeX3-Team 1994-1996. -%% ------------------------------------------------------------------------ +%% 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. %% -%% This system is distributed in the hope that it will be useful, -%% but WITHOUT ANY WARRANTY; without even the implied warranty of -%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +%% 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. %% -%% IMPORTANT NOTICE: +%% English and German manuals are part of KOMA-Script bundle. +%% ---------------------------------------------------------- %% -%% For error reports in case of UNCHANGED versions see documentation. +%% See `README'. %% -%% Please do not request updates from us directly. Distribution is -%% done through Mail-Servers, Mailboxes and TeX organizations. -%% -%% You are not allowed to change this file. -%% -%% You are allowed to distribute this file under the condition that -%% it is distributed together with all files mentioned in readme.txt -%% and liesmich.txt. See LEGAL.TXT or LEGALDE.TXT for further -%% information. -%% -%% If you receive only some of these files from someone, complain! -%% -%% You are NOT ALLOWED to distribute this file alone. +%% 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: scrklco.dtx \ProvidesFile{% - DINmtext% - .lco} - [2004/09/16 v2.9t LaTeX2e KOMA - letter-class-option] -\@ifundefined{scr@fromname@var}{% - \GenericWarning{(% DINmtext% - .lco)\@spaces\@spaces\@spaces\@spaces\@spaces\@spaces}{% - Letter-class-option - DINmtext - Warning:\space - This letter class option file was made only\MessageBreak - to be used with KOMA-Script letter class\MessageBreak - `scrlttr2'. Use with other classes may result\MessageBreak - in a lot of errors\@gobble - } + .lco}[\KOMAScriptVersion\space letter-class-option] +\providecommand*\LCOWarningNoLine[2]{% + \LCOWarning{#1}{#2\@gobble}% +} +\providecommand*\LCOWarning[2]{% + \GenericWarning{% + (#1)\@spaces\@spaces\@spaces\@spaces\@spaces\@spaces\@spaces + }{% + Letter class option #1 Warning: #2% + }% +} +%%% From File: scrklco.dtx +\@ifundefined{scr@fromname@var}{% + \LCOWarningNoLine{% + DINmtext% + }{% + This letter class option file was made only\MessageBreak + to be used with KOMA-Script letter class\MessageBreak + `scrlttr2'. Use with other classes may result\MessageBreak + in a lot of errors% + }% }{} \LetterOptionNeedsPapersize{% DINmtext% - } - {a4} +}{a4} \@setplength{foldmarkhpos}{3.5mm} \@setplength{tfoldmarkvpos}{87mm} \@setplength{bfoldmarkvpos}{192mm} @@ -86,12 +88,17 @@ \@addtoplength[2]{firstheadwidth}{\useplength{toaddrhpos}} \fi \@setplength{firstfootwidth}{\useplength{firstheadwidth}} -\@setplength{firstfootvpos}{1in} -\@addtoplength{firstfootvpos}{\topmargin} -\@addtoplength{firstfootvpos}{\headheight} -\@addtoplength{firstfootvpos}{\headsep} -\@addtoplength{firstfootvpos}{\textheight} -\@addtoplength{firstfootvpos}{\footskip} +\ifnum \scr@compatibility >\@nameuse{scr@v@2.9t}\relax + \@setplength{firstfootvpos}{\paperheight} + \@addtoplength{firstfootvpos}{-16mm} +\else + \@setplength{firstfootvpos}{1in} + \@addtoplength{firstfootvpos}{\topmargin} + \@addtoplength{firstfootvpos}{\headheight} + \@addtoplength{firstfootvpos}{\headsep} + \@addtoplength{firstfootvpos}{\textheight} + \@addtoplength{firstfootvpos}{\footskip} +\fi \@setplength{refwidth}{0pt} \@setplength{sigindent}{0mm} \@setplength{sigbeforevskip}{2\baselineskip} @@ -106,12 +113,16 @@ }% }% \ifkomavarempty{fromaddress}{}{% - \def\\{,\ \@ogobble} + \def\\{,\ \@ogobble}% \ignorespaces\usekomavar{fromaddress}% }% }% }% } +%%% 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 `DINmtext.lco'. diff --git a/Master/texmf-dist/tex/latex/koma-script/KOMAold.lco b/Master/texmf-dist/tex/latex/koma-script/KOMAold.lco index 3ff5bcc4ef5..da507a3db4f 100644 --- a/Master/texmf-dist/tex/latex/koma-script/KOMAold.lco +++ b/Master/texmf-dist/tex/latex/koma-script/KOMAold.lco @@ -4,66 +4,69 @@ %% %% The original source files were: %% -%% scrclass.dtx (with options: `lco,KOMAold') +%% scrklco.dtx (with options: `lco,KOMAold,head') +%% scrklco.dtx (with options: `lco,KOMAold,body') +%% scrknpap.dtx (with options: `lco,KOMAold,body') +%% scrlogo.dtx (with options: `logo') %% -%% Copyright (C) 1994-2004 Markus Kohm. +%% Copyright (c) 1994-2006 +%% Markus Kohm and any individual authors listed elsewhere in this file. %% -%% All rights reserved. For further copyright information see the file -%% LEGAL.TXT or LEGALDE.TXT. +%% This file was generated from file(s) of the KOMA-Script bundle. +%% --------------------------------------------------------------- %% -%% This file is part of the LaTeX2e 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'. %% -%% The KOMA-Script bundle bases on the Script-family created by -%% Frank Neukam 1993 and the standard documents classes created -%% by the LaTeX3-Team 1994-1996. -%% ------------------------------------------------------------------------ +%% 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. %% -%% This system is distributed in the hope that it will be useful, -%% but WITHOUT ANY WARRANTY; without even the implied warranty of -%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +%% 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. %% -%% IMPORTANT NOTICE: +%% English and German manuals are part of KOMA-Script bundle. +%% ---------------------------------------------------------- %% -%% For error reports in case of UNCHANGED versions see documentation. +%% See `README'. %% -%% Please do not request updates from us directly. Distribution is -%% done through Mail-Servers, Mailboxes and TeX organizations. -%% -%% You are not allowed to change this file. -%% -%% You are allowed to distribute this file under the condition that -%% it is distributed together with all files mentioned in readme.txt -%% and liesmich.txt. See LEGAL.TXT or LEGALDE.TXT for further -%% information. -%% -%% If you receive only some of these files from someone, complain! -%% -%% You are NOT ALLOWED to distribute this file alone. +%% 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: scrklco.dtx \ProvidesFile{% KOMAold% - .lco} - [2004/09/16 v2.9t LaTeX2e KOMA - letter-class-option] + .lco}[\KOMAScriptVersion\space letter-class-option] +\providecommand*\LCOWarningNoLine[2]{% + \LCOWarning{#1}{#2\@gobble}% +} +\providecommand*\LCOWarning[2]{% + \GenericWarning{% + (#1)\@spaces\@spaces\@spaces\@spaces\@spaces\@spaces\@spaces + }{% + Letter class option #1 Warning: #2% + }% +} +%%% From File: scrklco.dtx \@ifundefined{scr@fromname@var}{% - \GenericWarning{(% - KOMAold% - .lco)\@spaces\@spaces\@spaces\@spaces\@spaces\@spaces}{% - Letter-class-option - KOMAold - Warning:\space - This letter class option file was made only\MessageBreak - to be used with KOMA-Script letter class\MessageBreak - `scrlttr2'. Use with other classes may result\MessageBreak - in a lot of errors\@gobble - } + \LCOWarningNoLine{% + KOMAold% + }{% + This letter class option file was made only\MessageBreak + to be used with KOMA-Script letter class\MessageBreak + `scrlttr2'. Use with other classes may result\MessageBreak + in a lot of errors% + }% }{} \LetterOptionNeedsPapersize{% KOMAold% - } - {a4} +}{a4} \@setplength{foldmarkhpos}{3.5mm} \@setplength{tfoldmarkvpos}{103.5mm} \@setplength{bfoldmarkvpos}{202.5mm} @@ -150,6 +153,22 @@ \let\enclnameseparator=\scr@enclseparator@var \setkomavar{enclseparator}{\enclnameseparator} \setkomafont{fromname}{\scshape} +\def\foldmarkson{\@ObsoleteCommand{\foldmarkson}{foldmarks=on}} +\def\foldmarksoff{\@ObsoleteCommand{\foldmarksoff}{foldmarks=off}} +\def\addrfieldon{\@ObsoleteCommand{\addrfieldon}{addrfield=on}} +\def\addrfieldoff{\@ObsoleteCommand{\addrfieldoff}{addrfield=off}} +\def\subjecton{\@ObsoleteCommand{\subjecton}{subject=titled}} +\def\subjectoff{\@ObsoleteCommand{\subjectoff}{subject=untitled}} +\def\subjectafteron{% + \@ObsoleteCommand{\subjectafteron}{subject=afteropening}} +\def\subjectafteroff{% + \@ObsoleteCommand{\subjectafteroff}{subject=beforeopening}} +%%% From File: scrknpap.dtx +\def\setpresigskip{\@setplength{sigbeforevskip}} +%%% 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 `KOMAold.lco'. diff --git a/Master/texmf-dist/tex/latex/koma-script/SN.lco b/Master/texmf-dist/tex/latex/koma-script/SN.lco index 58c2efbccc7..170018d7502 100644 --- a/Master/texmf-dist/tex/latex/koma-script/SN.lco +++ b/Master/texmf-dist/tex/latex/koma-script/SN.lco @@ -4,66 +4,68 @@ %% %% The original source files were: %% -%% scrclass.dtx (with options: `lco,SN') +%% scrklco.dtx (with options: `lco,SN,head') +%% scrklco.dtx (with options: `lco,SN,body') +%% scrlogo.dtx (with options: `logo') %% -%% Copyright (C) 1994-2004 Markus Kohm. +%% Copyright (c) 1994-2006 +%% Markus Kohm and any individual authors listed elsewhere in this file. %% -%% All rights reserved. For further copyright information see the file -%% LEGAL.TXT or LEGALDE.TXT. +%% This file was generated from file(s) of the KOMA-Script bundle. +%% --------------------------------------------------------------- %% -%% This file is part of the LaTeX2e 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'. %% -%% The KOMA-Script bundle bases on the Script-family created by -%% Frank Neukam 1993 and the standard documents classes created -%% by the LaTeX3-Team 1994-1996. -%% ------------------------------------------------------------------------ +%% 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. %% -%% This system is distributed in the hope that it will be useful, -%% but WITHOUT ANY WARRANTY; without even the implied warranty of -%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +%% 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. %% -%% IMPORTANT NOTICE: +%% English and German manuals are part of KOMA-Script bundle. +%% ---------------------------------------------------------- %% -%% For error reports in case of UNCHANGED versions see documentation. +%% See `README'. %% -%% Please do not request updates from us directly. Distribution is -%% done through Mail-Servers, Mailboxes and TeX organizations. -%% -%% You are not allowed to change this file. -%% -%% You are allowed to distribute this file under the condition that -%% it is distributed together with all files mentioned in readme.txt -%% and liesmich.txt. See LEGAL.TXT or LEGALDE.TXT for further -%% information. -%% -%% If you receive only some of these files from someone, complain! -%% -%% You are NOT ALLOWED to distribute this file alone. +%% 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: scrklco.dtx \ProvidesFile{% SN% - .lco} - [2004/09/16 v2.9t LaTeX2e KOMA - letter-class-option] + .lco}[\KOMAScriptVersion\space letter-class-option] +\providecommand*\LCOWarningNoLine[2]{% + \LCOWarning{#1}{#2\@gobble}% +} +\providecommand*\LCOWarning[2]{% + \GenericWarning{% + (#1)\@spaces\@spaces\@spaces\@spaces\@spaces\@spaces\@spaces + }{% + Letter class option #1 Warning: #2% + }% +} +%%% From File: scrklco.dtx \@ifundefined{scr@fromname@var}{% - \GenericWarning{(% - SN% - .lco)\@spaces\@spaces\@spaces\@spaces\@spaces\@spaces}{% - Letter-class-option - SN - Warning:\space - This letter class option file was made only\MessageBreak - to be used with KOMA-Script letter class\MessageBreak - `scrlttr2'. Use with other classes may result\MessageBreak - in a lot of errors\@gobble - } + \LCOWarningNoLine{% + SN% + }{% + This letter class option file was made only\MessageBreak + to be used with KOMA-Script letter class\MessageBreak + `scrlttr2'. Use with other classes may result\MessageBreak + in a lot of errors% + }% }{} \LetterOptionNeedsPapersize{% SN% - } - {a4} +}{a4} \@setplength{foldmarkhpos}{3.5mm} \@setplength{tfoldmarkvpos}{105mm} \@setplength{bfoldmarkvpos}{210mm} @@ -86,16 +88,25 @@ \@addtoplength[2]{firstheadwidth}{\useplength{toaddrhpos}} \fi \@setplength{firstfootwidth}{\useplength{firstheadwidth}} -\@setplength{firstfootvpos}{1in} -\@addtoplength{firstfootvpos}{\topmargin} -\@addtoplength{firstfootvpos}{\headheight} -\@addtoplength{firstfootvpos}{\headsep} -\@addtoplength{firstfootvpos}{\textheight} -\@addtoplength{firstfootvpos}{\footskip} +\ifnum \scr@compatibility >\@nameuse{scr@v@2.9t}\relax + \@setplength{firstfootvpos}{\paperheight} + \@addtoplength{firstfootvpos}{-16mm} +\else + \@setplength{firstfootvpos}{1in} + \@addtoplength{firstfootvpos}{\topmargin} + \@addtoplength{firstfootvpos}{\headheight} + \@addtoplength{firstfootvpos}{\headsep} + \@addtoplength{firstfootvpos}{\textheight} + \@addtoplength{firstfootvpos}{\footskip} +\fi \@setplength{refwidth}{0pt} \@setplength{sigindent}{0mm} \@setplength{sigbeforevskip}{2\baselineskip} \let\raggedsignature=\centering +%%% 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 `SN.lco'. diff --git a/Master/texmf-dist/tex/latex/koma-script/SNleft.lco b/Master/texmf-dist/tex/latex/koma-script/SNleft.lco index e62c042b84f..6431b8f07a1 100644 --- a/Master/texmf-dist/tex/latex/koma-script/SNleft.lco +++ b/Master/texmf-dist/tex/latex/koma-script/SNleft.lco @@ -4,66 +4,68 @@ %% %% The original source files were: %% -%% scrclass.dtx (with options: `lco,SwissLeft') +%% scrklco.dtx (with options: `lco,SwissLeft,head') +%% scrklco.dtx (with options: `lco,SwissLeft,body') +%% scrlogo.dtx (with options: `logo') %% -%% Copyright (C) 1994-2004 Markus Kohm. +%% Copyright (c) 1994-2006 +%% Markus Kohm and any individual authors listed elsewhere in this file. %% -%% All rights reserved. For further copyright information see the file -%% LEGAL.TXT or LEGALDE.TXT. +%% This file was generated from file(s) of the KOMA-Script bundle. +%% --------------------------------------------------------------- %% -%% This file is part of the LaTeX2e 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'. %% -%% The KOMA-Script bundle bases on the Script-family created by -%% Frank Neukam 1993 and the standard documents classes created -%% by the LaTeX3-Team 1994-1996. -%% ------------------------------------------------------------------------ +%% 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. %% -%% This system is distributed in the hope that it will be useful, -%% but WITHOUT ANY WARRANTY; without even the implied warranty of -%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +%% 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. %% -%% IMPORTANT NOTICE: +%% English and German manuals are part of KOMA-Script bundle. +%% ---------------------------------------------------------- %% -%% For error reports in case of UNCHANGED versions see documentation. +%% See `README'. %% -%% Please do not request updates from us directly. Distribution is -%% done through Mail-Servers, Mailboxes and TeX organizations. -%% -%% You are not allowed to change this file. -%% -%% You are allowed to distribute this file under the condition that -%% it is distributed together with all files mentioned in readme.txt -%% and liesmich.txt. See LEGAL.TXT or LEGALDE.TXT for further -%% information. -%% -%% If you receive only some of these files from someone, complain! -%% -%% You are NOT ALLOWED to distribute this file alone. +%% 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: scrklco.dtx \ProvidesFile{% SNleft% - .lco} - [2004/09/16 v2.9t LaTeX2e KOMA - letter-class-option] + .lco}[\KOMAScriptVersion\space letter-class-option] +\providecommand*\LCOWarningNoLine[2]{% + \LCOWarning{#1}{#2\@gobble}% +} +\providecommand*\LCOWarning[2]{% + \GenericWarning{% + (#1)\@spaces\@spaces\@spaces\@spaces\@spaces\@spaces\@spaces + }{% + Letter class option #1 Warning: #2% + }% +} +%%% From File: scrklco.dtx \@ifundefined{scr@fromname@var}{% - \GenericWarning{(% - SNleft% - .lco)\@spaces\@spaces\@spaces\@spaces\@spaces\@spaces}{% - Letter-class-option - SNleft - Warning:\space - This letter class option file was made only\MessageBreak - to be used with KOMA-Script letter class\MessageBreak - `scrlttr2'. Use with other classes may result\MessageBreak - in a lot of errors\@gobble - } + \LCOWarningNoLine{% + SNleft% + }{% + This letter class option file was made only\MessageBreak + to be used with KOMA-Script letter class\MessageBreak + `scrlttr2'. Use with other classes may result\MessageBreak + in a lot of errors% + }% }{} \LetterOptionNeedsPapersize{% SNleft% - } - {a4} +}{a4} \@setplength{foldmarkhpos}{3.5mm} \@setplength{tfoldmarkvpos}{105mm} \@setplength{bfoldmarkvpos}{210mm} @@ -86,16 +88,25 @@ \@addtoplength[2]{firstheadwidth}{\useplength{toaddrhpos}} \fi \@setplength{firstfootwidth}{\useplength{firstheadwidth}} -\@setplength{firstfootvpos}{1in} -\@addtoplength{firstfootvpos}{\topmargin} -\@addtoplength{firstfootvpos}{\headheight} -\@addtoplength{firstfootvpos}{\headsep} -\@addtoplength{firstfootvpos}{\textheight} -\@addtoplength{firstfootvpos}{\footskip} +\ifnum \scr@compatibility >\@nameuse{scr@v@2.9t}\relax + \@setplength{firstfootvpos}{\paperheight} + \@addtoplength{firstfootvpos}{-16mm} +\else + \@setplength{firstfootvpos}{1in} + \@addtoplength{firstfootvpos}{\topmargin} + \@addtoplength{firstfootvpos}{\headheight} + \@addtoplength{firstfootvpos}{\headsep} + \@addtoplength{firstfootvpos}{\textheight} + \@addtoplength{firstfootvpos}{\footskip} +\fi \@setplength{refwidth}{0pt} \@setplength{sigindent}{0mm} \@setplength{sigbeforevskip}{2\baselineskip} \let\raggedsignature=\centering +%%% 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 `SNleft.lco'. diff --git a/Master/texmf-dist/tex/latex/koma-script/scraddr.sty b/Master/texmf-dist/tex/latex/koma-script/scraddr.sty index 824ee4c9849..c2c9511b15c 100644 --- a/Master/texmf-dist/tex/latex/koma-script/scraddr.sty +++ b/Master/texmf-dist/tex/latex/koma-script/scraddr.sty @@ -5,47 +5,42 @@ %% The original source files were: %% %% scraddr.dtx (with options: `scraddr') -%% scrlogo.dtx +%% scrlogo.dtx (with options: `logo') %% -%% Copyright (C) 1996-2004 Markus Kohm and Jens-Uwe Morawski. +%% Copyright (c) 1994-2006 +%% Markus Kohm and any individual authors listed elsewhere in this file. %% -%% All rights reserved. For further copyright information see the file -%% LEGAL.TXT or LEGALDE.TXT. +%% This file was generated from file(s) of the KOMA-Script bundle. +%% --------------------------------------------------------------- %% -%% This file is part of the LaTeX2e 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'. %% -%% The KOMA-Script bundle bases on the Script-family created by -%% Frank Neukam 1993 and the standard documents classes created -%% by the LaTeX3-Team 1994-1996. -%% ------------------------------------------------------------------------ +%% 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. %% -%% This system is distributed in the hope that it will be useful, -%% but WITHOUT ANY WARRANTY; without even the implied warranty of -%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +%% 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. %% -%% IMPORTANT NOTICE: +%% English and German manuals are part of KOMA-Script bundle. +%% ---------------------------------------------------------- %% -%% For error reports in case of UNCHANGED versions see documentation. +%% See `README'. %% -%% Please do not request updates from us directly. Distribution is -%% done through Mail-Servers, Mailboxes and TeX organizations. -%% -%% You are not allowed to change this file. -%% -%% You are allowed to distribute this file under the condition that -%% it is distributed together with all files mentioned in readme.txt -%% and liesmich.txt. See LEGAL.TXT or LEGALDE.TXT for further -%% information. -%% -%% If you receive only some of these files from someone, complain! -%% -%% You are NOT ALLOWED to distribute this file alone. +%% 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: scraddr.dtx \NeedsTeXFormat{LaTeX2e}[1995/12/01] \ProvidesPackage{scraddr} - [2002/06/02 v1.1b LaTeX2e KOMA + [2006/03/28 v1.1c KOMA-Script package] \newcommand*{\@adrFIVerror}{} \DeclareOption{adrFreeIVempty}{\renewcommand*{\@adrFIVerror}{0}} @@ -108,6 +103,7 @@ \newcommand*{\FreeIII}[1]{\csname #1.FIII\endcsname} \let\Comment\FreeIII \newcommand*{\FreeIV}[1]{\csname #1.FIV\endcsname} +%%% From File: scrlogo.dtx \@ifundefined{KOMAScript}{% \DeclareRobustCommand{\KOMAScript}{\textsf{K\kern.05em O\kern.05em% M\kern.05em A\kern.1em-\kern.1em Script}}}{} diff --git a/Master/texmf-dist/tex/latex/koma-script/scrartcl.cls b/Master/texmf-dist/tex/latex/koma-script/scrartcl.cls index 3a3f5a7158f..45f625b161c 100644 --- a/Master/texmf-dist/tex/latex/koma-script/scrartcl.cls +++ b/Master/texmf-dist/tex/latex/koma-script/scrartcl.cls @@ -4,443 +4,960 @@ %% %% The original source files were: %% -%% scrclass.dtx (with options: `class,scrartcl') -%% scrlogo.dtx +%% scrkvers.dtx (with options: `class,article') +%% scrkbase.dtx (with options: `load') +%% scrkmisc.dtx (with options: `class,article,option') +%% scrklang.dtx (with options: `class,article,option') +%% scrkfont.dtx (with options: `class,article,option') +%% scrktare.dtx (with options: `class,article,option') +%% scrkpar.dtx (with options: `class,article,option') +%% scrktitl.dtx (with options: `class,article,option') +%% scrksect.dtx (with options: `class,article,option') +%% scrkpage.dtx (with options: `class,article,option') +%% scrkfloa.dtx (with options: `class,article,option') +%% scrkftn.dtx (with options: `class,article,option') +%% scrkliof.dtx (with options: `class,article,option') +%% scrkbib.dtx (with options: `class,article,option') +%% scrkidx.dtx (with options: `class,article,option') +%% scrklist.dtx (with options: `class,article,option') +%% scrkmisc.dtx (with options: `class,article,execoption') +%% scrkfont.dtx (with options: `class,article,body') +%% scrklang.dtx (with options: `class,article,body') +%% scrktare.dtx (with options: `class,article,body') +%% scrkpar.dtx (with options: `class,article,body') +%% scrktitl.dtx (with options: `class,article,body') +%% scrksect.dtx (with options: `class,article,body') +%% scrkmisc.dtx (with options: `class,article,body') +%% scrkpage.dtx (with options: `class,article,body') +%% scrkfloa.dtx (with options: `class,article,body') +%% scrkftn.dtx (with options: `class,article,body') +%% scrkliof.dtx (with options: `class,article,body') +%% scrkbib.dtx (with options: `class,article,body') +%% scrkidx.dtx (with options: `class,article,body') +%% scrklist.dtx (with options: `class,article,body') +%% scrlogo.dtx (with options: `logo') %% -%% Copyright (C) 1994-2004 Markus Kohm and Frank Neukam. +%% Copyright (c) 1994-2006 +%% Markus Kohm and any individual authors listed elsewhere in this file. %% -%% All rights reserved. For further copyright information see the file -%% LEGAL.TXT or LEGALDE.TXT. +%% This file was generated from file(s) of the KOMA-Script bundle. +%% --------------------------------------------------------------- %% -%% This file is part of the LaTeX2e 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'. %% -%% The KOMA-Script bundle bases on the Script-family created by -%% Frank Neukam 1993 and the standard documents classes created -%% by the LaTeX3-Team 1994-1996. -%% ------------------------------------------------------------------------ +%% 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. %% -%% This system is distributed in the hope that it will be useful, -%% but WITHOUT ANY WARRANTY; without even the implied warranty of -%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +%% 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. %% -%% IMPORTANT NOTICE: +%% English and German manuals are part of KOMA-Script bundle. +%% ---------------------------------------------------------- %% -%% For error reports in case of UNCHANGED versions see documentation. +%% See `README'. %% -%% Please do not request updates from us directly. Distribution is -%% done through Mail-Servers, Mailboxes and TeX organizations. +%% 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. %% -%% You are not allowed to change this file. -%% -%% You are allowed to distribute this file under the condition that -%% it is distributed together with all files mentioned in readme.txt -%% and liesmich.txt. See LEGAL.TXT or LEGALDE.TXT for further -%% information. -%% -%% If you receive only some of these files from someone, complain! -%% -%% You are NOT ALLOWED to distribute this file alone. -%% -\NeedsTeXFormat{LaTeX2e}[1995/12/01] -\ProvidesClass{% +%%% 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{2006/07/30 v2.95b KOMA-Script}% +\endgroup +\newcommand*{\KOMAClassName}{% scrartcl% - } - [2004/09/16 v2.9t LaTeX2e KOMA - document class] -\newcommand\ifnumber[3]{ - \begingroup\@tempswafalse\let\scr@next\test@number - \expandafter\scr@next#1\scr@next - \if@tempswa\endgroup#2\else\endgroup#3\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\relax - \ifnum \@tempcnta<58\relax - \@tempswatrue - \else\@tempswafalse\fi - \else\@tempswafalse\fi - \if@tempswa\else\let\scr@next\gobble@till@next\fi\fi - \scr@next} -\newcommand*{\gobble@till@next}{} -\def\gobble@till@next#1\scr@next{} +} +\newcommand*{\ClassName}{% + article% +} +\ProvidesClass{\KOMAClassName}[% + \KOMAScriptVersion\space document class (\ClassName)% +] +%%% From File: scrkbase.dtx +\RequirePackage{scrkbase}[\KOMAScriptVersion] +%%% 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[\PackageInfo]{final}{draft=false} +\DeclareOption{leqno}{\input{leqno.clo}} +\DeclareOption{fleqn}{\input{fleqn.clo}} +%%% From File: scrklang.dtx +%%% From File: scrkfont.dtx +\newcommand*\@ptsize{% + 1% +} +\newcommand*{\@pt@scan}{% + \expandafter\@pt@@scan\CurrentOption pt\@pt@@scan% +} +\newcommand*{\@pt@@scan}{} +\def\@pt@@scan #1pt#2\@pt@@scan{% + \ifstr{#2}{pt}{% + \ifnumber{#1}{% + \KOMA@UseObsolete{option}{\PackageInfo}{#1#2}{fontsize=#1#2}% + }{\@headlines}% + }{\@headlines}% +} +\KOMA@key{fontsize}{% + \begingroup + \setlength{\@tempdima}{#1}% + \addtolength{\@tempdima}{-10\p@}% + \edef\@tempa{\endgroup\noexpand\renewcommand*\noexpand\@ptsize{% + \strip@pt\@tempdima}}% + \@tempa +} +\@onlypreamble\KV@KOMA@fontsize +%%% From File: scrktare.dtx \newcommand*{\@BCOR}{\expandafter\@@BCOR\CurrentOption BCORBCOR\@@BCOR} \newcommand*{\@@BCOR}{} -\def\@@BCOR #1BCOR#2BCOR#3\@@BCOR{ - \edef\@tempa{#1}\ifx\@tempa\@empty - \edef\@tempa{#3}\def\@tempb{BCOR}\ifx\@tempa\@tempb - \PassOptionsToPackage{BCOR#2}{typearea} - \else\OptionNotUsed\fi - \else\OptionNotUsed\fi} +\def\@@BCOR #1BCOR#2BCOR#3\@@BCOR{% + \ifstr{#1}{}{% + \ifstr{#3}{BCOR}{% + \PassOptionsToPackage{BCOR#2}{typearea}% + }{\scr@pti@nerr@r}% + }{\scr@pti@nerr@r}% +} \newcommand*{\@DIV}{\expandafter\@@DIV\CurrentOption DIVDIV\@@DIV} \newcommand*{\@@DIV}{} -\def\@@DIV #1DIV#2DIV#3\@@DIV{ - \edef\@tempa{#1}\ifx\@tempa\@empty - \edef\@tempa{#3}\def\@tempb{DIV}\ifx\@tempa\@tempb - \PassOptionsToPackage{DIV#2}{typearea} - \else\OptionNotUsed\fi - \else\@BCOR\fi} +\def\@@DIV #1DIV#2DIV#3\@@DIV{% + \edef\@tempa{#1}\ifx\@tempa\@empty + \edef\@tempa{#3}\def\@tempb{DIV}\ifx\@tempa\@tempb + \PassOptionsToPackage{DIV#2}{typearea}% + \else\scr@pti@nerr@r\fi + \else\@BCOR\fi +} \newcommand{\@headlines}{% - \expandafter\@@headlines\CurrentOption headlines\@@headlines} + \expandafter\@@headlines\CurrentOption headlines\@@headlines% +} \newcommand*{\@@headlines}{} \def\@@headlines #1headlines#2\@@headlines{ \edef\@tempa{#2}\edef\@tempb{headlines}\ifx\@tempa\@tempb \PassOptionsToPackage{#1headlines}{typearea} - \else\@DIV\fi} -\newcommand*{\@pt@scan}{\expandafter\@pt@@scan\CurrentOption pt\@pt@@scan} -\newcommand*{\@pt@@scan}{} -\def\@pt@@scan #1pt#2\@pt@@scan{ - \edef\@tempa{pt}\edef\@tempb{#2}\ifx\@tempa\@tempb - \ifnumber{#1} - {\@tempcnta=#1\relax - \advance \@tempcnta by-10\relax - \edef\@ptsize{\the\@tempcnta}} - {\@headlines} - \else\@headlines\fi} -\newcommand*{\x@paper}{\expandafter\x@@paper\CurrentOption paper\x@@paper} + \else\@DIV\fi +} +\newcommand*{\x@paper}{% + \expandafter\x@@paper\CurrentOption paper\x@@paper% +} \newcommand*{\x@@paper}{} -\def\x@@paper #1#2paper#3\x@@paper{ - \edef\@tempa{paper}\edef\@tempb{#3}\ifx\@tempa\@tempb - \ifx a#1\PassOptionsToPackage{a#2paper}{typearea} - \else\ifx b#1\PassOptionsToPackage{b#2paper}{typearea} - \else\ifx c#1\PassOptionsToPackage{c#2paper}{typearea} - \else\ifx d#1\PassOptionsToPackage{d#2paper}{typearea} - \else\OptionNotUsed\fi\fi\fi\fi - \else\@pt@scan\fi} -\newif\ifonelinecaptions\onelinecaptionstrue -\DeclareOption{onelinecaption}{\onelinecaptionstrue% - \PassOptionsToPackage{oneline}{caption2}} -\DeclareOption{noonelinecaption}{\onelinecaptionsfalse% - \PassOptionsToPackage{nooneline}{caption2}} -\newif\if@tablecaptionabove\@tablecaptionabovefalse -\DeclareOption{tablecaptionabove}{\@tablecaptionabovetrue} -\DeclareOption{tablecaptionbelow}{\@tablecaptionabovefalse} -\newif\if@komalongtable\@komalongtabletrue -\DeclareOption{origlongtable}{\@komalongtablefalse} -\newif\if@hsl -\DeclareOption{headsepline}{% - \PassOptionsToPackage{headinclude}{typearea}\@hsltrue} -\DeclareOption{headnosepline}{% - \@hslfalse% - } -\newif\if@fsl -\DeclareOption{footsepline}{\PassOptionsToPackage{footinclude}{typearea} - \@fsltrue} -\DeclareOption{footnosepline}{% - \@fslfalse% - } -\newif\if@mincl -\DeclareOption{mpinclude}{% - \@mincltrue - } -\DeclareOption{mpexclude}{ - \@minclfalse - } -\newcommand*\@ptsize{% - } -\DeclareOption{10pt}{% - \renewcommand*\@ptsize{0} - } -\DeclareOption{11pt}{% - \renewcommand*\@ptsize{1} - } -\DeclareOption{12pt}{% - \renewcommand*\@ptsize{2} - } -\DeclareOption{oneside}{% - \@twosidefalse \@mparswitchfalse - } -\DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue} -\DeclareOption{draft}{\setlength{\overfullrule}{5pt}} -\DeclareOption{final}{% - \setlength{\overfullrule}{\z@} - } +\def\x@@paper #1#2paper#3\x@@paper{% + \ifstr{#3}{paper}{% + \ifnumber{#2}{% + \ifstr{#1}{a}{% + \PassOptionsToPackage{#1#2#3}{typearea}% + }{% + \ifstr{#1}{b}{% + \PassOptionsToPackage{#1#2#3}{typearea}% + }{% + \ifstr{#1}{c}{% + \PassOptionsToPackage{#1#2#3}{typearea}% + }{% + \ifstr{#1}{d}{% + \PassOptionsToPackage{#1#2#3}{typearea}% + }{\scr@pti@nerr@r}% + }% + }% + }% + }{\scr@pti@nerr@r}% + }{% + \@pt@scan + }% +} +\newcommand*{\scr@pti@nerr@r}{ + \OptionNotUsed +} +\KOMA@key{twoside}[true]{% + \KOMA@set@ifkey{twoside}{@twoside}{#1}% + \if@twoside\@mparswitchtrue\else\@mparswitchfalse\fi% + \csname recalctypearea\endcsname +} +\KOMA@DeclareObsoleteOption[\PackageInfo]{oneside}{twoside=false} +%%% From File: scrkpar.dtx +\newcommand*{\setparsizes}[3]{% + \edef\f@parindent{\the\parindent}% + \edef\f@parskip{\the\parskip}% + \edef\f@parfillskip{\the\parfillskip}% + \def\scr@parindent{#1}% + \def\scr@parskip{#2}% + \def\scr@parfillskip{#3}% + \def\par@update{\let\par@update\default@par@update\par@updaterelative}% +} +\newcommand*{\f@parindent}{\the\parindent} +\newcommand*{\f@parskip}{\the\parskip} +\newcommand*{\f@parfillskip}{\the\parfillskip} +\AtEndOfClass{% + \edef\f@parindent{\the\parindent}% + \edef\f@parskip{\the\parskip}% + \edef\f@parfillskip{\the\parfillskip}% +} +\newcommand*{\par@update}{} +\let\par@update\relax +\newcommand*{\default@par@update}{} +\let\default@par@update\relax +\newcommand*{\scr@parindent}{1em} +\newcommand*{\scr@parskip}{\z@} +\newcommand*{\scr@parfillskip}{\z@ \@plus 1fil} +\KOMA@key{parskip}[true]{% + \begingroup + \KOMA@set@ncmdkey{parskip}{@tempa}{% + {false}{0},{off}{0},{no}{0},% + {full-}{1},% + {half-}{2},% + {full}{3},{true}{3},{on}{3},{yes}{3},% + {half}{4},% + {full+}{5},% + {half+}{6},% + {full*}{7},% + {half*}{8},% + {relative}{9},% + {absolute}{10},% + }{#1}% + \ifcase\number\@tempa% 0 + \endgroup + \setparsizes{1em}{\z@ \@plus \p@}{\z@ \@plus 1fil}% + \or% 1 + \endgroup + \setparsizes{\z@}{\baselineskip \@plus .1\baselineskip}{% + \z@ \@plus 1fil}% + \or% 2 + \endgroup + \setparsizes{\z@}{.5\baselineskip \@plus .5\baselineskip}{% + \z@ \@plus 1fil}% + \or%3 + \endgroup + \setparsizes{\z@}{\baselineskip \@plus .1\baselineskip}{% + 1em \@plus 1fil}% + \or%4 + \endgroup + \setparsizes{\z@}{.5\baselineskip \@plus .5\baselineskip}{% + 1em \@plus 1fil}% + \or%5 + \endgroup + \setparsizes{\z@}{\baselineskip \@plus .1\baselineskip}{% + .3333\linewidth\@plus 1fil}% + \or%6 + \endgroup + \setparsizes{\z@}{.5\baselineskip \@plus .5\baselineskip}{% + .3333\linewidth \@plus 1fil}% + \or%7 + \endgroup + \setparsizes{\z@}{\baselineskip \@plus .1\baselineskip}{% + .25\linewidth \@plus 1fil}% + \or%8 + \endgroup + \setparsizes{\z@}{.5\baselineskip \@plus .5\baselineskip}{% + .25\linewidth \@plus 1fil}% + \or%9 + \endgroup + \ifx\par@updaterelative\undefined + \expandafter\AtEndOfClass + \else + \expandafter\@firstofone + \fi + {% + \ifx\par@update\default@par@update + \let\par@update\par@updaterelative + \fi + \let\default@par@update=\par@updaterelative + }% + \or%10 + \endgroup + \ifx\par@updaterelative\undefined + \expandafter\AtEndOfClass + \else + \expandafter\@firstofone + \fi + {% + \ifx\par@update\default@par@update + \let\par@update\relax + \fi + \let\default@par@update=\relax + }% + \else% sonst + \endgroup + \fi +} +\KOMA@DeclareObsoleteOption[\PackageInfo]{parskip-}{parskip=full-} +\KOMA@DeclareObsoleteOption[\PackageInfo]{parskip+}{parskip=full+} +\KOMA@DeclareObsoleteOption[\PackageInfo]{parskip*}{parskip=full*} +\KOMA@DeclareObsoleteOption[\PackageInfo]{halfparskip}{parskip=half} +\KOMA@DeclareObsoleteOption[\PackageInfo]{halfparskip-}{parskip=half-} +\KOMA@DeclareObsoleteOption[\PackageInfo]{halfparskip+}{parskip=half+} +\KOMA@DeclareObsoleteOption[\PackageInfo]{halfparskip*}{parskip=half*} +\KOMA@DeclareObsoleteOption[\PackageInfo]{parindent}{parskip=false} +%%% From File: scrktitl.dtx \newif\if@titlepage \@titlepagefalse \DeclareOption{titlepage}{\@titlepagetrue} \DeclareOption{notitlepage}{\@titlepagefalse} -\DeclareOption{onecolumn}{\@twocolumnfalse} -\DeclareOption{twocolumn}{\@twocolumntrue} -\DeclareOption{leqno}{\input{leqno.clo}} -\DeclareOption{fleqn}{\input{fleqn.clo}} -\DeclareOption{openbib}{% - \AtEndOfPackage{% - \renewcommand*\@openbib@code{% - \advance\leftmargin\bibindent - \itemindent -\bibindent - \listparindent \itemindent - \parsep \z@ - }% - \renewcommand*\newblock{\par}}% -} \newif\if@abstrt \DeclareOption{abstracton}{\@abstrttrue} \DeclareOption{abstractoff}{\@abstrtfalse} -\newif\if@parskip -\newcommand*{\scr@parskip}{\setlength{\parskip}{\z@}} -\newcommand*{\scr@parfillskip}{\setlength{\parfillskip}{\z@}} -\DeclareOption{parskip}{\@parskiptrue% - \renewcommand*{\scr@parskip}{% - \setlength{\parskip}{\baselineskip}% - \addtolength{\parskip}{\z@ \@plus .1\baselineskip}} - \renewcommand*{\scr@parfillskip}{% - \setlength{\parfillskip}{1em \@plus 1fil}}} -\DeclareOption{parskip-}{\@parskiptrue% - \renewcommand*{\scr@parskip}{% - \setlength{\parskip}{\baselineskip}% - \addtolength{\parskip}{\z@ \@plus .1\baselineskip}} - \renewcommand*{\scr@parfillskip}{% - \setlength{\parfillskip}{\z@ \@plus 1fil}}} -\DeclareOption{parskip+}{\@parskiptrue% - \renewcommand*{\scr@parskip}{% - \setlength{\parskip}{\baselineskip}% - \addtolength{\parskip}{\z@ \@plus .1\baselineskip}} - \renewcommand*{\scr@parfillskip}{% - \setlength{\parfillskip}{.3333\linewidth} - \addtolength{\parfillskip}{\z@ \@plus 1fil}}} -\DeclareOption{parskip*}{\@parskiptrue% - \renewcommand*{\scr@parskip}{% - \setlength{\parskip}{\baselineskip}% - \addtolength{\parskip}{\z@ \@plus .1\baselineskip}} - \renewcommand*{\scr@parfillskip}{% - \setlength{\parfillskip}{.25\linewidth} - \addtolength{\parfillskip}{\z@ \@plus 1fil}}} -\DeclareOption{halfparskip}{\@parskiptrue% - \renewcommand*{\scr@parskip}{% - \setlength{\parskip}{.5\baselineskip}% - \addtolength{\parskip}{\z@ \@plus .5\baselineskip}} - \renewcommand*{\scr@parfillskip}{% - \setlength{\parfillskip}{1em \@plus 1fil}}} -\DeclareOption{halfparskip-}{\@parskiptrue% - \renewcommand*{\scr@parskip}{% - \setlength{\parskip}{.5\baselineskip}% - \addtolength{\parskip}{\z@ \@plus .5\baselineskip}} - \renewcommand*{\scr@parfillskip}{% - \setlength{\parfillskip}{\z@ \@plus 1fil}}} -\DeclareOption{halfparskip+}{\@parskiptrue% - \renewcommand*{\scr@parskip}{% - \setlength{\parskip}{.5\baselineskip}% - \addtolength{\parskip}{\z@ \@plus .5\baselineskip}} - \renewcommand*{\scr@parfillskip}{% - \setlength{\parfillskip}{.3333\linewidth} - \addtolength{\parfillskip}{\z@ \@plus 1fil}}} -\DeclareOption{halfparskip*}{\@parskiptrue% - \renewcommand*{\scr@parskip}{% - \setlength{\parskip}{.5\baselineskip}% - \addtolength{\parskip}{\z@ \@plus .5\baselineskip}} - \renewcommand*{\scr@parfillskip}{% - \setlength{\parfillskip}{.25\linewidth} - \addtolength{\parfillskip}{\z@ \@plus 1fil}}} -\DeclareOption{parindent}{\@parskipfalse} -\DeclareOption{pointednumbers} - {\AtEndOfClass{\@altsecnumformattrue - \global\let\@altsecnumformatfalse\@altsecnumformattrue}} -\DeclareOption{pointednumber} - {\AtEndOfClass{\@altsecnumformattrue - \global\let\@altsecnumformatfalse\@altsecnumformattrue} - \ClassError - {scrartcl} - {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} - \ClassError - {scrartcl} - {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\@bigheadings - {\AtEndOfClass{ +%%% 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}% + \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\@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}} + \let\size@subparagraph\normalsize + }% +} \DeclareOption{bigheadings}{\@bigheadings} -\DeclareOption{bigheading}{\@bigheadings - \ClassError - {scrartcl} - {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{ +\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}} + \let\size@subparagraph\normalsize + }% +} \DeclareOption{normalheadings}{\@normalheadings} -\DeclareOption{normalheading}{\@normalheadings - \ClassError - {scrartcl} - {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{ +\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{ \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}} + \let\size@subparagraph\normalsize + }% +} \DeclareOption{smallheadings}{\@smallheadings} -\DeclareOption{smallheading}{\@smallheadings - \ClassError - {scrartcl} - {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.}} +\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% + }% +} +%%% From File: scrkpage.dtx +\newif\if@hsl +\KOMA@key{headsepline}[true]{% + \KOMA@set@ifkey{headsepline}{@hsl}{#1}% + \@ifpackageloaded{typearea}{% + \KOMAoptions{headinclude=#1}% + }{% + \PassOptionsToPackage{typearea}{headinclude=#1}% + }% +} +\KOMA@DeclareObsoleteOption[\PackageInfo]{headnosepline}{headsepline=false} +\newif\if@fsl +\KOMA@key{footsepline}[true]{% + \KOMA@set@ifkey{footsepline}{@fsl}{#1}% + \@ifpackageloaded{typearea}{% + \KOMAoptions{footinclude=#1}% + }{% + \PassOptionsToPackage{typearea}{footinclude=#1}% + }% +} +\KOMA@DeclareObsoleteOption[\PackageInfo]{footnosepline}{footsepline=false} +\KOMA@key{cleardoublepage}{% + \begingroup% + \def\@tempc{% + \endgroup% + \KOMA@unkown@keyval{cleardoublepage}{#1}{% + 'current' or any defined pagestyle e.g. 'empty','plain'}% + }% + \ifstr{#1}{current}{% + \let\cleardoublepage\cleardoublestandardpage + }{% + \ifnotundefined{ps@#1}{% + \def\@tempc{\endgroup% + \def\cleardoublepage{\cleardoublepageusingstyle{#1}}% + }% + }{}% + }% + \@tempc +} \newcommand*{\cleardoublestandardpage}{} \let\cleardoublestandardpage\cleardoublepage -\newcommand*{\cleardoubleemptypage}{\clearpage% - {\thispagestyle{empty}\cleardoublestandardpage}} -\newcommand*{\cleardoubleplainpage}{\clearpage% - {\thispagestyle{plain}\cleardoublestandardpage}} -\DeclareOption{cleardoubleempty}{% - \let\cleardoublepage\cleardoubleemptypage} -\DeclareOption{cleardoubleplain}{% - \let\cleardoublepage\cleardoubleplainpage} -\DeclareOption{cleardoublestandard}{% - \let\cleardoublepage\cleardoublestandardpage} +\newcommand*{\cleardoublepageusingstyle}[1]{\clearpage + {\thispagestyle{#1}\cleardoublestandardpage}} +\newcommand*{\cleardoubleemptypage}{\cleardoublepageusingstyle{empty}} +\newcommand*{\cleardoubleplainpage}{\cleardoublepageusingstyle{plain}} +\KOMA@DeclareObsoleteOption[\PackageInfo]{cleardoubleempty}{% + cleardoublepage=empty% +} +\KOMA@DeclareObsoleteOption[\PackageInfo]{cleardoubleplain}{% + cleardoublepage=plain% +} +\KOMA@DeclareObsoleteOption[\PackageInfo]{cleardoublestandard}{% + cleardoublepage=standard% +} +%%% 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}% +} +%%% 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% + \if@dynlist \newcommand*{\scr@starttoc}{}% - \let\scr@starttoc=\@starttoc% + \let\scr@starttoc=\@starttoc \renewcommand*{\@starttoc}[1]{% \before@starttoc{##1}\scr@starttoc{##1}\after@starttoc{##1}}% - \fi% - }} - } + \fi + }% + }% +} \DeclareOption{liststotocnumbered}{% \AtEndOfClass{% \renewcommand*{\float@listhead}[1]{% \section{#1} \@mkboth{\sectionmarkformat #1}{\sectionmarkformat #1}% - \if@dynlist% + \if@dynlist \newcommand*{\scr@starttoc}{}% - \let\scr@starttoc=\@starttoc% + \let\scr@starttoc=\@starttoc \renewcommand*{\@starttoc}[1]{% \before@starttoc{##1}\scr@starttoc{##1}\after@starttoc{##1}}% - \fi% - }} - } -\DeclareOption{bibtotoc} - {\AtEndOfClass{% - \renewcommand*\bib@heading{% - \addsec{\refname} - \@mkboth{\refname}{\refname} - }}} -\DeclareOption{bibtotocnumbered} - {\AtEndOfClass{% - \renewcommand*\bib@heading{% - \section{\refname} - \@mkboth{\sectionmarkformat \refname}{\sectionmarkformat \refname} - }}} -\DeclareOption{idxtotoc} - {\AtEndOfClass{% - \renewcommand*\idx@heading{% - \twocolumn[\addsec{\indexname}] - \@mkboth{\indexname}{\indexname}% - }}} -\newif\if@tocleft -\DeclareOption{tocleft}{\@toclefttrue} -\DeclareOption{tocindent}{\@tocleftfalse} + \fi + }% + }% +} \newif\if@dynlist \DeclareOption{listsleft}{\@dynlisttrue} \DeclareOption{listsindent}{\@dynlistfalse} -\if@compatibility\else - \DeclareOption*{% - \x@paper - } -\fi +%%% From File: scrkbib.dtx +\DeclareOption{openbib}{% + \AtEndOfPackage{% + \renewcommand*\@openbib@code{% + \advance\leftmargin\bibindent + \itemindent -\bibindent + \listparindent \itemindent + \parsep \z@ + }% + \renewcommand*\newblock{\par}% + }% +} +\DeclareOption{bibtotoc}{% + \AtEndOfClass{% + \renewcommand*\bib@heading{% + \addsec{\refname}% + \@mkboth{\refname}{\refname}% + }% + }% +} +\DeclareOption{bibtotocnumbered}{% + \AtEndOfClass{% + \renewcommand*\bib@heading{% + \section{\refname}% + \@mkboth{\sectionmarkformat \refname}{\sectionmarkformat \refname}% + }% + }% +} +%%% From File: scrkidx.dtx +\DeclareOption{idxtotoc}{% + \AtEndOfClass{% + \renewcommand*\idx@heading{% + \twocolumn[\addsec{\indexname}]% + \@mkboth{\indexname}{\indexname}% + }% + }% +} +%%% From File: scrklist.dtx +%%% From File: scrkmisc.dtx +\DeclareKeyValOption[% + \let\scr@pti@nerr@r + \OptionNotUsed + \x@paper +]{KOMA} +\KOMAoptions{% + draft=false,headsepline=false,footsepline=false,parskip=false% + ,twoside=false% +} \ExecuteOptions{% - final,11pt,onecolumn% - ,headnosepline,footnosepline,bigheadings% - ,oneside,abstractoff% + bigheadings% + ,abstractoff% } \ProcessOptions\relax -\RequirePackage{scrlfile} -\newif\if@restonecol +%%% From File: scrkfont.dtx \@tempcnta=10 -\advance\@tempcnta by\@ptsize\relax +\advance\@tempcnta by\@ptsize \xdef\@tempa{% -size% -\the\@tempcnta.clo} + size% + \the\@tempcnta.clo} \InputIfFileExists{\@tempa}{}{% - \ClassError - {scrartcl} - {File `\@tempa' not found!\MessageBreak - This error is fatal!} - {To every fontsize you want to select by class option,\MessageBreak - you need a corresponding - size-class-option-file declaring all\MessageBreak - the macros based on fontsize.\MessageBreak - Ask a wizzard for more information or use another - fontsize.\MessageBreak - You cannot continue!} - \batchmode \csname @@end\endcsname \end -} -\let\test@number =\undefined -\let\gobble@till@next =\undefined -\let\@BCOR =\undefined -\let\@@BCOR =\undefined -\let\@DIV =\undefined -\let\@@DIV =\undefined -\let\@headlines =\undefined -\let\@@headlines =\undefined -\let\x@paper =\undefined -\let\x@@paper =\undefined -\newcommand*{\scr@file@date@version}{} -\def\scr@file@date@version#1/#2/#3 #4 #5\@nil{#1/#2/#3 #4} -\RequirePackage{typearea}[\expandafter\expandafter\expandafter% - \scr@file@date@version\csname ver@% - scrartcl% - .cls\endcsname\@nil] + \ClassError{\KOMAClassName}{% + File `\@tempa' not found!\MessageBreak + This error is fatal!% + }{% + To every fontsize you want to select by class + option,\MessageBreak + you need a corresponding + size-class-option-file declaring all\MessageBreak + the macros based on fontsize.\MessageBreak + Ask a wizzard for more information or use another + fontsize.\MessageBreak + You cannot continue!% + }% + \batchmode \csname @@end\endcsname \end +} +\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm} +\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf} +\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt} +\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf} +\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit} +\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl} +\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc} +\DeclareOldFontCommand{\sfb}{\normalfont\sffamily\bfseries}{% + \@nomath\sfb} +\DeclareRobustCommand*{\cal}{\@fontswitch\relax\mathcal} +\DeclareRobustCommand*{\mit}{\@fontswitch\relax\mathnormal} +\newcommand*{\setkomafont}[2]{% + \@ifundefined{scr@fnt@#1}{% + \@ifundefined{scr@fnt@instead@#1}{% + \ClassError{\KOMAClassName}{% + 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% + }% + }{% + \ClassInfo{\KOMAClassName}{% + 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}{}{% + \ClassWarning{\KOMAClassName}{% + \csname scr@fnt@wrn@#1\endcsname{#1}% + }% + }% +} +\ifundefined{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*{\addtokomafont}[2]{% + \@ifundefined{scr@fnt@#1}{% + \@ifundefined{scr@fnt@instead@#1}{% + \ClassError{\KOMAClassName}{% + 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% + }% + }{% + \ClassInfo{\KOMAClassName}{% + 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}{}{% + \ClassWarning{\KOMAClassName}{% + \csname scr@fnt@wrn@#1\endcsname{#1}% + }% + }% +} +\newcommand*{\usekomafont}[1]{% + \@ifundefined{scr@fnt@#1}{% + \@ifundefined{scr@fnt@instead@#1}{% + \ClassError{\KOMAClassName}{% + 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% + }% + }{% + \ClassInfo{\KOMAClassName}{% + 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 + }% + }% + \@nameuse{scr@fnt@instead@#1}% + }{% + \@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: 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 + \space\number\day, \number\year}% +%%% From File: scrktare.dtx +\let\@BCOR =\relax +\let\@@BCOR =\relax +\let\@DIV =\relax +\let\@@DIV =\relax +\let\@headlines =\relax +\let\@@headlines =\relax +\let\x@paper =\relax +\let\x@@paper =\relax +\let\scr@pti@nerr@r =\relax +\RequirePackage{typearea}[\KOMAScriptVersion] +%%% From File: scrkpar.dtx \setlength{\lineskip}{\p@} \setlength{\normallineskip}{\p@} \setlength{\columnsep}{10\p@} \setlength{\columnseprule}{\z@} +\newcommand*{\scr@selectfont}{}\let\scr@selectfont\selectfont +\BeforePackage{everysel}{% + \ifx\selectfont\scr@new@selectfont\else + \ClassWarningNoLine{\KOMAClassName}{discard change of \string\selectfont}% + \fi + \let\selectfont\scr@selectfont +} +\AfterPackage{everysel}{% + \g@addto@macro\selectfont{\par@update}% + \let\scr@new@selectfont\selectfont +} +\g@addto@macro\selectfont{\par@update} +\newcommand*{\scr@new@selectfont}{}\let\scr@new@selectfont\selectfont +\newcommand*{\par@updaterelative}{% + \begingroup + \edef\@tempa{\the\parindent}\ifx\@tempa\f@parindent + \aftergroup\parindent@update + \fi + \edef\@tempa{\the\parskip}\ifx\@tempa\f@parskip + \aftergroup\parskip@update + \fi + \edef\@tempa{\the\parfillskip}\ifx\@tempa\f@parfillskip + \aftergroup\parfillskip@update + \fi + \endgroup +} +\newcommand*{\parindent@update}{% + \scr@defaultunits\parindent\scr@parindent + \begingroup + \let\@tempb\endgroup + \edef\@tempa{\the\parindent}\ifx\@tempa\f@parindent\else + \def\@tempb{\endgroup\edef\f@parindent{\the\parindent}}% + \fi + \@tempb +} +\newcommand*{\parskip@update}{% + \scr@defaultunits\parskip\scr@parskip + \begingroup + \let\@tempb\endgroup + \edef\@tempa{\the\parskip}\ifx\@tempa\f@parskip\else + \def\@tempb{\endgroup\edef\f@parskip{\the\parskip}}% + \fi + \@tempb +} +\newcommand*{\parfillskip@update}{% + \scr@defaultunits\parfillskip\scr@parfillskip + \begingroup + \let\@tempb\endgroup + \edef\@tempa{\the\parfillskip}\ifx\@tempa\f@parfillskip\else + \def\@tempb{\endgroup\edef\f@parfillskip{\the\parfillskip}}% + \fi + \@tempb +} +\newcommand*{\scr@defaultunits}[2]{% + \begingroup + \edef\@tempa{#2}% + \expandafter\scr@@defaultunits\expandafter#1\@tempa plusplus\@nnil + \edef\@tempa{\noexpand\endgroup\noexpand\setlength{\noexpand#1}{\the#1}}% + \@tempa +} +\newcommand*{\scr@@defaultunits}{} +\def\scr@@defaultunits#1#2plus#3plus#4\@nnil{% + \ifx\relax#3\relax + \scr@@@defaultunits#1{}#2minusminus\@nnil + \else + \scr@@@defaultunits#1{#2}#3minusminus\@nnil + \fi +} +\newcommand*{\scr@@@defaultunits}{} +\def\scr@@@defaultunits#1#2#3minus#4minus#5\@nnil{% + \ifx\relax#2\relax + \@defaultunits\@tempskipa#3pt\relax\@nnil + \setlength{#1}{\@tempskipa}% + \else + \@defaultunits\@tempskipa\z@\@plus#3pt\relax\@nnil + \setlength{#1}{\@tempskipa}% + \@defaultunits\@tempskipa#2pt\relax\@nnil + \addtolength{#1}{\@tempskipa}% + \fi + \ifx\relax#4\relax\else + \@defaultunits\@tempskipa\z@\@minus #4pt\relax\@nnil + \addtolength{#1}{\@tempskipa}% + \fi +} \g@addto@macro{\@listi}{\@list@extra} \let\@listI=\@listi \g@addto@macro{\@listii}{\@list@extra} @@ -451,150 +968,13 @@ size% } \g@addto@macro{\footnotesize}{\protect\add@extra@listi{ftns}} \g@addto@macro{\small}{\protect\add@extra@listi{sml}} -\newcommand*{\@list@extra}{} -\newcommand*{% - \@parskip@indent}{% - \if@parskip - \setlength{\parindent}{\z@}% - \scr@parskip - \scr@parfillskip - \renewcommand*{\@list@extra}{% - \topsep\z@ \parsep\parskip \itemsep\z@}% - \else - \setlength{\parindent}{1em}% - \setlength{\parskip}{\z@ \@plus \p@}% - \setlength{\parfillskip}{\z@ \@plus 1fil}% - \renewcommand*{\@list@extra}{}% - \fi -}% -\@parskip@indent -\AtBeginDocument{% - \if@parskip\ifdim\parfillskip=\z@ \scr@parfillskip\fi\fi +\newcommand*{\@list@extra}{% + \ifdim\parskip>\z@\topsep\z@\parskip\parskip\itemsep\z@\fi } \@lowpenalty = 51 \@medpenalty =151 \@highpenalty =301 -\setcounter{topnumber}{2} -\renewcommand*\topfraction{.7} -\setcounter{bottomnumber}{1} -\renewcommand*\bottomfraction{.3} -\setcounter{totalnumber}{3} -\renewcommand*\textfraction{.2} -\renewcommand*\floatpagefraction{.5} -\setcounter{dbltopnumber}{2} -\renewcommand*\dbltopfraction{.7} -\renewcommand*\dblfloatpagefraction{.5} -\if@compatibility - \newcommand*\headincludeon{\@hincltrue} - \newcommand*\headincludeoff{\@hinclfalse} - \newcommand*\headseplineon{\@hsltrue \@hincltrue} - \newcommand*\headseplineoff{\@hslfalse \@hinclfalse} - \newcommand*\footincludeon{\@fincltrue} - \newcommand*\footincludeoff{\@finclfalse} - \newcommand*\footseplineon{\@fsltrue \@fincltrue} - \newcommand*\footseplineoff{\@fslfalse \@finclfalse} -\fi -\newcommand*{\set@tempdima@hw}{% - \setlength{\@tempdima}{\textwidth}% - \if@mincl - \addtolength{\@tempdima}{\marginparsep}% - \addtolength{\@tempdima}{\marginparwidth}% - \fi - } -\if@twoside - \renewcommand*{\ps@plain}{\let\@mkboth\@gobbletwo - \renewcommand*{\@evenhead}{}% - \renewcommand*{\@oddhead}{}% - \renewcommand*{\@evenfoot}{% - \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% - \if@fsl \hrule \vskip 3\p@ \fi - \hb@xt@ \@tempdima{{\pnumfont\thepage\hfil}}}}}% - \renewcommand*{\@oddfoot}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \if@fsl \hrule \vskip 3\p@ \fi - \hb@xt@ \@tempdima{{\pnumfont\hfil\thepage}}}}\hss}}% - \newcommand*{\ps@headings}{\let\@mkboth\markboth - \renewcommand*{\@evenhead}{% - \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% - \hb@xt@ \@tempdima{{\headfont\strut\leftmark\hfil}}% - \if@hsl \vskip 1.5\p@ \hrule \fi}}} - \renewcommand*{\@oddhead}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \hb@xt@ \@tempdima{{\headfont\hfil\strut\rightmark}}% - \if@hsl \vskip 1.5\p@ \hrule \fi}}\hss} - \renewcommand*{\@evenfoot}{% - \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% - \if@fsl \hrule \vskip 3\p@ \fi - \hb@xt@ \@tempdima{{\pnumfont\thepage\hfil}}}}}% - \renewcommand*{\@oddfoot}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \if@fsl \hrule \vskip 3\p@ \fi - \hb@xt@ \@tempdima{{\pnumfont\hfil\thepage}}}}\hss}% - \renewcommand*{\sectionmark}[1]{% - \markboth {\ifnum \c@secnumdepth >\z@% - \sectionmarkformat\fi ##1}{}} - \renewcommand*{\subsectionmark}[1]{% - \markright {\ifnum \c@secnumdepth >\@ne% - \subsectionmarkformat\fi ##1}}} - \newcommand*{\ps@myheadings}{\let\@mkboth\@gobbletwo - \renewcommand*{\@evenhead}{% - \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% - \hb@xt@ \@tempdima{{\headfont\strut\leftmark\hfil}}% - \if@hsl \vskip 1.5\p@ \hrule \fi}}} - \renewcommand*{\@oddhead}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \hb@xt@ \@tempdima{{\headfont\hfil\strut\rightmark}}% - \if@hsl \vskip 1.5\p@ \hrule \fi}}\hss} - \renewcommand*{\@evenfoot}{% - \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% - \if@fsl \hrule \vskip 3\p@ \fi - \hb@xt@ \@tempdima{{\pnumfont\thepage\hfil}}}}}% - \renewcommand*{\@oddfoot}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \if@fsl \hrule \vskip 3\p@ \fi - \hb@xt@ \@tempdima{{\pnumfont\hfil\thepage}}}}\hss}% - \renewcommand*{\subsectionmark}[1]{} - \renewcommand*{\sectionmark}[1]{}} -\else - \renewcommand*{\ps@plain}{\let\@mkboth\@gobbletwo - \renewcommand*{\@evenhead}{}% - \renewcommand*{\@oddhead}{}% - \renewcommand*{\@evenfoot}{}% - \renewcommand*{\@oddfoot}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \if@fsl \hrule \vskip 3\p@ \fi - \hb@xt@ \@tempdima{{\pnumfont\hfil\thepage\hfil}}}}\hss}} - \newcommand*{\ps@headings}{\let\@mkboth\markboth - \renewcommand*{\@evenhead}{}% - \renewcommand*{\@oddhead}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \hb@xt@ \@tempdima{{\headfont\hfil\strut\rightmark\hfil}} - \if@hsl \vskip 1.5\p@ \hrule \fi}}\hss}% - \renewcommand*{\@evenfoot}{}% - \renewcommand*{\@oddfoot}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \if@fsl \hrule \vskip 3\p@ \fi - \hb@xt@ \@tempdima{{\pnumfont\hfil\thepage\hfil}}}\hss}}% - \renewcommand*{\subsectionmark}[1]{} - \renewcommand*{\sectionmark}[1]{\markright {\ifnum \c@secnumdepth >\z@ - \sectionmarkformat\fi ##1}}} - \newcommand*{\ps@myheadings}{\let\@mkboth\@gobbletwo - \renewcommand*{\@evenhead}{}% - \renewcommand*{\@oddhead}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \hb@xt@ \@tempdima{{\headfont\hfil\strut\rightmark\hfil}} - \if@hsl \vskip 1.5\p@ \hrule \fi}}\hss}% - \renewcommand*{\@evenfoot}{}% - \renewcommand*{\@oddfoot}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \if@fsl \hrule \vskip 3\p@ \fi - \hb@xt@ \@tempdima{{\pnumfont\hfil\thepage\hfil}}}}\hss}% - \renewcommand*{\subsectionmark}[1]{}% - \renewcommand*{\sectionmark}[1]{}} -\fi -\newcommand*{\titlepagestyle}{plain} -\newcommand*{\partpagestyle}{plain} -\newcommand*{\indexpagestyle}{plain} +%%% From File: scrktitl.dtx \newcommand*{\@extratitle}{} \newcommand{\extratitle}[1]{\gdef\@extratitle{#1}} \newcommand*{\@titlehead}{} @@ -611,58 +991,60 @@ size% \newcommand{\dedication}[1]{\gdef\@dedication{#1}} \newcommand*{\next@tpage}{\clearpage\thispagestyle{empty}} \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 + \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\cleardoublepage - \thispagestyle{empty} - \fi - \ifx\@titlehead\@empty \else - \noindent\begin{minipage}[t]{\textwidth} + \thispagestyle{empty}% + \fi + \ifx\@titlehead\@empty \else + \noindent\begin{minipage}[t]{\textwidth}% \@titlehead \end{minipage}\par - \fi - \null\vfill - \begin{center} - \ifx\@subject\@empty \else - {\Large \@subject \par} + \fi + \null\vfill + \begin{center} + \ifx\@subject\@empty \else + {\subject@font \@subject \par}% + \vskip 3em + \fi + {\titlefont\huge \@title\par}% \vskip 3em - \fi - {\titlefont\huge \@title\par} - \vskip 3em - {\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 + {\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 \noindent\begin{minipage}[t]{\textwidth} - \@uppertitleback + \@uppertitleback \end{minipage}\par \vfill \noindent\begin{minipage}[b]{\textwidth} - \@lowertitleback + \@lowertitleback \end{minipage} - \fi - \ifx\@dedication\@empty \else + \fi + \ifx\@dedication\@empty \else \next@tpage\null\vfill - {\centering \Large \@dedication \par} + {\centering \Large \@dedication \par}% \vskip \z@ \@plus3fill \if@twoside \next@tpage\cleardoublepage \fi - \fi + \fi \end{titlepage} \setcounter{footnote}{0}% \global\let\thanks\relax @@ -688,404 +1070,445 @@ size% \global\let\lowertitleback\relax \global\let\dedication\relax \global\let\date\relax - \global\let\and\relax} + \global\let\and\relax + } \else - \newcommand*\maketitle[1][1]{\par - \@tempcnta=#1\relax\ifnum\@tempcnta=1\else - \ClassWarning{scrartcl} - {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\@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} + \newcommand*\maketitle[1][1]{\par + \@tempcnta=#1\relax\ifnum\@tempcnta=1\else + \ClassWarning{\KOMAClassName}{% + 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\@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 - \ifx\@titlehead\@empty \else - \noindent\begin{minipage}[t]{\textwidth} - \@titlehead - \end{minipage}\par - \fi - \null - \vskip 2em% - \begin{center}% + \clearpage + \let\footnote\thanks + \ifx\@extratitle\@empty \else + \noindent\@extratitle \next@tpage \if@twoside \null\next@tpage \fi + \fi + \ifx\@titlehead\@empty \else + \noindent\begin{minipage}[t]{\textwidth} + \@titlehead + \end{minipage}\par + \fi + \null + \vskip 2em% + \begin{center}% \ifx\@subject\@empty \else - {\Large \@subject \par} - \vskip 1.5em + {\subject@font \@subject \par} + \vskip 1.5em \fi {\titlefont\huge \@title \par}% \vskip 1.5em% {\Large \lineskip .5em% - \begin{tabular}[t]{c}% + \begin{tabular}[t]{c} \@author - \end{tabular}\par}% + \end{tabular}\par + }% \vskip 1em% {\Large \@date \par}% \vskip \z@ \@plus 1em {\Large \@publishers \par} \ifx\@dedication\@empty \else - \vskip 2em - {\Large \@dedication \par} + \vskip 2em + {\Large \@dedication \par} \fi \end{center}% \par - \vskip 2em} -\renewcommand*{\numberline}[1]{% - \hb@xt@\@tempdima{#1\autodot\hfil}} + \vskip 2em +} +\newcommand*\titlefont{\sectfont} +\newcommand*{\subject@font}{\normalfont\normalcolor\bfseries\Large} +\newcommand*{\scr@fnt@title}{\titlefont} +\newcommand*{\scr@fnt@subject}{\subject@font} +\if@titlepage + \newenvironment{abstract}{% + \titlepage + \null\vfil + \@beginparpenalty\@lowpenalty + \if@abstrt + \begin{center} + \normalfont\sectfont\nobreak\abstractname + \@endparpenalty\@M + \end{center} + \fi + }{% + \par\vfil\null\endtitlepage + } +\else + \newenvironment{abstract}{% + \if@twocolumn\if@abstrt + \addsec*{\abstractname} + \fi + \else + \if@abstrt + \small + \begin{center} + {\normalfont\sectfont\nobreak\abstractname + \vspace{-.5em}\vspace{\z@}}% + \end{center} + \fi + \quotation + \fi + }{% + \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}% + \setcounter{subsection}{0}% + \gdef\thesection{\@Alph\c@section}% + \csname appendixmore\endcsname +} +\newif\if@altsecnumformat\@altsecnumformatfalse +\newif\if@autodot\@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 + \fi + \@@maybeautodot +} +\let\scr@sect\@sect +\renewcommand*{\@sect}[1]{\stepcounter{#1}% + \expandafter\@maybeautodot\csname the#1\endcsname + \addtocounter{#1}{-1}\scr@sect{#1}% +} +\BeforeClosingMainAux{% + \if@autodot\if@filesw\write\@mainaux{% + \string\global\string\@altsecnumformattrue}% + \fi\fi} +\newcommand*\autodot{\if@altsecnumformat.\fi} \setcounter{secnumdepth}{3} \newcounter{part} +\renewcommand*{\thepart}{\@Roman\c@part} +\newcommand*{\partformat}{\partname~\thepart\autodot} \newcounter{section} +\renewcommand*{\thesection}{\@arabic\c@section} +\newcommand*\sectionmarkformat{\thesection\autodot\enskip} \newcounter{subsection}[section] +\renewcommand*{\thesubsection}{\thesection.\@arabic\c@subsection} +\newcommand*\subsectionmarkformat{\thesubsection\autodot\enskip} \newcounter{subsubsection}[subsection] +\renewcommand*{\thesubsubsection}{% + \thesubsection.\@arabic\c@subsubsection +} \newcounter{paragraph}[subsubsection] +\renewcommand*{\theparagraph}{\thesubsubsection.\@arabic\c@paragraph} \newcounter{subparagraph}[paragraph] -\renewcommand*\thepart{\@Roman\c@part} -\renewcommand*\thesection{\@arabic\c@section} -\renewcommand*\thesubsection{\thesection.\@arabic\c@subsection} -\renewcommand*\thesubsubsection{\thesubsection.\@arabic\c@subsubsection} -\renewcommand*\theparagraph{\thesubsubsection.\@arabic\c@paragraph} -\renewcommand*\thesubparagraph{\theparagraph.\@arabic\c@subparagraph} +\renewcommand*{\thesubparagraph}{% + \theparagraph.\@arabic\c@subparagraph +} +\newcommand*{\othersectionlevelsformat}[1]{% + \csname the#1\endcsname\autodot\enskip} +\renewcommand*{\@seccntformat}{\protect\othersectionlevelsformat} +\newcommand*\partname{Part} +\newcommand*\abstractname{Abstract} +\newcommand*\appendixname{Appendix} +\newcommand*{\partheadstartvskip}{% + \addvspace{4ex}% +} +\newcommand*{\partheadmidvskip}{% + \par\nobreak +} +\newcommand*{\partheadendvskip}{% + \vskip 3ex +} \newcommand\part{\par - \addvspace{4ex}% - \@afterindentfalse - \secdef\@part\@spart} + \partheadstartvskip% + \@afterindentfalse + \secdef\@part\@spart +} \newcommand*{\@part}{} \def\@part[#1]#2{% + \ifnum \c@secnumdepth >\m@ne + \refstepcounter{part}% + \@maybeautodot\thepart% + \addcontentsline{toc}{part}{\protect\numberline{\thepart}#1}% + \else + \addcontentsline{toc}{part}{#1}% + \fi + \begingroup + \setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative + \raggedpart + \interlinepenalty \@M + \normalfont\sectfont\nobreak \ifnum \c@secnumdepth >\m@ne - \refstepcounter{part}% - \@maybeautodot\thepart% - \addcontentsline{toc}{part}{\protect\numberline{\thepart}#1}% - \else - \addcontentsline{toc}{part}{#1}% + \size@partnumber\partformat + \partheadmidvskip \fi - {\parindent \z@ \raggedright - \interlinepenalty \@M - \normalfont\sectfont\nobreak - \ifnum \c@secnumdepth >\m@ne - \size@partnumber\partformat - \par\nobreak - \fi - \size@part #2\strut% - \partmark{#1}\par}% - \nobreak - \vskip 3ex - \@afterheading} + \size@part #2\strut% + \partmark{#1}\par + \endgroup + \nobreak + \partheadendvskip + \@afterheading +} \newcommand*{\@spart}[1]{% - {\parindent \z@ \raggedright - \interlinepenalty \@M - \normalfont - \sectfont\nobreak\size@part #1\strut\@mkboth{}{}\par}% - \nobreak - \vskip 3ex - \@afterheading} -\newcommand*{\partmark}[1]{\@mkboth{}{}} -\newcommand\addpart{\par - \addvspace{4ex}% + \begingroup + \setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative + \raggedpart + \interlinepenalty \@M + \normalfont + \sectfont\nobreak\size@part #1\strut\@mkboth{}{}\par + \endgroup + \nobreak + \partheadendvskip + \@afterheading +} +\newcommand\addpart{% + \par + \partheadstartvskip% \@afterindentfalse - \secdef\@addpart\@saddpart} + \secdef\@addpart\@saddpart +} \newcommand*{\@addpart}{} -\def\@addpart[#1]#2{\addcontentsline{toc}{part}{#1}\@spart{#2}} -\newcommand*{\@saddpart}{} -\def\@saddpart#1{\@spart{#1}} +\def\@addpart[#1]#2{\addcontentsline{toc}{part}{#1}\@spart{#2}% + \ifx\partmark\@gobble\else\@mkboth{#1}{}\fi +} +\newcommand*{\@saddpart}{\@spart} +\newcommand*{\partmark}{} +\let\partmark\@gobble \newcommand*\addsec{\secdef\@addsec\@saddsec} \newcommand*{\@addsec}{} \def\@addsec[#1]#2{\section*{#2}\addcontentsline{toc}{section}{#1} - \if@twoside \@mkboth{#1}{}\else \@mkboth{#1}{#1}\fi} + \if@twoside \@mkboth{#1}{}\else \@mkboth{#1}{#1}\fi +} \newcommand*{\@saddsec}[1]{\section*{#1}\@mkboth{}{}} \newcommand\section{\@startsection{section}{1}{\z@}% {-3.5ex \@plus -1ex \@minus -.2ex}% {2.3ex \@plus.2ex}% - {\setlength{\parfillskip}{\z@ \@plus 1fil}% - \raggedsection\normalfont\sectfont\nobreak\size@section\nobreak}} + {\raggedsection\normalfont\sectfont\nobreak\size@section\nobreak}% +} \newcommand\subsection{\@startsection{subsection}{2}{\z@}% {-3.25ex\@plus -1ex \@minus -.2ex}% {1.5ex \@plus .2ex}% - {\setlength{\parfillskip}{\z@ \@plus 1fil}% - \raggedsection\normalfont\sectfont\nobreak\size@subsection\nobreak}} + {\raggedsection\normalfont\sectfont\nobreak\size@subsection\nobreak + }% +} \newcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}% {-3.25ex\@plus -1ex \@minus -.2ex}% {1.5ex \@plus .2ex}% - {\setlength{\parfillskip}{\z@ \@plus 1fil}% - \raggedsection\normalfont\sectfont\nobreak\size@subsubsection\nobreak}} + {\raggedsection\normalfont\sectfont\nobreak\size@subsubsection + \nobreak + }% +} \newcommand\paragraph{\@startsection{paragraph}{4}{\z@}% {3.25ex \@plus1ex \@minus.2ex}% {-1em}% - {\setlength{\parfillskip}{\z@ \@plus 1fil}% - \raggedsection\normalfont\sectfont\nobreak\size@paragraph\nobreak}} + {\raggedsection\normalfont\sectfont\nobreak\size@paragraph\nobreak}% +} \newcommand\subparagraph{\@startsection{subparagraph}{5}{\parindent}% {3.25ex \@plus1ex \@minus .2ex}% {-1em}% - {\setlength{\parfillskip}{\z@ \@plus 1fil}% - \raggedsection\normalfont\sectfont\nobreak\size@subparagraph\nobreak}} + {\raggedsection\normalfont\sectfont\nobreak\size@subparagraph + \nobreak + }% +} \newcommand\minisec[1]{\@afterindentfalse \vskip 1.5ex {\parindent \z@ - \raggedsection\normalfont\sectfont\nobreak#1\par\nobreak}\nobreak - \@afterheading} + \raggedsection\normalfont\sectfont\nobreak#1\par\nobreak}\nobreak% + \@afterheading +} +\newcommand*{\raggedsection}{} \let\raggedsection\raggedright -\setlength\arraycolsep{5\p@} -\setlength\tabcolsep{6\p@} -\setlength\arrayrulewidth{.4\p@} -\setlength\doublerulesep{2\p@} -\setlength\tabbingsep{\labelsep} +\newcommand*{\raggedpart}{} +\let\raggedpart\raggedsection +\newcommand*\sectfont{\normalcolor\sffamily\bfseries} +\newcommand*{\size@part}{} +\newcommand*{\size@partnumber}{} +\newcommand*{\size@section}{} +\newcommand*{\size@subsection}{} +\newcommand*{\size@subsubsection}{} +\newcommand*{\size@paragraph}{} +\newcommand*{\size@subparagraph}{} +\newcommand*{\scr@fnt@disposition}{\sectfont} +\newcommand*{\scr@fnt@part}{\size@part} +\newcommand*{\scr@fnt@partnumber}{\size@partnumber} +\newcommand*{\scr@fnt@section}{\size@section} +\newcommand*{\scr@fnt@subsection}{\size@subsection} +\newcommand*{\scr@fnt@subsubsection}{\size@subsubsection} +\newcommand*{\scr@fnt@paragraph}{\size@paragraph} +\newcommand*{\scr@fnt@subparagraph}{\size@subparagraph} +\aliaskomafont{minisec}{disposition} +\aliaskomafont{sectioning}{disposition} +\newcommand*\l@part[2]{% + \ifnum \c@tocdepth >-2\relax + \addpenalty{\@secpenalty}% + \addvspace{2.25em \@plus\p@}% + \setlength{\@tempdima}{2em}% + \if@tocleft + \ifx\toc@l@number\@empty\else + \setlength\@tempdima{0\toc@l@number}% + \fi + \fi + \begingroup + \parindent \z@ \rightskip \@pnumwidth + \parfillskip -\@pnumwidth + \leavevmode\sectfont\large + \advance\leftskip\@tempdima + \hskip -\leftskip + #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par + \if@compatibility + \global\@nobreaktrue + \everypar{\global\@nobreakfalse\everypar{}}% + \else + \penalty\@highpenalty + \fi + \endgroup + \fi +} +\newcommand*\l@section[2]{% + \ifnum \c@tocdepth >\z@ + \addpenalty{\@secpenalty}% + \addvspace{1.0em \@plus\p@}% + \setlength\@tempdima{1.5em}% + \if@tocleft + \ifx\toc@l@number\@empty\else + \setlength\@tempdima{0\toc@l@number}% + \fi + \fi + \begingroup + \parindent \z@ \rightskip \@pnumwidth + \parfillskip -\@pnumwidth + \leavevmode \sectfont + \advance\leftskip\@tempdima + \hskip -\leftskip + #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par + \endgroup + \fi +} +\newcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}} +\newcommand*\l@subsubsection{\@dottedtocline{3}{3.8em}{3.2em}} +\newcommand*\l@paragraph{\@dottedtocline{4}{7.0em}{4.1em}} +\newcommand*\l@subparagraph{\@dottedtocline{5}{10em}{5em}} +%%% From File: scrkmisc.dtx +\newif\if@restonecol +\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} \setlength{\skip\@mpfootins}{\skip\footins} \setlength\fboxsep{3\p@} \setlength\fboxrule{.4\p@} \renewcommand*\theequation{% - \@arabic\c@equation} -\if@twocolumn - \setlength{\leftmargini}{2em} -\else - \setlength{\leftmargini}{2.5em} -\fi -\setlength{\leftmarginii}{2.2em} -\setlength{\leftmarginiii}{1.87em} -\setlength{\leftmarginiv}{1.7em} -\if@twocolumn - \setlength{\leftmarginv}{.5em} - \setlength{\leftmarginvi}{.5em} -\else - \setlength{\leftmarginv}{1em} - \setlength{\leftmarginvi}{1em} -\fi -\setlength{\leftmargin}{\leftmargini} -\setlength{\labelsep}{.5em} -\setlength{\labelwidth}{\leftmargini} -\addtolength{\labelwidth}{-\labelsep} -\@beginparpenalty=-\@lowpenalty -\@endparpenalty =-\@lowpenalty -\@itempenalty =-\@lowpenalty -\renewcommand*\theenumi{\@arabic\c@enumi} -\renewcommand*\theenumii{\@alph\c@enumii} -\renewcommand*\theenumiii{\@roman\c@enumiii} -\renewcommand*\theenumiv{\@Alph\c@enumiv} -\newcommand*\labelenumi{\theenumi.} -\newcommand*\labelenumii{\theenumii)} -\newcommand*\labelenumiii{\theenumiii.} -\newcommand*\labelenumiv{\theenumiv.} -\renewcommand*\p@enumii{\theenumi} -\renewcommand*\p@enumiii{\p@enumii(\theenumii)} -\renewcommand*\p@enumiv{\p@enumiii\theenumiii} -\newcommand*\labelitemi{\textbullet} -\newcommand*\labelitemii{\normalfont\bfseries\textendash} -\newcommand*\labelitemiii{\textasteriskcentered} -\newcommand*\labelitemiv{\textperiodcentered} -\newenvironment{description} - {\list{}{\labelwidth\z@ \itemindent-\leftmargin - \let\makelabel\descriptionlabel}} - {\endlist} -\newcommand*{\descriptionlabel}[1]{\hspace\labelsep - \descfont #1} -\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{verse} - {\let\\=\@centercr - \list{}{\itemsep \z@ - \itemindent -1.5em% - \listparindent\itemindent - \rightmargin \leftmargin - \advance\leftmargin 1.5em}% - \item\relax} - {\endlist} -\newenvironment{quotation} - {\list{}{\listparindent 1em% - \itemindent \listparindent - \rightmargin \leftmargin - \parsep \z@ \@plus\p@}% - \item\relax} - {\endlist} -\newenvironment{quote} - {\list{}{\rightmargin\leftmargin}% - \item\relax} - {\endlist} -\newenvironment{addmargin}{% - \@tempswafalse\@addmargin - }{\endlist} -\newenvironment{addmargin*}{% - \@tempswafalse - \if@twoside\ifthispageodd{}{\@tempswatrue}\fi - \@addmargin - }{\endlist} -\newcommand*{\@addmargin}[2][\@tempa]{% - \@tempcnta=\@listdepth - \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@} - \@listdepth=\@tempcnta% - }% - \item[]% - } -\if@titlepage - \newenvironment{abstract}{% - \titlepage - \null\vfil - \@beginparpenalty\@lowpenalty - \if@abstrt - \begin{center} - \normalfont\sectfont\nobreak\abstractname - \@endparpenalty\@M - \end{center}\fi} - {\par\vfil\null\endtitlepage} -\else - \newenvironment{abstract}{% - \if@twocolumn\if@abstrt - \addsec*{\abstractname}\fi% - \else - \if@abstrt - \small - \begin{center}% - {\normalfont\sectfont\nobreak\abstractname - \vspace{-.5em}\vspace{\z@}}% - \end{center}\fi% - \quotation - \fi} - {\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 - } -\newcommand\marginline[1]{\marginpar[\raggedleft{#1}]{\raggedright #1}} -\newcommand*\appendix{\par% - \setcounter{section}{0}% - \setcounter{subsection}{0}% - \renewcommand*\thesection{\@Alph\c@section}% - \@ifundefined{appendixmore}{}{\appendixmore}} -\newcounter{figure} -\renewcommand*\thefigure{% - \@arabic\c@figure} -\newcommand*{\fps@figure}{tbp} -\newcommand*{\ftype@figure}{1} -\newcommand*{\ext@figure}{lof} -\newcommand*{\fnum@figure}{\figureformat} -\newenvironment{figure} - {\let\caption\captionbelow\@float{figure}} - {\end@float} -\newenvironment{figure*} - {\let\caption\captionbelow\@dblfloat{figure}} - {\end@dblfloat} -\newcounter{table} -\renewcommand*\thetable{% - \@arabic\c@table} -\newcommand*{\fps@table}{tbp} -\newcommand*{\ftype@table}{2} -\newcommand*{\ext@table}{lot} -\newcommand*{\fnum@table}{\tableformat} -\newenvironment{table} - {\if@tablecaptionabove\let\caption\captionabove% - \else\let\caption\captionbelow\fi\@float{table}} - {\end@float} -\newenvironment{table*} - {\if@tablecaptionabove\let\caption\captionabove% - \else\let\caption\captionbelow\fi\@dblfloat{table}} - {\end@dblfloat} -\newcommand*{\new@tpo@label}[2]{% - \expandafter\gdef\csname scr@tpo@#1\endcsname{#2}% - } -\newcommand*{\ref@tpo@label}[1]{% - \expandafter\ifx\csname scr@tpo@#1\endcsname\relax\value{page}% - \else\csname scr@tpo@#1\endcsname\fi} + \@arabic\c@equation +} +\newcommand*{\new@tpo@label}{\@newl@bel{tpo}} \newcommand*{\scr@tpo}{0} \newcommand*{\is@thispageodd}{% - \begingroup% - \@tempcnta=\scr@tpo% - \advance\@tempcnta by\@ne% + \@bsphack + \begingroup + \@tempcnta=\scr@tpo + \advance\@tempcnta by\@ne \xdef\scr@tpo{\the\@tempcnta}% - \@bsphack - \protected@write\@auxout{}{% - \string\new@tpo@label{\scr@tpo}{\noexpand\the\value{page}}}% - \@esphack - \count@\ref@tpo@label{\scr@tpo}\relax - \ifodd\count@ + \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 + \ClassWarning{\KOMAClassName}{% + 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 } -\AtEndDocument{% - \if@filesw\immediate\write\@auxout{% - \string\gdef\string\scr@tpo@lst{\scr@tpo}}\fi% - \ifx\scr@tpo@lst\scr@tpo\else\ifnum \scr@tpo>0 - \ClassWarningNoLine{% - scrartcl% - }{Rerun to get odd- an even-page-stuff right}% - \fi\fi - } \newif\ifthispagewasodd \newcommand{\ifthispageodd}{% \is@thispageodd @@ -1095,10 +1518,160 @@ size% \expandafter\@secondoftwo \fi } -\newlength\abovecaptionskip -\newlength\belowcaptionskip -\setlength\abovecaptionskip{10\p@} -\setlength\belowcaptionskip{0\p@} +\DeclareRobustCommand*\textsubscript[1]{% + \@textsubscript{\selectfont#1}% +} +\newcommand{\@textsubscript}[1]{% + {\m@th\ensuremath{_{\mbox{\fontsize\sf@size\z@#1}}}}% +} +%%% From File: scrkpage.dtx +\newcommand*{\set@tempdima@hw}{% + \setlength{\@tempdima}{\textwidth}% + \if@mincl + \addtolength{\@tempdima}{\marginparsep}% + \addtolength{\@tempdima}{\marginparwidth}% + \fi +} +\newcommand*\pnumfont{\normalfont\normalcolor} +\newcommand*\headfont{\normalfont\normalcolor\slshape} +\newcommand*{\scr@fnt@pagenumber}{\pnumfont} +\aliaskomafont{pagination}{pagenumber} +\newcommand*{\scr@fnt@pagehead}{\headfont} +\newcommand*{\scr@fnt@wrn@pagehead}[1]{% + font selection of elements `pagehead' and `pagefoot'\MessageBreak + changed, because they are same% +} +\aliaskomafont{pagefoot}{pagehead} +\newcommand*{\pagemark}{{\usekomafont{pagenumber}% + \thepage}} +\if@twoside + \renewcommand*{\ps@plain}{% + \renewcommand*{\@evenhead}{}% + \renewcommand*{\@oddhead}{}% + \renewcommand*{\@evenfoot}{% + \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\pagemark\hfil}}}}}% + \renewcommand*{\@oddfoot}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\hfil\pagemark}}}}\hss}% + }% + \newcommand*{\ps@headings}{\let\@mkboth\markboth + \renewcommand*{\@evenhead}{% + \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% + \hb@xt@ \@tempdima{{\headfont\strut\leftmark\hfil}}% + \if@hsl \vskip 1.5\p@ \hrule \fi}}}% + \renewcommand*{\@oddhead}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \hb@xt@ \@tempdima{{\headfont\hfil\strut\rightmark}}% + \if@hsl \vskip 1.5\p@ \hrule \fi}}\hss}% + \renewcommand*{\@evenfoot}{% + \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\pagemark\hfil}}}}}% + \renewcommand*{\@oddfoot}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\hfil\pagemark}}}}\hss}% + \renewcommand*{\sectionmark}[1]{% + \markboth{\ifnum \c@secnumdepth >\z@% + \sectionmarkformat\fi ##1}{}}% + \renewcommand*{\subsectionmark}[1]{% + \markright{\ifnum \c@secnumdepth >\@ne% + \subsectionmarkformat\fi ##1}}% + }% + \newcommand*{\ps@myheadings}{\let\@mkboth\@gobbletwo + \renewcommand*{\@evenhead}{% + \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% + \hb@xt@ \@tempdima{{\headfont\strut\leftmark\hfil}}% + \if@hsl \vskip 1.5\p@ \hrule \fi}}}% + \renewcommand*{\@oddhead}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \hb@xt@ \@tempdima{{\headfont\hfil\strut\rightmark}}% + \if@hsl \vskip 1.5\p@ \hrule \fi}}\hss}% + \renewcommand*{\@evenfoot}{% + \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\pagemark\hfil}}}}}% + \renewcommand*{\@oddfoot}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\hfil\pagemark}}}}\hss}% + \renewcommand*{\subsectionmark}[1]{}% + \renewcommand*{\sectionmark}[1]{}% + } +\else + \renewcommand*{\ps@plain}{% + \renewcommand*{\@oddhead}{% + }% + \let\@evenhead\@oddhead% + \renewcommand*{\@oddfoot}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\hfil\pagemark\hfil}}}}\hss + }% + \let\@evenfoot\@oddfoot + } + \newcommand*{\ps@headings}{\let\@mkboth\markboth + \renewcommand*{\@oddhead}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \hb@xt@ \@tempdima{{\headfont\hfil\strut\rightmark\hfil}} + \if@hsl \vskip 1.5\p@ \hrule \fi}}\hss + }% + \let\@evenhead\@oddhead + \renewcommand*{\@oddfoot}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\hfil\pagemark\hfil}}}\hss}}% + \renewcommand*{\subsectionmark}[1]{}% + \renewcommand*{\sectionmark}[1]{% + \markright{\ifnum \c@secnumdepth >\z@\sectionmarkformat\fi + ##1}}% + \let\@evenfoot\@oddfoot + } + \newcommand*{\ps@myheadings}{% + \let\@mkboth\@gobbletwo + \renewcommand*{\@evenhead}{}% + \renewcommand*{\@oddhead}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \hb@xt@ \@tempdima{{\headfont\hfil\strut\rightmark\hfil}}% + \if@hsl \vskip 1.5\p@ \hrule \fi}}\hss}% + \renewcommand*{\@evenfoot}{}% + \renewcommand*{\@oddfoot}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\hfil\pagemark\hfil}}}}\hss}% + \renewcommand*{\subsectionmark}[1]{}% + \renewcommand*{\sectionmark}[1]{}% + } +\fi +\newcommand*{\titlepagestyle}{plain} +\newcommand*{\partpagestyle}{plain} +\newcommand*{\indexpagestyle}{plain} +\pagestyle{plain} +\pagenumbering{arabic} +\if@twoside + \flushbottom +\else + \raggedbottom +\fi +\if@twocolumn + \twocolumn + \sloppy + \flushbottom +\else + \onecolumn +\fi +%%% From File: scrkfloa.dtx +\newcommand\marginline[1]{% + \marginpar[\raggedleft{#1}]{\raggedright #1}% +} +\newlength{\abovecaptionskip} +\newlength{\belowcaptionskip} +\setlength{\abovecaptionskip}{10\p@} +\setlength{\belowcaptionskip}{0\p@} +\newcommand*{\captionformat}{:\ } \newif\if@captionabove\@captionabovefalse \newcommand{\scr@caption}{} \AtBeginDocument{\let\scr@caption\caption} @@ -1116,14 +1689,14 @@ size% \@ifnextchar [%] {\@@captionbeside[{#1}]{#2}} {\c@pti@nb@sid@[{#1}]{#2}}% - } +} \newcommand*{\@@captionbeside}{} \long\def\@@captionbeside[#1]#2[#3]{% \def\scap@pos{#3}% \@ifnextchar [%] {\@@@captionbeside[{#1}]{#2}} {\c@pti@nb@sid@[{#1}]{#2}}% - } +} \newcommand*{\@@@captionbeside}{} \long\def\@@@captionbeside[#1]#2[#3]{% \def\scap@width{#3}% @@ -1134,38 +1707,36 @@ size% \setlength{\@tempdima}{-.5\@tempdima}% \edef\scap@move{\the\@tempdima}% \c@pti@nb@sid@[{#1}]{#2}}% - } +} \newcommand*{\@@@@captionbeside}{} \long\def\@@@@captionbeside[#1]#2[#3]{% \def\scap@move{#3}% \@ifstar {\scap@alttrue\c@pti@nb@sid@[{#1}]{#2}} {\scap@altfalse\c@pti@nb@sid@[{#1}]{#2}}% - } +} \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}}% \begin{lrbox}{\c@pti@nb@sid@b@x}% - } +} \newenvironment*{captionbeside}{% \@dblarg\@captionbeside% - }{% +}{% \end{lrbox}% \settowidth{\@tempdima}{\usebox\c@pti@nb@sid@b@x}% \setlength{\@tempdimb}{\scap@width}% \addtolength{\@tempdimb}{-\@tempdima}% \addtolength{\@tempdimb}{-\columnsep}% \ifdim \@tempdimb<2em - \ClassWarning{% - scrartcl% - }{% + \ClassWarning{\KOMAClassName}{% caption beside will be very, very small.\MessageBreak In most cases this will result in overfull and underfull\MessageBreak \string\hbox\space messages% - }% - \fi% + }% + \fi \onelinecaptionsfalse \setcapwidth[r]{\@tempdimb}% \let\@tempa\scap@pos @@ -1184,69 +1755,87 @@ size% }% \fi \hspace*{\@tempdimc}% - \if l\@tempa% + \if l\@tempa \rlap{% \parbox[\scap@valign]{\@tempdimb}{\scap@caption \global\let\scap@currentlabel\@currentlabel}% - \nobreak\hskip\columnsep% + \nobreak\hskip\columnsep \parbox[\scap@valign]{\wd\c@pti@nb@sid@b@x}{\usebox\c@pti@nb@sid@b@x}% - }% + }% \else \rlap{% \parbox[\scap@valign]{\wd\c@pti@nb@sid@b@x}{\usebox\c@pti@nb@sid@b@x}% - \nobreak\hskip\columnsep% + \nobreak\hskip\columnsep \parbox[\scap@valign]{\@tempdimb}{\scap@caption \global\let\scap@currentlabel\@currentlabel}% - }% + }% \fi \par - \aftergroup\let\aftergroup\@currentlabel\aftergroup\scap@currentlabel - } + \aftergroup\let\aftergroup\@currentlabel + \aftergroup\scap@currentlabel +} +\newcommand*\capfont{\normalfont\normalcolor} +\newcommand*\caplabelfont{\normalfont\normalcolor} +\newcommand*{\scr@fnt@caption}{\capfont} +\newcommand*{\scr@fnt@captionlabel}{\caplabelfont} \newif\ifdofullc@p \dofullc@ptrue \newif\if@capbreak\@capbreakfalse \newcommand*{\setcapindent}{\@ifstar{\@@setcapindent}{\@setcapindent}} -\newcommand*{\@setcapindent}[1]{ +\newcommand*{\@setcapindent}[1]{% \setlength{\@tempdima}{#1}% - \ifdim\@tempdima>\hsize\addtolength{\@tempdima}{-\hsize}\@capbreaktrue - \else\@capbreakfalse\fi - \edef\cap@indent{\the\@tempdima} + \ifdim\@tempdima>\hsize + \addtolength{\@tempdima}{-\hsize}\@capbreaktrue + \else + \@capbreakfalse + \fi + \edef\cap@indent{\the\@tempdima}% \dofullc@pfalse } -\newcommand*{\@@setcapindent}[1]{ +\newcommand*{\@@setcapindent}[1]{% \setlength{\@tempdima}{#1}% - \edef\cap@indent{\the\@tempdima} + \edef\cap@indent{\the\@tempdima}% \dofullc@pfalse\@capbreaktrue } \AfterPackage{caption2}{% \renewcommand*{\setcapindent}{% - \ClassWarning{% - scrartcl% - }{% + \ClassWarning{\KOMAClassName}{% You're using package caption2.\MessageBreak Because of this you should also use \string\captionstyle\space and\MessageBreak set length \string\captionindent\space instead if using\MessageBreak \string\setcapindent - } + }% \captionstyle{indent}% - \@ifstar{\setlength{\captionindent}}{\setlength{\captionindent}}}} + \@ifstar{\setlength{\captionindent}}{\setlength{\captionindent}}% + }% +} \newcommand*{\setcaphanging}{\dofullc@ptrue\@capbreakfalse} \AfterPackage{caption2}{% \renewcommand*{\setcaphanging}{% - \ClassWarning{% - scrartcl% - }{% + \ClassWarning{\KOMAClassName}{% You're using package caption2.\MessageBreak - Because of this you should also use \string\captionstyle\MessageBreak + Because of this you should also use + \string\captionstyle\MessageBreak instead of \string\setcaphang - } - \captionstyle{hang}}} + } + \captionstyle{hang}% + }% +} \newcommand{\@makecaption}[2]{% - \if@captionabove\vskip\belowcaptionskip\else\vskip\abovecaptionskip\fi + \if@captionabove + \vskip\belowcaptionskip + \else + \vskip\abovecaptionskip + \fi \@@makecaption\@firstofone{#1}{#2}% - \if@captionabove\vskip\abovecaptionskip\else\vskip\belowcaptionskip\fi} + \if@captionabove + \vskip\abovecaptionskip + \else + \vskip\belowcaptionskip + \fi +} \newcommand*{\cap@width}{\hsize} \newcommand*{\cap@left}{\hfill} \newcommand*{\cap@right}{\hfill} @@ -1254,19 +1843,19 @@ size% \begingroup% \setlength{\@tempdima}{#2}% \edef\@tempa{\endgroup\def\noexpand\cap@width{\the\@tempdima}}% - \@tempa% + \@tempa \begingroup - \expandafter\def\expandafter\@tempa\expandafter{#1}% + \edef\@tempa{#1}% \def\@tempb{c}\ifx\@tempa\@tempb - \endgroup% + \endgroup \def\cap@margin{\let\cap@left=\hfill\let\cap@right=\hfill}% \else \def\@tempb{l}\ifx\@tempa\@tempb - \endgroup% + \endgroup \def\cap@margin{\let\cap@left=\relax\let\cap@right\hfill}% \else \def\@tempb{r}\ifx\@tempa\@tempb - \endgroup% + \endgroup \def\cap@margin{\let\cap@left=\hfill\let\cap@right=\relax}% \else \def\@tempb{i}\ifx\@tempa\@tempb @@ -1296,48 +1885,46 @@ size% }% \else \ifx \@tempa\@empty\else - \ClassError{% - scrartcl% - }{% + \ClassError{\KOMAClassName}{% unknown optional position argument% - }{% + }{% You've used `#1' as position argument at \string\setcaptionwidth,\MessageBreak but only ONE of `c', `l', `r', `i`, `o` ist allowed.\MessageBreak Argument will be ignored, if you'll continue.% - }% - \fi% - \endgroup% - \fi\fi\fi\fi\fi% - } + }% + \fi + \endgroup + \fi\fi\fi\fi\fi +} \AfterPackage{caption2}{% \renewcommand*{\setcapwidth}[2][]{% - \ClassWarning{% - scrbook% - }{% + \ClassWarning{\KOMAClassName}{% 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 - } - \setcaptionwidth{#2}}}% + }% + \setcaptionwidth{#2}% + }% +}% \newcommand*{\cap@margin}{} \let\cap@margin=\relax% \newcommand*{\setcapmargin}{\@ifstar{\@setcapmargin}{\@@setcapmargin}} \newcommand*{\@setcapmargin}[2][\@tempdimb]{% \def\cap@margin{% - \onelinecaptionsfalse% - \begingroup% + \onelinecaptionsfalse + \begingroup \setlength{\@tempdima}{\hsize}% \setlength{\@tempdimb}{#2}% \addtolength{\@tempdima}{-\@tempdimb}% \setlength{\@tempdimc}{#1}% \addtolength{\@tempdima}{-\@tempdimc}% - \edef\@tempa{\endgroup% + \edef\@tempa{\endgroup \def\noexpand\cap@width{\the\@tempdima}% - \noexpand\if@twoside% + \noexpand\if@twoside \noexpand\ifthispageodd{% \def\noexpand\cap@left{\noexpand\hspace*{\the\@tempdimc}}% \def\noexpand\cap@right{\noexpand\hspace*{\the\@tempdimb}}% @@ -1345,99 +1932,116 @@ size% \def\noexpand\cap@right{\noexpand\hspace*{\the\@tempdimc}}% \def\noexpand\cap@left{\noexpand\hspace*{\the\@tempdimb}}% }% - \noexpand\else% + \noexpand\else \def\noexpand\cap@left{\noexpand\hspace*{\the\@tempdimc}}% \def\noexpand\cap@right{\noexpand\hspace*{\the\@tempdimb}}% - \noexpand\fi} - \@tempa}% - } + \noexpand\fi + }% + \@tempa + }% +} \newcommand*{\@@setcapmargin}[2][\@tempdimb]{% \def\cap@margin{% - \onelinecaptionsfalse% - \begingroup% + \onelinecaptionsfalse + \begingroup \setlength{\@tempdima}{\hsize}% \setlength{\@tempdimb}{#2}% \addtolength{\@tempdima}{-\@tempdimb}% \setlength{\@tempdimc}{#1}% \addtolength{\@tempdima}{-\@tempdimc}% - \edef\@tempa{\endgroup% + \edef\@tempa{\endgroup \def\noexpand\cap@width{\the\@tempdima}% \def\noexpand\cap@left{\noexpand\hspace*{\the\@tempdimc}}% - \def\noexpand\cap@right{\noexpand\hspace*{\the\@tempdimb}}}% - \@tempa}% - } + \def\noexpand\cap@right{\noexpand\hspace*{\the\@tempdimb}}% + }% + \@tempa + }% +} \AfterPackage{caption2}{% \renewcommand*{\@setcapmargin}[2][\@tempdimb]{% \setlength{\@tempdimb}{#2}% \setlength{\@tempdima}{#1}% \ifdim\@tempdima\@tempdimb\else - \ClassWarning{% - scrbook% - }{% + \ClassWarning{\KOMAClassName}{% Can set only centered caption!\MessageBreak You're using package caption2.\MessageBreak Because of this you should also use \string\setcaptionmargin\MessageBreak instead of \string\setcapmargin - } + }% \fi \addtolength{\@tempdimb}{\@tempdimb}% - \setcaptionmargin{.5\@tempdimb}} + \setcaptionmargin{.5\@tempdimb}}% \let\@@setcapmargin=\@setcapmargin - } +} \newcommand{\@@makecaption}[3]{% - \cap@margin% - \ifonelinecaptions% + \cap@margin + \ifonelinecaptions \@tempcnta=\value{mpfootnote}\@tempcntb=\value{footnote}% \let\scr@tmp@footnotetext=\@footnotetext \let\@footnotetext=\@gobble \sbox\@tempboxa{% - {\capfont#1{{\caplabelfont#2\captionformat}}% + {\capfont\strut\ignorespaces + #1{{\caplabelfont#2\captionformat}}% #3}% - }% + }% \let\@footnotetext=\scr@tmp@footnotetext \let\scr@tmp@footnotetext=\undefined - \setcounter{footnote}{\@tempcntb}\setcounter{mpfootnote}{\@tempcnta}% + \setcounter{footnote}{\@tempcntb}% + \setcounter{mpfootnote}{\@tempcnta}% \else \sbox\@tempboxa{\hspace*{2\cap@width}}% \fi \begingroup% - \setlength{\@tempdima}{\wd\@tempboxa}% \setlength{\@tempdima}{\cap@width}% - \ifdim \wd\@tempboxa >\@tempdima% - \strut\cap@left% - \vtop{\hsize=\cap@width% - \ifdofullc@p - {\capfont\@hangfrom{#1{{\caplabelfont#2\captionformat}}}{#3\par}} - \else% - \ifdim\cap@indent<\z@% - {\capfont#1{{\caplabelfont #2\captionformat\par}}\noindent% - \hspace*{-\cap@indent}#3\par} + \ifdim \wd\@tempboxa >\@tempdima + \hb@xt@\hsize{% + \setbox\@tempboxa\vbox{\hsize=\cap@width + \ifdofullc@p + {\capfont\@hangfrom{\strut\ignorespaces + #1{{\caplabelfont#2\captionformat}}}% + {#3\par}}% \else% - \if@capbreak - {\capfont#1{{\caplabelfont #2\captionformat\par}}\noindent% - \@hangfrom{\hspace*{\cap@indent}}{#3\par}} - \else - {\capfont\@hangfrom{\hspace*{\cap@indent}}% - {\hspace{-\cap@indent}#1% - {{\caplabelfont#2\captionformat}}#3\par}} + \ifdim\cap@indent<\z@ + {\capfont\strut\ignorespaces + #1{{\caplabelfont #2\captionformat\par}}% + \noindent\hspace*{-\cap@indent}#3\par}% + \else% + \if@capbreak + {\capfont\strut\ignorespaces + #1{{\caplabelfont #2\captionformat\par}}% + \noindent\@hangfrom{\hspace*{\cap@indent}}{#3\par}}% + \else + {\capfont\@hangfrom{\strut\hspace*{\cap@indent}}% + {\hspace{-\cap@indent}\ignorespaces#1% + {{\caplabelfont#2\captionformat}}#3\par}}% + \fi \fi \fi - \fi}% - \cap@right\strut% + }% + \setlength{\@tempdima}{\ht\@tempboxa}% + \addtolength{\@tempdima}{\dp\@tempboxa}% + \addtolength{\@tempdima}{-\ht\strutbox}% + \ht\@tempboxa\ht\strutbox + \dp\@tempboxa\@tempdima + \strut\cap@left + \box\@tempboxa + \cap@right\strut + }% \else \global \@minipagefalse \sbox\@tempboxa{% - {\capfont#1{{\caplabelfont#2\captionformat}}% + {\capfont\strut\ignorespaces + #1{{\caplabelfont#2\captionformat}}% #3}% }% - \hb@xt@\hsize{\cap@left\box\@tempboxa\cap@right}% - \fi% - \endgroup} + \hb@xt@\hsize{\strut\cap@left\box\@tempboxa\cap@right\strut}% + \fi + \endgroup +} \AfterPackage{longtable}{% - \@ifpackageloaded{caption2}{\@komalongtablefalse% - \ClassWarning{% - scrartcl}{% + \@ifpackageloaded{caption2}{\@komalongtablefalse + \ClassWarning{\KOMAClassName}{% you've loaded package caption2 before package\MessageBreak longtable!\MessageBreak Because of this package caption2 isn't able to @@ -1445,10 +2049,11 @@ size% \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 caption2 after + I think, you should load package caption after package\MessageBreak - longtable% - }}{} + longtable and use the new interface% + }% + }{}% \if@komalongtable \renewcommand{\LT@makecaption}[3]{% \noalign{% @@ -1473,7 +2078,7 @@ size% }% }% \newcommand*{\scr@LT@array}{}% - \let\scr@LT@array=\LT@array% + \let\scr@LT@array=\LT@array \renewcommand*{\LT@array}{% \let\scr@caption=\LT@caption \def\captionabove{\noalign{\global\@captionabovetrue}% @@ -1485,272 +2090,207 @@ size% \else \let\LT@caption=\captionbelow \fi - \scr@LT@array} - \ClassInfo{% - scrartcl}{% - longtable captions redefined} + \scr@LT@array + }% + \ClassInfo{\KOMAClassName}{% + longtable captions redefined% + }% \fi - } +} \newcommand*{\fs@komaabove}{% \let\@fs@capt\floatc@komascript \let\@fs@pre\@empty - \def\@fs@mid{\vskip\abovecaptionskip} + \def\@fs@mid{\vskip\abovecaptionskip}% \let\@fs@post\@empty \let\@fs@iftopcapt\iftrue} \newcommand*{\fs@komabelow}{% \let\@fs@capt\floatc@komascript \let\@fs@pre\@empty - \def\@fs@mid{\vskip\abovecaptionskip} + \def\@fs@mid{\vskip\abovecaptionskip}% \let\@fs@post\@empty \let\@fs@iftopcapt\iffalse} \newcommand{\floatc@komascript}{\@@makecaption\@firstofone} -\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm} -\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf} -\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt} -\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf} -\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit} -\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl} -\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc} -\DeclareOldFontCommand{\sfb}{\normalfont\sffamily\bfseries}{\@nomath\sfb} -\DeclareRobustCommand*{\cal}{\@fontswitch\relax\mathcal} -\DeclareRobustCommand*{\mit}{\@fontswitch\relax\mathnormal} -\newcommand*\descfont{\sffamily\bfseries} -\newcommand*\sectfont{\normalcolor\sffamily\bfseries} -\newcommand*\pnumfont{\normalfont\normalcolor} -\newcommand*\headfont{\normalfont\normalcolor\slshape} -\newcommand*\capfont{\normalfont\normalcolor} -\newcommand*\caplabelfont{\normalfont\normalcolor} -\newcommand*\titlefont{\sectfont} -\newcommand*{\setkomafont}[2]{% - \@ifundefined{scr@fnt@#1}{% - \@ifundefined{scr@fnt@instead@#1}{% - \ClassError{% - scrartcl% - }{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} - }{% - \ClassError{% - scrartcl% - }{font of element `#1' can't be set}{% - You've told me to redefine the font selection of the element,% - \MessageBreak% - but the element does not use a special font - selection. The\MessageBreak - The font of `#1' may be changed with element `\csname - scr@fnt@instead@#1\endcsname'} - }% - }{% - \expandafter\expandafter\expandafter\renewcommand% - \csname scr@fnt@#1\endcsname{#2}% - \@ifundefined{scr@fnt@wrn@#1}{}{% - \ClassWarning{% - scrartcl% - }{\csname scr@fnt@wrn@#1\endcsname{#1}} - } - } +\setcounter{topnumber}{2} +\renewcommand*\topfraction{.7} +\setcounter{bottomnumber}{1} +\renewcommand*\bottomfraction{.3} +\setcounter{totalnumber}{3} +\renewcommand*\textfraction{.2} +\renewcommand*\floatpagefraction{.5} +\setcounter{dbltopnumber}{2} +\renewcommand*\dbltopfraction{.7} +\renewcommand*\dblfloatpagefraction{.5} +\newcommand*\figurename{Figure} +\newcommand*\tablename{Table} +\newcounter{figure} +\renewcommand*\thefigure{% + \@arabic\c@figure } -\newcommand{\l@addto@macro}[2]{% - \begingroup% - \toks@\expandafter{#1#2}% - \edef\@tempa{\endgroup\def\noexpand#1{\the\toks@}}% - \@tempa} -\newcommand*{\addtokomafont}[2]{% - \@ifundefined{scr@fnt@#1}{% - \@ifundefined{scr@fnt@instead@#1}{% - \ClassError{% - scrartcl% - }{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} - }{% - \ClassError{% - scrartcl% - }{font of element `#1' can't be extended}{% - You've told me to extend the font selection of the element,% - \MessageBreak% - but the element does not use a special font - selection. The\MessageBreak - The font of `#1' may be changed with element `\csname - scr@fnt@instead@#1\endcsname'} - }% - }{% - \expandafter\expandafter\expandafter\l@addto@macro% - \csname scr@fnt@#1\endcsname{#2}% - \@ifundefined{scr@fnt@wrn@#1}{}{% - \ClassWarning{% - scrartcl% - }{\csname scr@fnt@wrn@#1\endcsname{#1}} - } - } +\newcommand*{\figureformat}{% + \figurename~\thefigure% } -\newcommand*{\usekomafont}[1]{% - \@ifundefined{scr@fnt@#1}{% - \@ifundefined{scr@fnt@instead@#1}{% - \ClassError{% - scrartcl% - }{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} - }{% - \ClassWarning{% - scrartcl% - }{% - You've told me to use the font selection of the element,% - \MessageBreak% - but the element does not use a special font - selection. The\MessageBreak - The font of `#1' may be selected with element `\csname - scr@fnt@instead@#1\endcsname'.\MessageBreak - I fix this using font of `\csname - scr@fnt@instead@#1\endcsname'}% +\newcommand*{\fps@figure}{tbp} +\newcommand*{\ftype@figure}{1} +\newcommand*{\ext@figure}{lof} +\newcommand*{\fnum@figure}{\figureformat} +\newenvironment{figure}{% + \let\caption\captionbelow\@float{figure}% +}{% + \end@float +} +\newenvironment{figure*}{% + \let\caption\captionbelow\@dblfloat{figure}% +}{% + \end@dblfloat +} +\newcounter{table} +\renewcommand*\thetable{% + \@arabic\c@table +} +\newcommand*{\tableformat}{% + \tablename~\thetable% +} +\newcommand*{\fps@table}{tbp} +\newcommand*{\ftype@table}{2} +\newcommand*{\ext@table}{lot} +\newcommand*{\fnum@table}{\tableformat} +\newenvironment{table}{% + \if@tablecaptionabove\let\caption\captionabove + \else\let\caption\captionbelow\fi + \@float{table}% +}{% + \end@float +} +\newenvironment{table*}{% + \if@tablecaptionabove\let\caption\captionabove + \else\let\caption\captionbelow\fi + \@dblfloat{table}% +}{% + \end@dblfloat +} +%%% From File: scrkftn.dtx +\renewcommand*\footnoterule{% + \kern-3\p@ + \ifx\@textbottom\relax\else\vskip \z@ \@plus.05fil\fi + \hrule\@width.4\columnwidth + \kern 2.6\p@} +\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 }% - \@nameuse{scr@fnt@instead@#1}% - }{% - \@nameuse{scr@fnt@#1}% - }% - } -\newcommand*{\scr@fnt@descriptionlabel}{\descfont} -\newcommand*{\scr@fnt@title}{\titlefont} -\newcommand*{\scr@fnt@sectioning}{\sectfont} -\newcommand*{\scr@fnt@part}{\size@part} -\newcommand*{\scr@fnt@partnumber}{\size@partnumber} -\newcommand*{\scr@fnt@section}{\size@section} -\newcommand*{\scr@fnt@subsection}{\size@subsection} -\newcommand*{\scr@fnt@subsubsection}{\size@subsubsection} -\newcommand*{\scr@fnt@paragraph}{\size@paragraph} -\newcommand*{\scr@fnt@subparagraph}{\size@subparagraph} -\newcommand*{\scr@fnt@instead@minisec}{sectioning} -\newcommand*{\scr@fnt@pagenumber}{\pnumfont} -\let\scr@fnt@pagination=\scr@fnt@pagenumber -\newcommand*{\scr@fnt@pagehead}{\headfont} -\newcommand*{\scr@fnt@wrn@pagehead}[1]{% - font selection of elements `pagehead' and `pagefoot'\MessageBreak - changed, because you wanted to change font selection\MessageBreak - of element `#1'% + \fi + \par + \parindent\@tempdimc\noindent + \ftn@font\hbox to \z@{\hss\@@makefnmark}##1% + }% + \def\@@makefnmark{\hbox{\ftnm@font{#4}}}% } -\let\scr@fnt@pagefoot=\scr@fnt@pagehead -\let\scr@fnt@wrn@pagefoot=\scr@fnt@wrn@pagehead -\newcommand*{\scr@fnt@caption}{\capfont} -\newcommand*{\scr@fnt@captionlabel}{\caplabelfont} +\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} +\newcommand*{\thefootnotemark}{\@thefnmark} +\deffootnote[1em]{1.5em}{1em}{\textsuperscript{\thefootnotemark}} +\deffootnotemark{\textsuperscript{\thefootnotemark}} +%%% From File: scrkliof.dtx +\renewcommand*{\numberline}[1]{% + \hb@xt@\@tempdima{#1\autodot\hfil}} \newcommand*\@pnumwidth{1.55em} \newcommand*\@tocrmarg {2.55em} \newcommand*\@dotsep{4.5} -\setcounter{tocdepth}{3} -\newcommand*\toc@heading{\section*{\contentsname - \@mkboth{\contentsname}{\contentsname}}} -\newcommand*{\scr@dottedtocline}{}% -\newcommand*{\scr@numberline}{}% -\newcommand*{\last@l@number}{}% +\newcommand*{\scr@dottedtocline}{} +\newcommand*{\scr@numberline}{} +\newcommand*{\last@l@number}{} \newcommand*{\@l@number}{} \newcommand*{\set@l@number}[1]{% \settowidth{\@tempdima}{#1\enskip}% - \ifdim\@tempdima >\@l@number\relax% + \ifdim\@tempdima >\@l@number \xdef\@l@number{\the\@tempdima}% \fi% - \ifdim\@tempdima >\last@l@number \else% + \ifdim\@tempdima >\last@l@number \else \setlength{\@tempdima}{\last@l@number}% \fi% } \newcommand*{\before@starttoc}[1]{ - \let\scr@dottedtocline=\@dottedtocline% + \let\scr@dottedtocline=\@dottedtocline \renewcommand*{\@dottedtocline}[3]{% \scr@dottedtocline{##1}{\z@}{\last@l@number}}% - \let\scr@numberline=\numberline% + \let\scr@numberline=\numberline \renewcommand*{\numberline}[1]{% \set@l@number{##1}\scr@numberline{##1}}% \gdef\@l@number{\z@}% \@ifundefined{#1@l@number}{% \def\last@l@number{2em}% - }{% - \expandafter\let\expandafter\last@l@number - \expandafter=\csname#1@l@number\endcsname% - }% - } + }{% + \expandafter\ifx\csname #1@l@number\endcsname\@empty + \let\last@l@number\z@ + \else + \expandafter\let\expandafter\last@l@number + \expandafter=\csname#1@l@number\endcsname + \fi + }% +} \newcommand*{\after@starttoc}[1]{% \protected@write\@auxout{}{% \string\gdef\expandafter\string\csname#1@l@number\endcsname{% \@l@number}}% } +\newcommand*\contentsname{Contents} +\setcounter{tocdepth}{3} +\newcommand*\toc@heading{% + \section*{\contentsname}% + \@mkboth{\contentsname}{\contentsname}% +} \newcommand*{\toc@l@number}{} \newcommand*{\tableofcontents}{% \begingroup \toc@heading% - \@parskipfalse\@parskip@indent% - \if@tocleft\before@starttoc{toc}\fi% + \setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative + \if@tocleft\before@starttoc{toc}\fi \@starttoc{toc}% - \if@tocleft\after@starttoc{toc}\fi% + \if@tocleft\after@starttoc{toc}\fi \endgroup } -\newcommand*\l@part[2]{% - \ifnum \c@tocdepth >-2\relax - \addpenalty{\@secpenalty}% - \addvspace{2.25em \@plus\p@}% - \setlength\@tempdima{2em}% - \if@tocleft - \ifx\toc@l@number\@empty\else - \setlength\@tempdima{0\toc@l@number}% - \fi - \fi - \begingroup - \parindent \z@ \rightskip \@pnumwidth - \parfillskip -\@pnumwidth - \leavevmode\sectfont\large - \advance\leftskip\@tempdima - \hskip -\leftskip - #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par - \if@compatibility - \global\@nobreaktrue - \everypar{\global\@nobreakfalse\everypar{}}% - \else - \penalty\@highpenalty - \fi - \endgroup - \fi} -\newcommand*\l@section[2]{% - \ifnum \c@tocdepth >\z@ - \addpenalty{\@secpenalty}% - \addvspace{1.0em \@plus\p@}% - \setlength\@tempdima{1.5em}% - \if@tocleft - \ifx\toc@l@number\@empty\else - \setlength\@tempdima{0\toc@l@number}% - \fi - \fi - \begingroup - \parindent \z@ \rightskip \@pnumwidth - \parfillskip -\@pnumwidth - \leavevmode \sectfont - \advance\leftskip\@tempdima - \hskip -\leftskip - #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par - \endgroup - \fi} -\newcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}} -\newcommand*\l@subsubsection{\@dottedtocline{3}{3.8em}{3.2em}} -\newcommand*\l@paragraph{\@dottedtocline{4}{7.0em}{4.1em}} -\newcommand*\l@subparagraph{\@dottedtocline{5}{10em}{5em}} \newcommand*{\float@listhead}[1]{% \section*{#1}% \@mkboth{#1}{#1}% \if@dynlist% \newcommand*{\scr@starttoc}{}% - \let\scr@starttoc=\@starttoc% + \let\scr@starttoc=\@starttoc \renewcommand*{\@starttoc}[1]{% - \before@starttoc{##1}\scr@starttoc{##1}\after@starttoc{##1}}% - \fi% + \before@starttoc{##1}\scr@starttoc{##1}\after@starttoc{##1}% + }% + \fi } +\newcommand*\listfigurename{List of Figures} +\newcommand*\listtablename{List of Tables} \newcommand*\lof@heading{\float@listhead{\listfigurename}} \newcommand*\listoffigures{% \begingroup% \lof@heading% - \@parskipfalse\@parskip@indent% + \setparsizes{0}{0}{\z@\@plus 1fil}\par@updaterelative \@starttoc{lof}% \endgroup } @@ -1758,293 +2298,210 @@ size% \newcommand*\lot@heading{\float@listhead{\listtablename}} \newcommand*\listoftables{% \begingroup - \lot@heading% - \@parskipfalse\@parskip@indent% + \lot@heading + \setparsizes{0}{0}{\z@\@plus 1fil}\par@updaterelative \@starttoc{lot}% \endgroup } \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} + \section*{\refname}% + \@mkboth{\refname}{\refname}% } \newdimen\bibindent \bibindent=1.5em \newenvironment{thebibliography}[1]{% - \bib@heading% + \bib@heading \ifx\bibpreamble\relax\else\ifx\bibpreamble\@empty\else - \noindent\bibpreamble\par\nobreak + \noindent\bibpreamble\par\nobreak \fi\fi - \list{\@biblabel{\@arabic\c@enumiv}}% - {\settowidth\labelwidth{\@biblabel{#1}}% + \list{% + \@biblabel{\@arabic\c@enumiv}% + }{% + \settowidth\labelwidth{\@biblabel{#1}}% \leftmargin\labelwidth \advance\leftmargin\labelsep \@openbib@code \usecounter{enumiv}% \let\p@enumiv\@empty - \renewcommand*\theenumiv{\@arabic\c@enumiv}}% - \sloppy\clubpenalty4000\widowpenalty4000% - \sfcode`\.=\@m} -{\def\@noitemerr - {\@latex@warning{Empty `thebibliography' environment}}% - \endlist} + \renewcommand*\theenumiv{\@arabic\c@enumiv}% + }% + \sloppy\clubpenalty4000 \widowpenalty4000 + \sfcode`\.=\@m +}{% + \def\@noitemerr{% + \@latex@warning{Empty `thebibliography' environment}% + }% + \endlist +} \newcommand*\newblock{\hskip .11em\@plus.33em\@minus.07em} \let\@openbib@code\@empty -\newcommand*{\index@preamble}{\relax} -\newcommand{\setindexpreamble}[1]{\renewcommand*{\index@preamble}{#1}} +%%% 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[\section*{\indexname}]% \@mkboth{\indexname}{\indexname}% } -\newenvironment{theindex} - {\if@twocolumn +\newenvironment{theindex}{% + \if@twocolumn \@restonecolfalse - \else + \else \@restonecoltrue - \fi - \columnseprule \z@ - \columnsep 35\p@ - \idx@heading% - \index@preamble\par\nobreak - \thispagestyle{\indexpagestyle}\parindent\z@ - \setlength{\parskip}{\z@ \@plus .3\p@} - \setlength{\parfillskip}{\z@ \@plus 1fil} - \let\item\@idxitem} - {\if@restonecol\onecolumn\else\clearpage\fi} -\newcommand*\@idxitem {\par\hangindent 40\p@} -\newcommand*\subitem {\@idxitem \hspace*{20\p@}} + \fi + \columnseprule \z@ + \columnsep 35\p@ + \idx@heading% + \index@preamble\par\nobreak + \thispagestyle{\indexpagestyle}\parindent\z@ + \setlength{\parskip}{\z@ \@plus .3\p@}% + \setlength{\parfillskip}{\z@ \@plus 1fil}% + \let\item\@idxitem +}{% + \if@restonecol\onecolumn\else\clearpage\fi +} +\newcommand*\@idxitem{\par\hangindent 40\p@} +\newcommand*\subitem{\@idxitem \hspace*{20\p@}} \newcommand*\subsubitem{\@idxitem \hspace*{30\p@}} -\newcommand*\indexspace{\par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax} -\renewcommand*\footnoterule{% - \kern-3\p@ - \ifx\@textbottom\relax\else\vskip \z@ \@plus.0005fil\fi - \hrule\@width.4\columnwidth - \kern 2.6\p@} -\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*\indexspace{% + \par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax } -\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} -\newcommand*{\thefootnotemark}{\@thefnmark} -\deffootnote[1em]{1.5em}{1em} - {\textsuperscript{\thefootnotemark}} -\deffootnotemark{\textsuperscript{\thefootnotemark}} -\DeclareRobustCommand*\textsubscript[1]{% - \@textsubscript{\selectfont#1}} -\newcommand{\@textsubscript}[1]{% - {\m@th\ensuremath{_{\mbox{\fontsize\sf@size\z@#1}}}}} -\newcommand*\contentsname{Contents} -\newcommand*\listfigurename{List of Figures} -\newcommand*\listtablename{List of Tables} -\newcommand*\refname{References} \newcommand*\indexname{Index} -\newcommand*\figurename{Figure} -\newcommand*\tablename{Table} -\newcommand*\partname{Part} -\newcommand*\appendixname{Appendix} -\newcommand*\abstractname{Abstract} -\newcommand*\today{\ifcase\month\or - January\or February\or March\or April\or May\or June\or - July\or August\or September\or October\or November\or December\fi - \space\number\day, \number\year} -\newcommand*{\providecaptionname}[3]{% - \@ifundefined{captions#1}{% - \@ifundefined{cap@info@#1@done}{% - \ClassInfo{% - scrlttr2% - }{% - 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% - \def\@tempb{#1}% - \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{% - scrlttr2% - }{% - `\string#2' at language `#1' already - defined\MessageBreak - --> skipped% - }% - \fi - \@tempa +%%% From File: scrklist.dtx +\if@twocolumn + \setlength{\leftmargini}{2em} +\else + \setlength{\leftmargini}{2.5em} +\fi +\setlength{\leftmarginii}{2.2em} +\setlength{\leftmarginiii}{1.87em} +\setlength{\leftmarginiv}{1.7em} +\if@twocolumn + \setlength{\leftmarginv}{.5em} + \setlength{\leftmarginvi}{.5em} +\else + \setlength{\leftmarginv}{1em} + \setlength{\leftmarginvi}{1em} +\fi +\setlength{\leftmargin}{\leftmargini} +\setlength{\labelsep}{.5em} +\setlength{\labelwidth}{\leftmargini} +\addtolength{\labelwidth}{-\labelsep} +\@beginparpenalty=-\@lowpenalty +\@endparpenalty =-\@lowpenalty +\@itempenalty =-\@lowpenalty +\setlength\arraycolsep{5\p@} +\setlength\tabcolsep{6\p@} +\setlength\arrayrulewidth{.4\p@} +\setlength\doublerulesep{2\p@} +\setlength\tabbingsep{\labelsep} +\renewcommand*\theenumi{\@arabic\c@enumi} +\renewcommand*\theenumii{\@alph\c@enumii} +\renewcommand*\theenumiii{\@roman\c@enumiii} +\renewcommand*\theenumiv{\@Alph\c@enumiv} +\newcommand*\labelenumi{\theenumi.} +\newcommand*\labelenumii{\theenumii)} +\newcommand*\labelenumiii{\theenumiii.} +\newcommand*\labelenumiv{\theenumiv.} +\renewcommand*\p@enumii{\theenumi} +\renewcommand*\p@enumiii{\p@enumii(\theenumii)} +\renewcommand*\p@enumiv{\p@enumiii\theenumiii} +\newcommand*\labelitemi{\textbullet} +\newcommand*\labelitemii{\normalfont\bfseries\textendash} +\newcommand*\labelitemiii{\textasteriskcentered} +\newcommand*\labelitemiv{\textperiodcentered} +\newenvironment{description}{% + \list{}{\labelwidth\z@ \itemindent-\leftmargin + \let\makelabel\descriptionlabel}% +}{% + \endlist +} +\newcommand*{\descriptionlabel}[1]{% + \hspace{\labelsep}\descfont #1% +} +\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{verse}{% + \let\\=\@centercr + \list{}{\itemsep=\z@ + \itemindent=-1.5em + \listparindent=\itemindent + \rightmargin=\leftmargin + \advance\leftmargin by1.5em }% + \item\relax +}{% + \endlist } -\newcommand*{\newcaptionname}[3]{% - \@ifundefined{captions#1}{% - \ClassInfo{% - scrlttr2% - }{% - No captions found for `#1' --> defining% - }% - \@namedef{captions#1}{}% - }{}% - \begingroup% - \csname captions#1\endcsname% - \ifx #2\undefined\else% - \ClassError{% - scrlttr2% - }{% - `\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 - \def\@tempb{#1}% - \ifx\@tempb\languagename - \def\@tempa{\endgroup\csname captions#1\endcsname}% - \else - \let\@tempa\endgroup - \fi - \@tempa +\newenvironment{quotation}{% + \list{}{\listparindent 1em% + \itemindent \listparindent + \rightmargin \leftmargin + \parsep \z@ \@plus\p@ + }% + \item\relax +}{% + \endlist } -\newcommand*{\renewcaptionname}[3]{% - \@ifundefined{captions#1}{% - \ClassError{% - scrlttr2% - }{% - 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{% - scrlttr2% - }{% - `\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 - \def\@tempb{#1}% - \ifx\@tempb\languagename - \def\@tempa{\endgroup\csname captions#1\endcsname}% +\newenvironment{quote}{% + \list{}{\rightmargin\leftmargin}% + \item\relax +}{% + \endlist +} +\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 - \let\@tempa\endgroup + \def\@tempa{\rightmargin}% + \setlength{\rightmargin}{#2}% + \setlength{\leftmargin}{#1}% \fi - \@tempa -} -\newif\if@altsecnumformat\@altsecnumformatfalse -\newif\if@autodot\@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% - \fi% - \@@maybeautodot} -\let\scr@sect\@sect -\renewcommand*{\@sect}[1]{\stepcounter{#1}% - \expandafter\@maybeautodot\csname the#1\endcsname% - \addtocounter{#1}{-1}\scr@sect{#1}} -\AtEndDocument{% - \if@autodot\if@filesw\immediate\write\@mainaux{% - \string\global\string\@altsecnumformattrue} - \fi\fi} -\newcommand*\autodot{\if@altsecnumformat.\fi} -\newcommand*\sectionmarkformat {\thesection\autodot\enskip} -\newcommand*\subsectionmarkformat {\thesubsection\autodot\enskip} -\newcommand*{\partformat}{\partname~\thepart\autodot} -\newcommand*{\figureformat}{\figurename~\thefigure% - } -\newcommand*{\tableformat}{\tablename~\thetable% + \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% } -\newcommand*{\captionformat}{:\ } -\newcommand*{\othersectionlevelsformat}[1]{% - \csname the#1\endcsname\autodot\enskip} -\renewcommand*{\@seccntformat}{\protect\othersectionlevelsformat} -\pagestyle{plain} -\pagenumbering{arabic} % Arabic page numbers -\if@twoside -\else - \raggedbottom -\fi -\if@twocolumn - \twocolumn - \sloppy - \flushbottom -\else - \onecolumn -\fi +\newcommand*\descfont{\sffamily\bfseries} +\newcommand*{\scr@fnt@descriptionlabel}{\descfont} +%%% From File: scrlogo.dtx \@ifundefined{KOMAScript}{% \DeclareRobustCommand{\KOMAScript}{\textsf{K\kern.05em O\kern.05em% M\kern.05em A\kern.1em-\kern.1em Script}}}{} diff --git a/Master/texmf-dist/tex/latex/koma-script/scrbook.cls b/Master/texmf-dist/tex/latex/koma-script/scrbook.cls index 2385bafecbd..359f62a9ecf 100644 --- a/Master/texmf-dist/tex/latex/koma-script/scrbook.cls +++ b/Master/texmf-dist/tex/latex/koma-script/scrbook.cls @@ -4,274 +4,372 @@ %% %% The original source files were: %% -%% scrclass.dtx (with options: `class,scrbook') -%% scrlogo.dtx +%% scrkvers.dtx (with options: `class,book') +%% scrkbase.dtx (with options: `load') +%% scrkmisc.dtx (with options: `class,book,option') +%% scrklang.dtx (with options: `class,book,option') +%% scrkfont.dtx (with options: `class,book,option') +%% scrktare.dtx (with options: `class,book,option') +%% scrkpar.dtx (with options: `class,book,option') +%% scrktitl.dtx (with options: `class,book,option') +%% scrksect.dtx (with options: `class,book,option') +%% scrkpage.dtx (with options: `class,book,option') +%% scrkfloa.dtx (with options: `class,book,option') +%% scrkftn.dtx (with options: `class,book,option') +%% scrkliof.dtx (with options: `class,book,option') +%% scrkbib.dtx (with options: `class,book,option') +%% scrkidx.dtx (with options: `class,book,option') +%% scrklist.dtx (with options: `class,book,option') +%% scrkmisc.dtx (with options: `class,book,execoption') +%% scrkfont.dtx (with options: `class,book,body') +%% scrklang.dtx (with options: `class,book,body') +%% scrktare.dtx (with options: `class,book,body') +%% scrkpar.dtx (with options: `class,book,body') +%% scrktitl.dtx (with options: `class,book,body') +%% scrksect.dtx (with options: `class,book,body') +%% scrkmisc.dtx (with options: `class,book,body') +%% scrkpage.dtx (with options: `class,book,body') +%% scrkfloa.dtx (with options: `class,book,body') +%% scrkftn.dtx (with options: `class,book,body') +%% scrkliof.dtx (with options: `class,book,body') +%% scrkbib.dtx (with options: `class,book,body') +%% scrkidx.dtx (with options: `class,book,body') +%% scrklist.dtx (with options: `class,book,body') +%% scrlogo.dtx (with options: `logo') %% -%% Copyright (C) 1994-2004 Markus Kohm and Frank Neukam. +%% Copyright (c) 1994-2006 +%% Markus Kohm and any individual authors listed elsewhere in this file. %% -%% All rights reserved. For further copyright information see the file -%% LEGAL.TXT or LEGALDE.TXT. +%% This file was generated from file(s) of the KOMA-Script bundle. +%% --------------------------------------------------------------- %% -%% This file is part of the LaTeX2e 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'. %% -%% The KOMA-Script bundle bases on the Script-family created by -%% Frank Neukam 1993 and the standard documents classes created -%% by the LaTeX3-Team 1994-1996. -%% ------------------------------------------------------------------------ +%% 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. %% -%% This system is distributed in the hope that it will be useful, -%% but WITHOUT ANY WARRANTY; without even the implied warranty of -%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +%% 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. %% -%% IMPORTANT NOTICE: +%% English and German manuals are part of KOMA-Script bundle. +%% ---------------------------------------------------------- %% -%% For error reports in case of UNCHANGED versions see documentation. +%% See `README'. %% -%% Please do not request updates from us directly. Distribution is -%% done through Mail-Servers, Mailboxes and TeX organizations. +%% 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. %% -%% You are not allowed to change this file. -%% -%% You are allowed to distribute this file under the condition that -%% it is distributed together with all files mentioned in readme.txt -%% and liesmich.txt. See LEGAL.TXT or LEGALDE.TXT for further -%% information. -%% -%% If you receive only some of these files from someone, complain! -%% -%% You are NOT ALLOWED to distribute this file alone. -%% -\NeedsTeXFormat{LaTeX2e}[1995/12/01] -\ProvidesClass{% +%%% 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{2006/07/30 v2.95b KOMA-Script}% +\endgroup +\newcommand*{\KOMAClassName}{% scrbook% - } - [2004/09/16 v2.9t LaTeX2e KOMA - document class] -\newcommand\ifnumber[3]{ - \begingroup\@tempswafalse\let\scr@next\test@number - \expandafter\scr@next#1\scr@next - \if@tempswa\endgroup#2\else\endgroup#3\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\relax - \ifnum \@tempcnta<58\relax - \@tempswatrue - \else\@tempswafalse\fi - \else\@tempswafalse\fi - \if@tempswa\else\let\scr@next\gobble@till@next\fi\fi - \scr@next} -\newcommand*{\gobble@till@next}{} -\def\gobble@till@next#1\scr@next{} +} +\newcommand*{\ClassName}{% + book% +} +\ProvidesClass{\KOMAClassName}[% + \KOMAScriptVersion\space document class (\ClassName)% +] +%%% From File: scrkbase.dtx +\RequirePackage{scrkbase}[\KOMAScriptVersion] +%%% 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[\PackageInfo]{final}{draft=false} +\DeclareOption{leqno}{\input{leqno.clo}} +\DeclareOption{fleqn}{\input{fleqn.clo}} +%%% From File: scrklang.dtx +%%% From File: scrkfont.dtx +\newcommand*\@ptsize{% + 1% +} +\newcommand*{\@pt@scan}{% + \expandafter\@pt@@scan\CurrentOption pt\@pt@@scan% +} +\newcommand*{\@pt@@scan}{} +\def\@pt@@scan #1pt#2\@pt@@scan{% + \ifstr{#2}{pt}{% + \ifnumber{#1}{% + \KOMA@UseObsolete{option}{\PackageInfo}{#1#2}{fontsize=#1#2}% + }{\@headlines}% + }{\@headlines}% +} +\KOMA@key{fontsize}{% + \begingroup + \setlength{\@tempdima}{#1}% + \addtolength{\@tempdima}{-10\p@}% + \edef\@tempa{\endgroup\noexpand\renewcommand*\noexpand\@ptsize{% + \strip@pt\@tempdima}}% + \@tempa +} +\@onlypreamble\KV@KOMA@fontsize +%%% From File: scrktare.dtx \newcommand*{\@BCOR}{\expandafter\@@BCOR\CurrentOption BCORBCOR\@@BCOR} \newcommand*{\@@BCOR}{} -\def\@@BCOR #1BCOR#2BCOR#3\@@BCOR{ - \edef\@tempa{#1}\ifx\@tempa\@empty - \edef\@tempa{#3}\def\@tempb{BCOR}\ifx\@tempa\@tempb - \PassOptionsToPackage{BCOR#2}{typearea} - \else\OptionNotUsed\fi - \else\OptionNotUsed\fi} +\def\@@BCOR #1BCOR#2BCOR#3\@@BCOR{% + \ifstr{#1}{}{% + \ifstr{#3}{BCOR}{% + \PassOptionsToPackage{BCOR#2}{typearea}% + }{\scr@pti@nerr@r}% + }{\scr@pti@nerr@r}% +} \newcommand*{\@DIV}{\expandafter\@@DIV\CurrentOption DIVDIV\@@DIV} \newcommand*{\@@DIV}{} -\def\@@DIV #1DIV#2DIV#3\@@DIV{ - \edef\@tempa{#1}\ifx\@tempa\@empty - \edef\@tempa{#3}\def\@tempb{DIV}\ifx\@tempa\@tempb - \PassOptionsToPackage{DIV#2}{typearea} - \else\OptionNotUsed\fi - \else\@BCOR\fi} +\def\@@DIV #1DIV#2DIV#3\@@DIV{% + \edef\@tempa{#1}\ifx\@tempa\@empty + \edef\@tempa{#3}\def\@tempb{DIV}\ifx\@tempa\@tempb + \PassOptionsToPackage{DIV#2}{typearea}% + \else\scr@pti@nerr@r\fi + \else\@BCOR\fi +} \newcommand{\@headlines}{% - \expandafter\@@headlines\CurrentOption headlines\@@headlines} + \expandafter\@@headlines\CurrentOption headlines\@@headlines% +} \newcommand*{\@@headlines}{} \def\@@headlines #1headlines#2\@@headlines{ \edef\@tempa{#2}\edef\@tempb{headlines}\ifx\@tempa\@tempb \PassOptionsToPackage{#1headlines}{typearea} - \else\@DIV\fi} -\newcommand*{\@pt@scan}{\expandafter\@pt@@scan\CurrentOption pt\@pt@@scan} -\newcommand*{\@pt@@scan}{} -\def\@pt@@scan #1pt#2\@pt@@scan{ - \edef\@tempa{pt}\edef\@tempb{#2}\ifx\@tempa\@tempb - \ifnumber{#1} - {\@tempcnta=#1\relax - \advance \@tempcnta by-10\relax - \edef\@ptsize{\the\@tempcnta}} - {\@headlines} - \else\@headlines\fi} -\newcommand*{\x@paper}{\expandafter\x@@paper\CurrentOption paper\x@@paper} + \else\@DIV\fi +} +\newcommand*{\x@paper}{% + \expandafter\x@@paper\CurrentOption paper\x@@paper% +} \newcommand*{\x@@paper}{} -\def\x@@paper #1#2paper#3\x@@paper{ - \edef\@tempa{paper}\edef\@tempb{#3}\ifx\@tempa\@tempb - \ifx a#1\PassOptionsToPackage{a#2paper}{typearea} - \else\ifx b#1\PassOptionsToPackage{b#2paper}{typearea} - \else\ifx c#1\PassOptionsToPackage{c#2paper}{typearea} - \else\ifx d#1\PassOptionsToPackage{d#2paper}{typearea} - \else\OptionNotUsed\fi\fi\fi\fi - \else\@pt@scan\fi} -\newif\ifonelinecaptions\onelinecaptionstrue -\DeclareOption{onelinecaption}{\onelinecaptionstrue% - \PassOptionsToPackage{oneline}{caption2}} -\DeclareOption{noonelinecaption}{\onelinecaptionsfalse% - \PassOptionsToPackage{nooneline}{caption2}} -\newif\if@tablecaptionabove\@tablecaptionabovefalse -\DeclareOption{tablecaptionabove}{\@tablecaptionabovetrue} -\DeclareOption{tablecaptionbelow}{\@tablecaptionabovefalse} -\newif\if@komalongtable\@komalongtabletrue -\DeclareOption{origlongtable}{\@komalongtablefalse} -\newif\if@hsl -\DeclareOption{headsepline}{% - \PassOptionsToPackage{headinclude}{typearea}\@hsltrue} -\DeclareOption{headnosepline}{% - \@hslfalse% - } -\newif\if@fsl -\DeclareOption{footsepline}{\PassOptionsToPackage{footinclude}{typearea} - \@fsltrue} -\DeclareOption{footnosepline}{% - \@fslfalse% - } -\newif\if@mincl -\DeclareOption{mpinclude}{% - \@mincltrue - } -\DeclareOption{mpexclude}{ - \@minclfalse - } -\newcommand*\@ptsize{% - } -\DeclareOption{10pt}{% - \renewcommand*\@ptsize{0} - } -\DeclareOption{11pt}{% - \renewcommand*\@ptsize{1} - } -\DeclareOption{12pt}{% - \renewcommand*\@ptsize{2} - } -\DeclareOption{oneside}{% - \@twosidefalse \@mparswitchfalse - } -\DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue} -\DeclareOption{draft}{\setlength{\overfullrule}{5pt}} -\DeclareOption{final}{% - \setlength{\overfullrule}{\z@} - } +\def\x@@paper #1#2paper#3\x@@paper{% + \ifstr{#3}{paper}{% + \ifnumber{#2}{% + \ifstr{#1}{a}{% + \PassOptionsToPackage{#1#2#3}{typearea}% + }{% + \ifstr{#1}{b}{% + \PassOptionsToPackage{#1#2#3}{typearea}% + }{% + \ifstr{#1}{c}{% + \PassOptionsToPackage{#1#2#3}{typearea}% + }{% + \ifstr{#1}{d}{% + \PassOptionsToPackage{#1#2#3}{typearea}% + }{\scr@pti@nerr@r}% + }% + }% + }% + }{\scr@pti@nerr@r}% + }{% + \@pt@scan + }% +} +\newcommand*{\scr@pti@nerr@r}{ + \OptionNotUsed +} +\KOMA@key{twoside}[true]{% + \KOMA@set@ifkey{twoside}{@twoside}{#1}% + \if@twoside\@mparswitchtrue\else\@mparswitchfalse\fi% + \csname recalctypearea\endcsname +} +\KOMA@DeclareObsoleteOption[\PackageInfo]{oneside}{twoside=false} +%%% From File: scrkpar.dtx +\newcommand*{\setparsizes}[3]{% + \edef\f@parindent{\the\parindent}% + \edef\f@parskip{\the\parskip}% + \edef\f@parfillskip{\the\parfillskip}% + \def\scr@parindent{#1}% + \def\scr@parskip{#2}% + \def\scr@parfillskip{#3}% + \def\par@update{\let\par@update\default@par@update\par@updaterelative}% +} +\newcommand*{\f@parindent}{\the\parindent} +\newcommand*{\f@parskip}{\the\parskip} +\newcommand*{\f@parfillskip}{\the\parfillskip} +\AtEndOfClass{% + \edef\f@parindent{\the\parindent}% + \edef\f@parskip{\the\parskip}% + \edef\f@parfillskip{\the\parfillskip}% +} +\newcommand*{\par@update}{} +\let\par@update\relax +\newcommand*{\default@par@update}{} +\let\default@par@update\relax +\newcommand*{\scr@parindent}{1em} +\newcommand*{\scr@parskip}{\z@} +\newcommand*{\scr@parfillskip}{\z@ \@plus 1fil} +\KOMA@key{parskip}[true]{% + \begingroup + \KOMA@set@ncmdkey{parskip}{@tempa}{% + {false}{0},{off}{0},{no}{0},% + {full-}{1},% + {half-}{2},% + {full}{3},{true}{3},{on}{3},{yes}{3},% + {half}{4},% + {full+}{5},% + {half+}{6},% + {full*}{7},% + {half*}{8},% + {relative}{9},% + {absolute}{10},% + }{#1}% + \ifcase\number\@tempa% 0 + \endgroup + \setparsizes{1em}{\z@ \@plus \p@}{\z@ \@plus 1fil}% + \or% 1 + \endgroup + \setparsizes{\z@}{\baselineskip \@plus .1\baselineskip}{% + \z@ \@plus 1fil}% + \or% 2 + \endgroup + \setparsizes{\z@}{.5\baselineskip \@plus .5\baselineskip}{% + \z@ \@plus 1fil}% + \or%3 + \endgroup + \setparsizes{\z@}{\baselineskip \@plus .1\baselineskip}{% + 1em \@plus 1fil}% + \or%4 + \endgroup + \setparsizes{\z@}{.5\baselineskip \@plus .5\baselineskip}{% + 1em \@plus 1fil}% + \or%5 + \endgroup + \setparsizes{\z@}{\baselineskip \@plus .1\baselineskip}{% + .3333\linewidth\@plus 1fil}% + \or%6 + \endgroup + \setparsizes{\z@}{.5\baselineskip \@plus .5\baselineskip}{% + .3333\linewidth \@plus 1fil}% + \or%7 + \endgroup + \setparsizes{\z@}{\baselineskip \@plus .1\baselineskip}{% + .25\linewidth \@plus 1fil}% + \or%8 + \endgroup + \setparsizes{\z@}{.5\baselineskip \@plus .5\baselineskip}{% + .25\linewidth \@plus 1fil}% + \or%9 + \endgroup + \ifx\par@updaterelative\undefined + \expandafter\AtEndOfClass + \else + \expandafter\@firstofone + \fi + {% + \ifx\par@update\default@par@update + \let\par@update\par@updaterelative + \fi + \let\default@par@update=\par@updaterelative + }% + \or%10 + \endgroup + \ifx\par@updaterelative\undefined + \expandafter\AtEndOfClass + \else + \expandafter\@firstofone + \fi + {% + \ifx\par@update\default@par@update + \let\par@update\relax + \fi + \let\default@par@update=\relax + }% + \else% sonst + \endgroup + \fi +} +\KOMA@DeclareObsoleteOption[\PackageInfo]{parskip-}{parskip=full-} +\KOMA@DeclareObsoleteOption[\PackageInfo]{parskip+}{parskip=full+} +\KOMA@DeclareObsoleteOption[\PackageInfo]{parskip*}{parskip=full*} +\KOMA@DeclareObsoleteOption[\PackageInfo]{halfparskip}{parskip=half} +\KOMA@DeclareObsoleteOption[\PackageInfo]{halfparskip-}{parskip=half-} +\KOMA@DeclareObsoleteOption[\PackageInfo]{halfparskip+}{parskip=half+} +\KOMA@DeclareObsoleteOption[\PackageInfo]{halfparskip*}{parskip=half*} +\KOMA@DeclareObsoleteOption[\PackageInfo]{parindent}{parskip=false} +%%% From File: scrktitl.dtx \newif\if@titlepage \@titlepagetrue \DeclareOption{titlepage}{\@titlepagetrue} \DeclareOption{notitlepage}{\@titlepagefalse} +%%% From File: scrksect.dtx \newif\if@openright \DeclareOption{openright}{\@openrighttrue} \DeclareOption{openany}{\@openrightfalse} -\DeclareOption{onecolumn}{\@twocolumnfalse} -\DeclareOption{twocolumn}{\@twocolumntrue} -\DeclareOption{leqno}{\input{leqno.clo}} -\DeclareOption{fleqn}{\input{fleqn.clo}} -\DeclareOption{openbib}{% - \AtEndOfPackage{% - \renewcommand*\@openbib@code{% - \advance\leftmargin\bibindent - \itemindent -\bibindent - \listparindent \itemindent - \parsep \z@ - }% - \renewcommand*\newblock{\par}}% -} -\newif\if@parskip -\newcommand*{\scr@parskip}{\setlength{\parskip}{\z@}} -\newcommand*{\scr@parfillskip}{\setlength{\parfillskip}{\z@}} -\DeclareOption{parskip}{\@parskiptrue% - \renewcommand*{\scr@parskip}{% - \setlength{\parskip}{\baselineskip}% - \addtolength{\parskip}{\z@ \@plus .1\baselineskip}} - \renewcommand*{\scr@parfillskip}{% - \setlength{\parfillskip}{1em \@plus 1fil}}} -\DeclareOption{parskip-}{\@parskiptrue% - \renewcommand*{\scr@parskip}{% - \setlength{\parskip}{\baselineskip}% - \addtolength{\parskip}{\z@ \@plus .1\baselineskip}} - \renewcommand*{\scr@parfillskip}{% - \setlength{\parfillskip}{\z@ \@plus 1fil}}} -\DeclareOption{parskip+}{\@parskiptrue% - \renewcommand*{\scr@parskip}{% - \setlength{\parskip}{\baselineskip}% - \addtolength{\parskip}{\z@ \@plus .1\baselineskip}} - \renewcommand*{\scr@parfillskip}{% - \setlength{\parfillskip}{.3333\linewidth} - \addtolength{\parfillskip}{\z@ \@plus 1fil}}} -\DeclareOption{parskip*}{\@parskiptrue% - \renewcommand*{\scr@parskip}{% - \setlength{\parskip}{\baselineskip}% - \addtolength{\parskip}{\z@ \@plus .1\baselineskip}} - \renewcommand*{\scr@parfillskip}{% - \setlength{\parfillskip}{.25\linewidth} - \addtolength{\parfillskip}{\z@ \@plus 1fil}}} -\DeclareOption{halfparskip}{\@parskiptrue% - \renewcommand*{\scr@parskip}{% - \setlength{\parskip}{.5\baselineskip}% - \addtolength{\parskip}{\z@ \@plus .5\baselineskip}} - \renewcommand*{\scr@parfillskip}{% - \setlength{\parfillskip}{1em \@plus 1fil}}} -\DeclareOption{halfparskip-}{\@parskiptrue% - \renewcommand*{\scr@parskip}{% - \setlength{\parskip}{.5\baselineskip}% - \addtolength{\parskip}{\z@ \@plus .5\baselineskip}} - \renewcommand*{\scr@parfillskip}{% - \setlength{\parfillskip}{\z@ \@plus 1fil}}} -\DeclareOption{halfparskip+}{\@parskiptrue% - \renewcommand*{\scr@parskip}{% - \setlength{\parskip}{.5\baselineskip}% - \addtolength{\parskip}{\z@ \@plus .5\baselineskip}} - \renewcommand*{\scr@parfillskip}{% - \setlength{\parfillskip}{.3333\linewidth} - \addtolength{\parfillskip}{\z@ \@plus 1fil}}} -\DeclareOption{halfparskip*}{\@parskiptrue% - \renewcommand*{\scr@parskip}{% - \setlength{\parskip}{.5\baselineskip}% - \addtolength{\parskip}{\z@ \@plus .5\baselineskip}} - \renewcommand*{\scr@parfillskip}{% - \setlength{\parfillskip}{.25\linewidth} - \addtolength{\parfillskip}{\z@ \@plus 1fil}}} -\DeclareOption{parindent}{\@parskipfalse} -\DeclareOption{pointednumbers} - {\AtEndOfClass{\@altsecnumformattrue - \global\let\@altsecnumformatfalse\@altsecnumformattrue}} -\DeclareOption{pointednumber} - {\AtEndOfClass{\@altsecnumformattrue - \global\let\@altsecnumformatfalse\@altsecnumformattrue} - \ClassError - {scrbook} - {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} - \ClassError - {scrbook} - {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\@bigheadings - {\AtEndOfClass{ - \renewcommand*{\chapterheadstartvskip}{\vspace*{2.3\baselineskip}} - \renewcommand*{\chapterheadendvskip}{\vspace{1.725\baselineskip - \@plus .115\baselineskip \@minus .192\baselineskip}} +\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}% + \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\@bigheadings{% + \AtEndOfClass{% + \renewcommand*{\chapterheadstartvskip}{% + \vspace*{2.3\baselineskip}% + }% + \renewcommand*{\chapterheadendvskip}{% + \vspace{1.725\baselineskip + \@plus .115\baselineskip \@minus .192\baselineskip}% + }% \let\size@part\Huge \let\size@partnumber\huge \let\size@chapter\huge @@ -279,23 +377,32 @@ \let\size@subsection\large \let\size@subsubsection\normalsize \let\size@paragraph\normalsize - \let\size@subparagraph\normalsize}} + \let\size@subparagraph\normalsize + }% +} \DeclareOption{bigheadings}{\@bigheadings} -\DeclareOption{bigheading}{\@bigheadings - \ClassError - {scrbook} - {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*{\chapterheadstartvskip}{\vspace*{2\baselineskip}} - \renewcommand*{\chapterheadendvskip}{\vspace{1.5\baselineskip - \@plus .1\baselineskip \@minus .167\baselineskip}} +\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*{\chapterheadstartvskip}{% + \vspace*{2\baselineskip}% + }% + \renewcommand*{\chapterheadendvskip}{% + \vspace{1.5\baselineskip + \@plus .1\baselineskip \@minus .167\baselineskip}% + }% \let\size@part\huge \let\size@partnumber\huge \let\size@chapter\LARGE @@ -303,23 +410,32 @@ \let\size@subsection\large \let\size@subsubsection\normalsize \let\size@paragraph\normalsize - \let\size@subparagraph\normalsize}} + \let\size@subparagraph\normalsize + }% +} \DeclareOption{normalheadings}{\@normalheadings} -\DeclareOption{normalheading}{\@normalheadings - \ClassError - {scrbook} - {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*{\chapterheadstartvskip}{\vspace*{1.8\baselineskip}} - \renewcommand*{\chapterheadendvskip}{\vspace{1.35\baselineskip - \@plus 0.09\baselineskip \@minus .15\baselineskip}} +\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*{\chapterheadstartvskip}{% + \vspace*{1.8\baselineskip}% + }% + \renewcommand*{\chapterheadendvskip}{% + \vspace{1.35\baselineskip + \@plus 0.09\baselineskip \@minus .15\baselineskip}% + }% \let\size@part\LARGE \let\size@partnumber\LARGE \let\size@chapter\Large @@ -327,145 +443,564 @@ \let\size@subsection\normalsize \let\size@subsubsection\normalsize \let\size@paragraph\normalsize - \let\size@subparagraph\normalsize}} + \let\size@subparagraph\normalsize + }% +} \DeclareOption{smallheadings}{\@smallheadings} -\DeclareOption{smallheading}{\@smallheadings - \ClassError - {scrbook} - {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.}} +\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% + }% +} \newif\if@chapterprefix \DeclareOption{chapterprefix}{\@chapterprefixtrue} \DeclareOption{nochapterprefix}{\@chapterprefixfalse} -\DeclareOption{appendixprefix}{\def\appendixmore{\@chapterprefixtrue}} -\DeclareOption{noappendixprefix}{\def\appendixmore{\@chapterprefixfalse}} +\DeclareOption{appendixprefix}{% + \def\appendixmore{\@chapterprefixtrue}% +} +\DeclareOption{noappendixprefix}{% + \def\appendixmore{\@chapterprefixfalse}% +} +%%% From File: scrkpage.dtx +\newif\if@hsl +\KOMA@key{headsepline}[true]{% + \KOMA@set@ifkey{headsepline}{@hsl}{#1}% + \@ifpackageloaded{typearea}{% + \KOMAoptions{headinclude=#1}% + }{% + \PassOptionsToPackage{typearea}{headinclude=#1}% + }% +} +\KOMA@DeclareObsoleteOption[\PackageInfo]{headnosepline}{headsepline=false} +\newif\if@fsl +\KOMA@key{footsepline}[true]{% + \KOMA@set@ifkey{footsepline}{@fsl}{#1}% + \@ifpackageloaded{typearea}{% + \KOMAoptions{footinclude=#1}% + }{% + \PassOptionsToPackage{typearea}{footinclude=#1}% + }% +} +\KOMA@DeclareObsoleteOption[\PackageInfo]{footnosepline}{footsepline=false} +\KOMA@key{cleardoublepage}{% + \begingroup% + \def\@tempc{% + \endgroup% + \KOMA@unkown@keyval{cleardoublepage}{#1}{% + 'current' or any defined pagestyle e.g. 'empty','plain'}% + }% + \ifstr{#1}{current}{% + \let\cleardoublepage\cleardoublestandardpage + }{% + \ifnotundefined{ps@#1}{% + \def\@tempc{\endgroup% + \def\cleardoublepage{\cleardoublepageusingstyle{#1}}% + }% + }{}% + }% + \@tempc +} \newcommand*{\cleardoublestandardpage}{} \let\cleardoublestandardpage\cleardoublepage -\newcommand*{\cleardoubleemptypage}{\clearpage% - {\thispagestyle{empty}\cleardoublestandardpage}} -\newcommand*{\cleardoubleplainpage}{\clearpage% - {\thispagestyle{plain}\cleardoublestandardpage}} -\DeclareOption{cleardoubleempty}{% - \let\cleardoublepage\cleardoubleemptypage} -\DeclareOption{cleardoubleplain}{% - \let\cleardoublepage\cleardoubleplainpage} -\DeclareOption{cleardoublestandard}{% - \let\cleardoublepage\cleardoublestandardpage} +\newcommand*{\cleardoublepageusingstyle}[1]{\clearpage + {\thispagestyle{#1}\cleardoublestandardpage}} +\newcommand*{\cleardoubleemptypage}{\cleardoublepageusingstyle{empty}} +\newcommand*{\cleardoubleplainpage}{\cleardoublepageusingstyle{plain}} +\KOMA@DeclareObsoleteOption[\PackageInfo]{cleardoubleempty}{% + cleardoublepage=empty% +} +\KOMA@DeclareObsoleteOption[\PackageInfo]{cleardoubleplain}{% + cleardoublepage=plain% +} +\KOMA@DeclareObsoleteOption[\PackageInfo]{cleardoublestandard}{% + cleardoublepage=standard% +} +%%% 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}% +} +%%% 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% + \if@dynlist \newcommand*{\scr@starttoc}{}% - \let\scr@starttoc=\@starttoc% + \let\scr@starttoc=\@starttoc \renewcommand*{\@starttoc}[1]{% \before@starttoc{##1}\scr@starttoc{##1}\after@starttoc{##1}}% - \fi% - }} - } + \fi + }% + }% +} \DeclareOption{liststotocnumbered}{% \AtEndOfClass{% \renewcommand*{\float@listhead}[1]{% \chapter{#1} \@mkboth{\chaptermarkformat #1}{\chaptermarkformat #1}% - \if@dynlist% + \if@dynlist \newcommand*{\scr@starttoc}{}% - \let\scr@starttoc=\@starttoc% + \let\scr@starttoc=\@starttoc \renewcommand*{\@starttoc}[1]{% \before@starttoc{##1}\scr@starttoc{##1}\after@starttoc{##1}}% - \fi% - }} - } -\DeclareOption{bibtotoc} - {\AtEndOfClass{% - \renewcommand*\bib@heading{% - \addchap{\bibname} - \@mkboth{\bibname}{\bibname} - }}} -\DeclareOption{bibtotocnumbered} - {\AtEndOfClass{% - \renewcommand*\bib@heading{% - \chapter{\bibname} - \@mkboth{\chaptermarkformat \bibname}{\chaptermarkformat \bibname} - }}} -\DeclareOption{idxtotoc} - {\AtEndOfClass{% - \renewcommand*\idx@heading{% - \if@openright\cleardoublepage\else\clearpage\fi% - \twocolumn[\addchap{\indexname}] - \@mkboth{\indexname}{\indexname}% - }}} -\newif\if@tocleft -\DeclareOption{tocleft}{\@toclefttrue} -\DeclareOption{tocindent}{\@tocleftfalse} + \fi + }% + }% +} \newif\if@dynlist \DeclareOption{listsleft}{\@dynlisttrue} \DeclareOption{listsindent}{\@dynlistfalse} -\if@compatibility\else - \DeclareOption*{% - \x@paper - } -\fi +%%% From File: scrkbib.dtx +\DeclareOption{openbib}{% + \AtEndOfPackage{% + \renewcommand*\@openbib@code{% + \advance\leftmargin\bibindent + \itemindent -\bibindent + \listparindent \itemindent + \parsep \z@ + }% + \renewcommand*\newblock{\par}% + }% +} +\DeclareOption{bibtotoc}{% + \AtEndOfClass{% + \renewcommand*\bib@heading{% + \addchap{\bibname}% + \@mkboth{\bibname}{\bibname}% + }% + }% +} +\DeclareOption{bibtotocnumbered}{% + \AtEndOfClass{% + \renewcommand*\bib@heading{% + \chapter{\bibname}% + \@mkboth{\chaptermarkformat \bibname}{\chaptermarkformat \bibname}% + }% + }% +} +%%% From File: scrkidx.dtx +\DeclareOption{idxtotoc}{% + \AtEndOfClass{% + \renewcommand*\idx@heading{% + \if@openright\cleardoublepage\else\clearpage\fi + \twocolumn[\addchap{\indexname}]% + \@mkboth{\indexname}{\indexname}% + }% + }% +} +%%% From File: scrklist.dtx +%%% From File: scrkmisc.dtx +\DeclareKeyValOption[% + \let\scr@pti@nerr@r + \OptionNotUsed + \x@paper +]{KOMA} +\KOMAoptions{% + draft=false,headsepline=false,footsepline=false,parskip=false% + ,twoside% +} \ExecuteOptions{% - final,11pt,onecolumn% - ,headnosepline,footnosepline,bigheadings% - ,nochapterprefix,twoside,openright% + bigheadings% + ,nochapterprefix,openright% } \ProcessOptions\relax -\RequirePackage{scrlfile} -\newif\if@restonecol -\newif\if@mainmatter\@mainmattertrue +%%% From File: scrkfont.dtx \@tempcnta=10 -\advance\@tempcnta by\@ptsize\relax +\advance\@tempcnta by\@ptsize \xdef\@tempa{% -bk% -\the\@tempcnta.clo} + bk% + \the\@tempcnta.clo} \InputIfFileExists{\@tempa}{}{% - \xdef\@tempb{size\the\@tempcnta.clo} + \xdef\@tempb{size\the\@tempcnta.clo}% \InputIfFileExists{\@tempb}{% - \ClassWarning{scrbook}{File `\@tempa' not found!\MessageBreak - Used `\@tempb' instead}}{ - \ClassError - {scrbook} - {File `\@tempa' not found!\MessageBreak - This error is fatal!} - {To every fontsize you want to select by class option,\MessageBreak - you need a corresponding - bk-class-option-file or\MessageBreak at least a - size-class-option-file declaring all\MessageBreak - the macros based on fontsize.\MessageBreak - Ask a wizzard for more information or use another - fontsize.\MessageBreak - You cannot continue!} - \batchmode \csname @@end\endcsname \end + \ClassWarning{\KOMAClassName}{% + File `\@tempa' not found!\MessageBreak + Used `\@tempb' instead% + }% + }{% + \ClassError{\KOMAClassName}{% + File `\@tempa' not found!\MessageBreak + This error is fatal!% + }{% + To every fontsize you want to select by class + option,\MessageBreak + you need a corresponding + bk-class-option-file or\MessageBreak at least a + size-class-option-file declaring all\MessageBreak + the macros based on fontsize.\MessageBreak + Ask a wizzard for more information or use another + fontsize.\MessageBreak + You cannot continue!% + }% + \batchmode \csname @@end\endcsname \end + }% +} +\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm} +\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf} +\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt} +\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf} +\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit} +\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl} +\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc} +\DeclareOldFontCommand{\sfb}{\normalfont\sffamily\bfseries}{% + \@nomath\sfb} +\DeclareRobustCommand*{\cal}{\@fontswitch\relax\mathcal} +\DeclareRobustCommand*{\mit}{\@fontswitch\relax\mathnormal} +\newcommand*{\setkomafont}[2]{% + \@ifundefined{scr@fnt@#1}{% + \@ifundefined{scr@fnt@instead@#1}{% + \ClassError{\KOMAClassName}{% + 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% + }% + }{% + \ClassInfo{\KOMAClassName}{% + 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}{}{% + \ClassWarning{\KOMAClassName}{% + \csname scr@fnt@wrn@#1\endcsname{#1}% + }% + }% +} +\ifundefined{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*{\addtokomafont}[2]{% + \@ifundefined{scr@fnt@#1}{% + \@ifundefined{scr@fnt@instead@#1}{% + \ClassError{\KOMAClassName}{% + 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% + }% + }{% + \ClassInfo{\KOMAClassName}{% + 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}{}{% + \ClassWarning{\KOMAClassName}{% + \csname scr@fnt@wrn@#1\endcsname{#1}% + }% + }% +} +\newcommand*{\usekomafont}[1]{% + \@ifundefined{scr@fnt@#1}{% + \@ifundefined{scr@fnt@instead@#1}{% + \ClassError{\KOMAClassName}{% + 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% + }% + }{% + \ClassInfo{\KOMAClassName}{% + 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 + }% + }% + \@nameuse{scr@fnt@instead@#1}% + }{% + \@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: 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 } -\let\test@number =\undefined -\let\gobble@till@next =\undefined -\let\@BCOR =\undefined -\let\@@BCOR =\undefined -\let\@DIV =\undefined -\let\@@DIV =\undefined -\let\@headlines =\undefined -\let\@@headlines =\undefined -\let\x@paper =\undefined -\let\x@@paper =\undefined -\newcommand*{\scr@file@date@version}{} -\def\scr@file@date@version#1/#2/#3 #4 #5\@nil{#1/#2/#3 #4} -\RequirePackage{typearea}[\expandafter\expandafter\expandafter% - \scr@file@date@version\csname ver@% - scrbook% - .cls\endcsname\@nil] + \def\today{\ifcase\month\or + January\or February\or March\or April\or May\or June\or + July\or August\or September\or October\or November\or December\fi + \space\number\day, \number\year}% +%%% From File: scrktare.dtx +\let\@BCOR =\relax +\let\@@BCOR =\relax +\let\@DIV =\relax +\let\@@DIV =\relax +\let\@headlines =\relax +\let\@@headlines =\relax +\let\x@paper =\relax +\let\x@@paper =\relax +\let\scr@pti@nerr@r =\relax +\RequirePackage{typearea}[\KOMAScriptVersion] +%%% From File: scrkpar.dtx \setlength{\lineskip}{\p@} \setlength{\normallineskip}{\p@} \setlength{\columnsep}{10\p@} \setlength{\columnseprule}{\z@} +\newcommand*{\scr@selectfont}{}\let\scr@selectfont\selectfont +\BeforePackage{everysel}{% + \ifx\selectfont\scr@new@selectfont\else + \ClassWarningNoLine{\KOMAClassName}{discard change of \string\selectfont}% + \fi + \let\selectfont\scr@selectfont +} +\AfterPackage{everysel}{% + \g@addto@macro\selectfont{\par@update}% + \let\scr@new@selectfont\selectfont +} +\g@addto@macro\selectfont{\par@update} +\newcommand*{\scr@new@selectfont}{}\let\scr@new@selectfont\selectfont +\newcommand*{\par@updaterelative}{% + \begingroup + \edef\@tempa{\the\parindent}\ifx\@tempa\f@parindent + \aftergroup\parindent@update + \fi + \edef\@tempa{\the\parskip}\ifx\@tempa\f@parskip + \aftergroup\parskip@update + \fi + \edef\@tempa{\the\parfillskip}\ifx\@tempa\f@parfillskip + \aftergroup\parfillskip@update + \fi + \endgroup +} +\newcommand*{\parindent@update}{% + \scr@defaultunits\parindent\scr@parindent + \begingroup + \let\@tempb\endgroup + \edef\@tempa{\the\parindent}\ifx\@tempa\f@parindent\else + \def\@tempb{\endgroup\edef\f@parindent{\the\parindent}}% + \fi + \@tempb +} +\newcommand*{\parskip@update}{% + \scr@defaultunits\parskip\scr@parskip + \begingroup + \let\@tempb\endgroup + \edef\@tempa{\the\parskip}\ifx\@tempa\f@parskip\else + \def\@tempb{\endgroup\edef\f@parskip{\the\parskip}}% + \fi + \@tempb +} +\newcommand*{\parfillskip@update}{% + \scr@defaultunits\parfillskip\scr@parfillskip + \begingroup + \let\@tempb\endgroup + \edef\@tempa{\the\parfillskip}\ifx\@tempa\f@parfillskip\else + \def\@tempb{\endgroup\edef\f@parfillskip{\the\parfillskip}}% + \fi + \@tempb +} +\newcommand*{\scr@defaultunits}[2]{% + \begingroup + \edef\@tempa{#2}% + \expandafter\scr@@defaultunits\expandafter#1\@tempa plusplus\@nnil + \edef\@tempa{\noexpand\endgroup\noexpand\setlength{\noexpand#1}{\the#1}}% + \@tempa +} +\newcommand*{\scr@@defaultunits}{} +\def\scr@@defaultunits#1#2plus#3plus#4\@nnil{% + \ifx\relax#3\relax + \scr@@@defaultunits#1{}#2minusminus\@nnil + \else + \scr@@@defaultunits#1{#2}#3minusminus\@nnil + \fi +} +\newcommand*{\scr@@@defaultunits}{} +\def\scr@@@defaultunits#1#2#3minus#4minus#5\@nnil{% + \ifx\relax#2\relax + \@defaultunits\@tempskipa#3pt\relax\@nnil + \setlength{#1}{\@tempskipa}% + \else + \@defaultunits\@tempskipa\z@\@plus#3pt\relax\@nnil + \setlength{#1}{\@tempskipa}% + \@defaultunits\@tempskipa#2pt\relax\@nnil + \addtolength{#1}{\@tempskipa}% + \fi + \ifx\relax#4\relax\else + \@defaultunits\@tempskipa\z@\@minus #4pt\relax\@nnil + \addtolength{#1}{\@tempskipa}% + \fi +} \g@addto@macro{\@listi}{\@list@extra} \let\@listI=\@listi \g@addto@macro{\@listii}{\@list@extra} @@ -476,158 +1011,13 @@ bk% } \g@addto@macro{\footnotesize}{\protect\add@extra@listi{ftns}} \g@addto@macro{\small}{\protect\add@extra@listi{sml}} -\newcommand*{\@list@extra}{} -\newcommand*{% - \@parskip@indent}{% - \if@parskip - \setlength{\parindent}{\z@}% - \scr@parskip - \scr@parfillskip - \renewcommand*{\@list@extra}{% - \topsep\z@ \parsep\parskip \itemsep\z@}% - \else - \setlength{\parindent}{1em}% - \setlength{\parskip}{\z@ \@plus \p@}% - \setlength{\parfillskip}{\z@ \@plus 1fil}% - \renewcommand*{\@list@extra}{}% - \fi -}% -\@parskip@indent -\AtBeginDocument{% - \if@parskip\ifdim\parfillskip=\z@ \scr@parfillskip\fi\fi +\newcommand*{\@list@extra}{% + \ifdim\parskip>\z@\topsep\z@\parskip\parskip\itemsep\z@\fi } \@lowpenalty = 51 \@medpenalty =151 \@highpenalty =301 -\setcounter{topnumber}{2} -\renewcommand*\topfraction{.7} -\setcounter{bottomnumber}{1} -\renewcommand*\bottomfraction{.3} -\setcounter{totalnumber}{3} -\renewcommand*\textfraction{.2} -\renewcommand*\floatpagefraction{.5} -\setcounter{dbltopnumber}{2} -\renewcommand*\dbltopfraction{.7} -\renewcommand*\dblfloatpagefraction{.5} -\if@compatibility - \newcommand*\headincludeon{\@hincltrue} - \newcommand*\headincludeoff{\@hinclfalse} - \newcommand*\headseplineon{\@hsltrue \@hincltrue} - \newcommand*\headseplineoff{\@hslfalse \@hinclfalse} - \newcommand*\footincludeon{\@fincltrue} - \newcommand*\footincludeoff{\@finclfalse} - \newcommand*\footseplineon{\@fsltrue \@fincltrue} - \newcommand*\footseplineoff{\@fslfalse \@finclfalse} -\fi -\newcommand*{\set@tempdima@hw}{% - \setlength{\@tempdima}{\textwidth}% - \if@mincl - \addtolength{\@tempdima}{\marginparsep}% - \addtolength{\@tempdima}{\marginparwidth}% - \fi - } -\if@twoside - \renewcommand*{\ps@plain}{\let\@mkboth\@gobbletwo - \renewcommand*{\@evenhead}{}% - \renewcommand*{\@oddhead}{}% - \renewcommand*{\@evenfoot}{% - \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% - \if@fsl \hrule \vskip 3\p@ \fi - \hb@xt@ \@tempdima{{\pnumfont\thepage\hfil}}}}}% - \renewcommand*{\@oddfoot}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \if@fsl \hrule \vskip 3\p@ \fi - \hb@xt@ \@tempdima{{\pnumfont\hfil\thepage}}}}\hss}}% - \newcommand*{\ps@headings}{\let\@mkboth\markboth - \renewcommand*{\@evenhead}{% - \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% - \hb@xt@ \@tempdima{{\headfont\strut\leftmark\hfil}}% - \if@hsl \vskip 1.5\p@ \hrule \fi}}} - \renewcommand*{\@oddhead}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \hb@xt@ \@tempdima{{\headfont\hfil\strut\rightmark}}% - \if@hsl \vskip 1.5\p@ \hrule \fi}}\hss} - \renewcommand*{\@evenfoot}{% - \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% - \if@fsl \hrule \vskip 3\p@ \fi - \hb@xt@ \@tempdima{{\pnumfont\thepage\hfil}}}}}% - \renewcommand*{\@oddfoot}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \if@fsl \hrule \vskip 3\p@ \fi - \hb@xt@ \@tempdima{{\pnumfont\hfil\thepage}}}}\hss}% - \renewcommand*{\chaptermark}[1]{% - \markboth {\ifnum \c@secnumdepth >\m@ne - \if@mainmatter - \chaptermarkformat\fi - \fi - ##1}{}}% - \renewcommand*{\sectionmark}[1]{% - \markright {\ifnum \c@secnumdepth >\z@ - \sectionmarkformat\fi - ##1}}} - \newcommand*{\ps@myheadings}{\let\@mkboth\@gobbletwo - \renewcommand*{\@evenhead}{% - \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% - \hb@xt@ \@tempdima{{\headfont\strut\leftmark\hfil}}% - \if@hsl \vskip 1.5\p@ \hrule \fi}}} - \renewcommand*{\@oddhead}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \hb@xt@ \@tempdima{{\headfont\hfil\strut\rightmark}}% - \if@hsl \vskip 1.5\p@ \hrule \fi}}\hss} - \renewcommand*{\@evenfoot}{% - \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% - \if@fsl \hrule \vskip 3\p@ \fi - \hb@xt@ \@tempdima{{\pnumfont\thepage\hfil}}}}}% - \renewcommand*{\@oddfoot}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \if@fsl \hrule \vskip 3\p@ \fi - \hb@xt@ \@tempdima{{\pnumfont\hfil\thepage}}}}\hss}% - \renewcommand*{\chaptermark}[1]{} - \renewcommand*{\sectionmark}[1]{}} -\else - \renewcommand*{\ps@plain}{\let\@mkboth\@gobbletwo - \renewcommand*{\@evenhead}{}% - \renewcommand*{\@oddhead}{}% - \renewcommand*{\@evenfoot}{}% - \renewcommand*{\@oddfoot}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \if@fsl \hrule \vskip 3\p@ \fi - \hb@xt@ \@tempdima{{\pnumfont\hfil\thepage\hfil}}}}\hss}} - \newcommand*{\ps@headings}{\let\@mkboth\markboth - \renewcommand*{\@evenhead}{}% - \renewcommand*{\@oddhead}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \hb@xt@ \@tempdima{{\headfont\hfil\strut\rightmark\hfil}} - \if@hsl \vskip 1.5\p@ \hrule \fi}}\hss}% - \renewcommand*{\@evenfoot}{}% - \renewcommand*{\@oddfoot}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \if@fsl \hrule \vskip 3\p@ \fi - \hb@xt@ \@tempdima{{\pnumfont\hfil\thepage\hfil}}}\hss}}% - \renewcommand*{\sectionmark}[1]{} - \renewcommand*{\chaptermark}[1]{\markright {\ifnum \c@secnumdepth >\m@ne - \if@mainmatter - \chaptermarkformat\fi - \fi - ##1}}} - \newcommand*{\ps@myheadings}{\let\@mkboth\@gobbletwo - \renewcommand*{\@evenhead}{}% - \renewcommand*{\@oddhead}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \hb@xt@ \@tempdima{{\headfont\hfil\strut\rightmark\hfil}} - \if@hsl \vskip 1.5\p@ \hrule \fi}}\hss}% - \renewcommand*{\@evenfoot}{}% - \renewcommand*{\@oddfoot}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \if@fsl \hrule \vskip 3\p@ \fi - \hb@xt@ \@tempdima{{\pnumfont\hfil\thepage\hfil}}}}\hss}% - \renewcommand*{\chaptermark}[1]{}% - \renewcommand*{\sectionmark}[1]{}} -\fi -\newcommand*{\titlepagestyle}{plain} -\newcommand*{\partpagestyle}{plain} -\newcommand*{\chapterpagestyle}{plain} -\newcommand*{\indexpagestyle}{plain} +%%% From File: scrktitl.dtx \newcommand*{\@extratitle}{} \newcommand{\extratitle}[1]{\gdef\@extratitle{#1}} \newcommand*{\@titlehead}{} @@ -644,58 +1034,60 @@ bk% \newcommand{\dedication}[1]{\gdef\@dedication{#1}} \newcommand*{\next@tpage}{\clearpage\thispagestyle{empty}} \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 + \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\cleardoublepage - \thispagestyle{empty} - \fi - \ifx\@titlehead\@empty \else - \noindent\begin{minipage}[t]{\textwidth} + \thispagestyle{empty}% + \fi + \ifx\@titlehead\@empty \else + \noindent\begin{minipage}[t]{\textwidth}% \@titlehead \end{minipage}\par - \fi - \null\vfill - \begin{center} - \ifx\@subject\@empty \else - {\Large \@subject \par} + \fi + \null\vfill + \begin{center} + \ifx\@subject\@empty \else + {\subject@font \@subject \par}% + \vskip 3em + \fi + {\titlefont\huge \@title\par}% \vskip 3em - \fi - {\titlefont\huge \@title\par} - \vskip 3em - {\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 + {\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 \noindent\begin{minipage}[t]{\textwidth} - \@uppertitleback + \@uppertitleback \end{minipage}\par \vfill \noindent\begin{minipage}[b]{\textwidth} - \@lowertitleback + \@lowertitleback \end{minipage} - \fi - \ifx\@dedication\@empty \else + \fi + \ifx\@dedication\@empty \else \next@tpage\null\vfill - {\centering \Large \@dedication \par} + {\centering \Large \@dedication \par}% \vskip \z@ \@plus3fill \if@twoside \next@tpage\cleardoublepage \fi - \fi + \fi \end{titlepage} \setcounter{footnote}{0}% \global\let\thanks\relax @@ -721,159 +1113,275 @@ bk% \global\let\lowertitleback\relax \global\let\dedication\relax \global\let\date\relax - \global\let\and\relax} + \global\let\and\relax + } \else - \newcommand*\maketitle[1][1]{\par - \@tempcnta=#1\relax\ifnum\@tempcnta=1\else - \ClassWarning{scrbook} - {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\@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} + \newcommand*\maketitle[1][1]{\par + \@tempcnta=#1\relax\ifnum\@tempcnta=1\else + \ClassWarning{\KOMAClassName}{% + 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\@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 - \ifx\@titlehead\@empty \else - \noindent\begin{minipage}[t]{\textwidth} - \@titlehead - \end{minipage}\par - \fi - \null - \vskip 2em% - \begin{center}% + \clearpage + \let\footnote\thanks + \ifx\@extratitle\@empty \else + \noindent\@extratitle \next@tpage \if@twoside \null\next@tpage \fi + \fi + \ifx\@titlehead\@empty \else + \noindent\begin{minipage}[t]{\textwidth} + \@titlehead + \end{minipage}\par + \fi + \null + \vskip 2em% + \begin{center}% \ifx\@subject\@empty \else - {\Large \@subject \par} - \vskip 1.5em + {\subject@font \@subject \par} + \vskip 1.5em \fi {\titlefont\huge \@title \par}% \vskip 1.5em% {\Large \lineskip .5em% - \begin{tabular}[t]{c}% + \begin{tabular}[t]{c} \@author - \end{tabular}\par}% + \end{tabular}\par + }% \vskip 1em% {\Large \@date \par}% \vskip \z@ \@plus 1em {\Large \@publishers \par} \ifx\@dedication\@empty \else - \vskip 2em - {\Large \@dedication \par} + \vskip 2em + {\Large \@dedication \par} \fi \end{center}% \par - \vskip 2em} -\renewcommand*{\numberline}[1]{% - \hb@xt@\@tempdima{#1\autodot\hfil}} + \vskip 2em +} +\newcommand*\titlefont{\sectfont} +\newcommand*{\subject@font}{\normalfont\normalcolor\bfseries\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 +} +%%% From File: scrksect.dtx +\newif\if@mainmatter\@mainmattertrue +\newcommand*\frontmatter{% + \if@twoside\cleardoublepage\else\clearpage\fi + \@mainmatterfalse\pagenumbering{roman}% +} +\newcommand*\mainmatter{% + \if@twoside\cleardoublepage\else\clearpage\fi + \@mainmattertrue\pagenumbering{arabic}% +} +\newcommand*\backmatter{% + \if@openright\cleardoublepage\else\clearpage\fi\@mainmatterfalse +} +\newcommand*\appendix{\par% + \setcounter{chapter}{0}% + \setcounter{section}{0}% + \gdef\@chapapp{\appendixname}% + \gdef\thechapter{\@Alph\c@chapter}% + \csname appendixmore\endcsname +} \newcommand*\chaptermark[1]{} +\newif\if@altsecnumformat\@altsecnumformatfalse +\newif\if@autodot\@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 + \fi + \@@maybeautodot +} +\let\scr@sect\@sect +\renewcommand*{\@sect}[1]{\stepcounter{#1}% + \expandafter\@maybeautodot\csname the#1\endcsname + \addtocounter{#1}{-1}\scr@sect{#1}% +} +\BeforeClosingMainAux{% + \if@autodot\if@filesw\write\@mainaux{% + \string\global\string\@altsecnumformattrue}% + \fi\fi} +\newcommand*\autodot{\if@altsecnumformat.\fi} \setcounter{secnumdepth}{2} \newcounter{part} +\renewcommand*{\thepart}{\@Roman\c@part} +\newcommand*{\partformat}{\partname~\thepart\autodot} \newcounter{chapter} +\renewcommand*{\thechapter}{\@arabic\c@chapter} +\newcommand*{\chapterformat}{% + \chapappifchapterprefix{\ }\thechapter\autodot\enskip +} +\newcommand*\chaptermarkformat{\chapappifchapterprefix{\ }% + \thechapter\autodot\enskip} \newcounter{section}[chapter] +\renewcommand*\thesection{\thechapter.\@arabic\c@section} +\newcommand*\sectionmarkformat{\thesection\autodot\enskip} \newcounter{subsection}[section] +\renewcommand*{\thesubsection}{\thesection.\@arabic\c@subsection} \newcounter{subsubsection}[subsection] +\renewcommand*{\thesubsubsection}{% + \thesubsection.\@arabic\c@subsubsection +} \newcounter{paragraph}[subsubsection] +\renewcommand*{\theparagraph}{\thesubsubsection.\@arabic\c@paragraph} \newcounter{subparagraph}[paragraph] -\renewcommand*\thepart{\@Roman\c@part} -\renewcommand*\thechapter{\@arabic\c@chapter} -\renewcommand*\thesection{\thechapter.\@arabic\c@section} -\renewcommand*\thesubsection{\thesection.\@arabic\c@subsection} -\renewcommand*\thesubsubsection{\thesubsection.\@arabic\c@subsubsection} -\renewcommand*\theparagraph{\thesubsubsection.\@arabic\c@paragraph} -\renewcommand*\thesubparagraph{\theparagraph.\@arabic\c@subparagraph} +\renewcommand*{\thesubparagraph}{% + \theparagraph.\@arabic\c@subparagraph +} +\newcommand*{\othersectionlevelsformat}[1]{% + \csname the#1\endcsname\autodot\enskip} +\renewcommand*{\@seccntformat}{\protect\othersectionlevelsformat} +\newcommand*\partname{Part} +\newcommand*\chaptername{Chapter} +\newcommand*\appendixname{Appendix} +\newcommand*{\chapappifprefix}[1][]{% + \ClassWarning{\KOMAClassName}{% + Please don't use obsolete command + \string\chapappifprefix.\MessageBreak + The new command \string\chapappifchapterprefix\space has + an\MessageBreak + obligatory instead of an optional argument. Use that\MessageBreak + new command% + }% + \if@chapterprefix\chapapp#1\fi +} +\newcommand*{\chapappifchapterprefix}[1]{% + \if@chapterprefix\chapapp#1\fi +} +\newcommand*{\chapapp}{\@chapapp} \newcommand*\@chapapp{\chaptername} -\newcommand*\frontmatter{\if@twoside\cleardoublepage\else\clearpage\fi - \@mainmatterfalse\pagenumbering{roman}} -\newcommand*\mainmatter{\if@twoside\cleardoublepage\else\clearpage\fi - \@mainmattertrue\pagenumbering{arabic}} -\newcommand*\backmatter{\if@openright\cleardoublepage\else\clearpage\fi - \@mainmatterfalse} +\newcommand*{\partheadstartvskip}{% + \null\vfil +} +\newcommand*{\partheadmidvskip}{% + \par\nobreak + \vskip 20\p@ +} +\newcommand*{\partheadendvskip}{% + \vfil\newpage +} \newcommand\part{\if@openright\cleardoublepage\else\clearpage\fi - \thispagestyle{\partpagestyle}% - \if@twocolumn - \onecolumn - \@tempswatrue - \else - \@tempswafalse - \fi - \null\vfil% - \vbox to\z@{\vss\use@preamble{part@o}\strut\par}% - \vskip-\baselineskip\nobreak% - \secdef\@part\@spart} + \thispagestyle{\partpagestyle}% + \if@twocolumn + \onecolumn + \@tempswatrue + \else + \@tempswafalse + \fi + \partheadstartvskip + \vbox to\z@{\vss\use@preamble{part@o}\strut\par}% + \vskip-\baselineskip\nobreak% + \secdef\@part\@spart +} \newcommand*{\@part}{} \def\@part[#1]#2{% + \ifnum \c@secnumdepth >-2\relax + \refstepcounter{part}% + \@maybeautodot\thepart% + \addcontentsline{toc}{part}{\protect\numberline{\thepart}#1}% + \else + \addcontentsline{toc}{part}{#1}% + \fi + \begingroup + \setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative + \raggedpart + \interlinepenalty \@M + \normalfont\sectfont\nobreak \ifnum \c@secnumdepth >-2\relax - \refstepcounter{part}% - \@maybeautodot\thepart% - \addcontentsline{toc}{part}{\protect\numberline{\thepart}#1}% - \else - \addcontentsline{toc}{part}{#1}% + \size@partnumber\partformat + \partheadmidvskip \fi - \partmark{#1}% - {\@parskipfalse\@parskip@indent\centering - \interlinepenalty \@M - \normalfont\sectfont - \ifnum \c@secnumdepth >-2\relax - \size@partnumber\partformat - \par - \vskip 20\p@ - \fi - \size@part #2\strut\par}% - \@endpart} + \size@part #2\strut% + \partmark{#1}\par + \endgroup + \@endpart +} \newcommand*{\@spart}[1]{% - {\@parskipfalse\@parskip@indent\centering - \interlinepenalty \@M - \normalfont - \sectfont\size@part #1\strut\@mkboth{}{}\par}% - \@endpart} + \begingroup + \setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative + \raggedpart + \interlinepenalty \@M + \normalfont + \sectfont\nobreak\size@part #1\strut\@mkboth{}{}\par + \endgroup + \@endpart +} \newcommand*{\@endpart}{\vbox to\z@{\use@preamble{part@u}\vss}% - \vfil\newpage + \partheadendvskip \if@twoside\if@openright \null% \thispagestyle{empty}% @@ -881,9 +1389,10 @@ bk% \fi\fi \if@tempswa \twocolumn - \fi} -\newcommand*{\partmark}[1]{\@mkboth{}{}} -\newcommand\addpart{\if@openright\cleardoublepage\else\clearpage\fi + \fi +} +\newcommand\addpart{% + \if@openright\cleardoublepage\else\clearpage\fi \thispagestyle{\partpagestyle}% \if@twocolumn \onecolumn @@ -891,62 +1400,23 @@ bk% \else \@tempswafalse \fi - \null\vfil - \secdef\@addpart\@saddpart} + \partheadstartvskip + \vbox to\z@{\vss\use@preamble{part@o}\strut\par}% + \secdef\@addpart\@saddpart +} \newcommand*{\@addpart}{} -\def\@addpart[#1]#2{\addcontentsline{toc}{part}{#1}\@spart{#2}} -\newcommand*{\@saddpart}{} -\def\@saddpart#1{\@spart{#1}} +\def\@addpart[#1]#2{\addcontentsline{toc}{part}{#1}\@spart{#2}% + \ifx\partmark\@gobble\else\@mkboth{#1}{}\fi +} +\newcommand*{\@saddpart}{\@spart} +\newcommand*{\partmark}{} +\let\partmark\@gobble \newif\if@at@twocolumn \newcommand*\scr@topnewpage{} \let\scr@topnewpage\@topnewpage \long\def\@topnewpage[#1]{% - \@at@twocolumntrue\scr@topnewpage[{#1}]\@at@twocolumnfalse} -\newcommand\chapter{\if@openright\cleardoublepage\else\clearpage\fi - \thispagestyle{\chapterpagestyle}% - \global\@topnum\z@ - \@afterindentfalse - \secdef\@chapter\@schapter} -\newcommand*{\@chapter}{} -\def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne - \if@mainmatter - \refstepcounter{chapter}% - \@maybeautodot\thechapter% - \typeout{\@chapapp\space\thechapter.}% - \addcontentsline{toc}{chapter}% - {\protect\numberline{\thechapter}#1}% - \else - \addcontentsline{toc}{chapter}{#1}\fi - \else - \addcontentsline{toc}{chapter}{#1} - \fi - \chaptermark{#1}% - \addtocontents{lof}{\protect\addvspace{10\p@}}% - \addtocontents{lot}{\protect\addvspace{10\p@}}% - \@ifundefined{float@addtolists}{}{% - \float@addtolists{\protect\addvspace{10\p@}}} - \if@twocolumn - \if@at@twocolumn - \@makechapterhead{#2}% - \else - \@topnewpage[\@makechapterhead{#2}]% - \fi - \else - \@makechapterhead{#2}% - \@afterheading - \fi} -\newcommand*{\chapterheadstartvskip}{} -\newcommand*{\chapterheadendvskip}{} -\newcommand*{\@@makechapterhead}[1]{\chapterheadstartvskip% - {\normalfont\sectfont\size@chapter - \setlength{\parindent}{\z@}\setlength{\parfillskip}{\z@ \@plus 1fil}% - \if@chapterprefix\let\@tempa\raggedsection\else\let\@tempa\@hangfrom\fi% - \@tempa{\ifnum \c@secnumdepth >\m@ne% - \if@mainmatter \chapterformat\fi\fi}% - \if@chapterprefix\par\nobreak\vskip.5\baselineskip\fi% - {\raggedsection \interlinepenalty \@M #1\par}}% - \nobreak\chapterheadendvskip% - } + \@at@twocolumntrue\scr@topnewpage[{#1}]\@at@twocolumnfalse +} \newcommand*{\use@chapter@o@preamble}{% {\settoheight{\@tempdima}{\vbox{\chapterheadstartvskip}}% \settodepth{\@tempdimb}{\vbox{\chapterheadstartvskip}}% @@ -961,9 +1431,7 @@ bk% }% \ifdim \@tempdimb>\@tempdima% \addtolength{\@tempdimb}{-\@tempdima}% - \ClassWarning{% - scrbook% - }{% + \ClassWarning{\KOMAClassName}{% preamble before chapter is \the\@tempdimb\space too high.\MessageBreak To avoid the overfull \string\vbox\space you may @@ -979,50 +1447,198 @@ bk% \fi% } } +\newcommand*{\chapterheadstartvskip}{} +\newcommand*{\chapterheadendvskip}{} +\newcommand\chapter{\if@openright\cleardoublepage\else\clearpage\fi + \thispagestyle{\chapterpagestyle}% + \global\@topnum\z@ + \@afterindentfalse + \secdef\@chapter\@schapter +} +\newcommand*{\@chapter}{} +\def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne + \if@mainmatter + \refstepcounter{chapter}% + \@maybeautodot\thechapter + \typeout{\@chapapp\space\thechapter.}% + \addcontentsline{toc}{chapter}% + {\protect\numberline{\thechapter}#1}% + \else + \addcontentsline{toc}{chapter}{#1}% + \fi + \else + \addcontentsline{toc}{chapter}{#1}% + \fi + \chaptermark{#1}% + \addtocontents{lof}{\protect\addvspace{10\p@}}% + \addtocontents{lot}{\protect\addvspace{10\p@}}% + \@ifundefined{float@addtolists}{}{% + \float@addtolists{\protect\addvspace{10\p@}}% + }% + \if@twocolumn + \if@at@twocolumn + \@makechapterhead{#2}% + \else + \@topnewpage[\@makechapterhead{#2}]% + \fi + \else + \@makechapterhead{#2}% + \@afterheading + \fi +} \newcommand*{\@makechapterhead}[1]{% - \use@chapter@o@preamble% + \use@chapter@o@preamble \@@makechapterhead{#1}% - \use@preamble{chapter@u}\nobreak% - } -\newcommand*{\@schapter}[1]{\if@twocolumn - \if@at@twocolumn - \@makeschapterhead{#1}% - \else - \@topnewpage[\@makeschapterhead{#1}]% - \fi - \else - \@makeschapterhead{#1}% - \@afterheading - \fi} -\newcommand*{\@@makeschapterhead}[1]{\chapterheadstartvskip% + \use@preamble{chapter@u}\nobreak +} +\newcommand*{\@@makechapterhead}[1]{\chapterheadstartvskip {\normalfont\sectfont\size@chapter - \setlength{\parindent}{\z@}\setlength{\parfillskip}{\z@ \@plus 1fil}% + \setlength{\parindent}{\z@}\setlength{\parfillskip}{\fill}% + \if@chapterprefix + \let\@tempa\raggedsection + \else + \let\@tempa\@hangfrom + \fi + \@tempa{\ifnum \c@secnumdepth >\m@ne% + \if@mainmatter + \chapterformat + \fi + \fi + }% + \if@chapterprefix\par\nobreak\vskip.5\baselineskip\fi + {\raggedsection \interlinepenalty \@M #1\par}}% + \nobreak\chapterheadendvskip +} +\newcommand*{\@schapter}[1]{% + \if@twocolumn + \if@at@twocolumn + \@makeschapterhead{#1}% + \else + \@topnewpage[\@makeschapterhead{#1}]% + \fi + \else + \@makeschapterhead{#1}% + \@afterheading + \fi +} +\newcommand*{\@@makeschapterhead}[1]{% + \chapterheadstartvskip% + {\normalfont\sectfont\size@chapter + \setlength{\parindent}{\z@}\setlength{\parfillskip}{\fill}% \raggedsection \interlinepenalty \@M #1\par}% \nobreak\chapterheadendvskip% } \newcommand*{\@makeschapterhead}[1]{% - \use@chapter@o@preamble% + \use@chapter@o@preamble \@@makeschapterhead{#1}% - \use@preamble{chapter@u}\nobreak% - } + \use@preamble{chapter@u}\nobreak +} +\newcommand\addchap{\if@openright\cleardoublepage\else\clearpage\fi + \thispagestyle{\chapterpagestyle}% + \global\@topnum\z@ + \@afterindentfalse + \secdef\@addchap\@saddchap% +} +\newcommand*{\@addchap}{} +\def\@addchap[#1]#2{\@schapter{#2}% + \addcontentsline{toc}{chapter}{#1}% + \if@twoside\@mkboth{#1}{}\else\@mkboth{}{#1}\fi +} +\newcommand*{\@saddchap}[1]{\@schapter{#1}\@mkboth{}{}} +\AfterPackage{hyperref}{% + \@ifpackagelater{hyperref}{2001/02/19}{}{% + \ClassWarningNoLine{\KOMAClassName}{% + You are using an old version of hyperref package!\MessageBreak% + This version has a buggy hack at many drivers\MessageBreak% + causing \string\addchap\space to behave strange.\MessageBreak% + Please update hyperref to at least version + 6.71b}}} +\newcommand*\addsec{\secdef\@addsec\@saddsec} +\newcommand*{\@addsec}{} +\def\@addsec[#1]#2{\section*{#2}\addcontentsline{toc}{section}{#1} + \if@twoside\ifx\@mkboth\markboth\markright{#1}\fi\fi +} +\newcommand*{\@saddsec}[1]{\section*{#1}\@mkboth{}{}} +\newcommand\section{\@startsection{section}{1}{\z@}% + {-3.5ex \@plus -1ex \@minus -.2ex}% + {2.3ex \@plus.2ex}% + {\raggedsection\normalfont\sectfont\nobreak\size@section\nobreak}% +} +\newcommand\subsection{\@startsection{subsection}{2}{\z@}% + {-3.25ex\@plus -1ex \@minus -.2ex}% + {1.5ex \@plus .2ex}% + {\raggedsection\normalfont\sectfont\nobreak\size@subsection\nobreak + }% +} +\newcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}% + {-3.25ex\@plus -1ex \@minus -.2ex}% + {1.5ex \@plus .2ex}% + {\raggedsection\normalfont\sectfont\nobreak\size@subsubsection + \nobreak + }% +} +\newcommand\paragraph{\@startsection{paragraph}{4}{\z@}% + {3.25ex \@plus1ex \@minus.2ex}% + {-1em}% + {\raggedsection\normalfont\sectfont\nobreak\size@paragraph\nobreak}% +} +\newcommand\subparagraph{\@startsection{subparagraph}{5}{\parindent}% + {3.25ex \@plus1ex \@minus .2ex}% + {-1em}% + {\raggedsection\normalfont\sectfont\nobreak\size@subparagraph + \nobreak + }% +} +\newcommand\minisec[1]{\@afterindentfalse \vskip 1.5ex + {\parindent \z@ + \raggedsection\normalfont\sectfont\nobreak#1\par\nobreak}\nobreak% + \@afterheading +} +\newcommand*{\raggedsection}{} +\let\raggedsection\raggedright +\newcommand*{\raggedpart}{} +\let\raggedpart\centering +\newcommand*\sectfont{\normalcolor\sffamily\bfseries} +\newcommand*{\size@part}{} +\newcommand*{\size@partnumber}{} +\newcommand*{\size@chapter}{} +\newcommand*{\size@section}{} +\newcommand*{\size@subsection}{} +\newcommand*{\size@subsubsection}{} +\newcommand*{\size@paragraph}{} +\newcommand*{\size@subparagraph}{} +\newcommand*{\scr@fnt@disposition}{\sectfont} +\newcommand*{\scr@fnt@part}{\size@part} +\newcommand*{\scr@fnt@partnumber}{\size@partnumber} +\newcommand*{\scr@fnt@chapter}{\size@chapter} +\newcommand*{\scr@fnt@section}{\size@section} +\newcommand*{\scr@fnt@subsection}{\size@subsection} +\newcommand*{\scr@fnt@subsubsection}{\size@subsubsection} +\newcommand*{\scr@fnt@paragraph}{\size@paragraph} +\newcommand*{\scr@fnt@subparagraph}{\size@subparagraph} +\aliaskomafont{minisec}{disposition} +\aliaskomafont{sectioning}{disposition} \newcommand*{\use@preamble}[1]{% \@ifundefined{#1@preamble}{}{% \@nameuse{#1@preamble}% - \global\expandafter\let\csname#1@preamble\endcsname=\relax}% + \global\expandafter\let\csname#1@preamble\endcsname=\relax + }% } \newcommand*{\set@preamble}[1]{% - \@ifnextchar [ - {\set@@preamble{#1}}{\set@@@preamble{#1}[][\hsize]}} + \@ifnextchar [%] + {\set@@preamble{#1}}{\set@@@preamble{#1}[][\hsize]}% +} \newcommand*{\set@@preamble}{} \def\set@@preamble#1[#2]{% - \@ifnextchar [ - {\set@@@preamble{#1}[{#2}]}{\set@@@preamble{#1}[{#2}][\hsize]}} + \@ifnextchar [%] + {\set@@@preamble{#1}[{#2}]}{\set@@@preamble{#1}[{#2}][\hsize]}% +} \newcommand{\set@@@preamble}{} \long\def\set@@@preamble#1[#2][#3]#4{% - {% - \def\prmbl@pos{#2}\let\prmbl@hpos\relax\let\prmbl@vpos\relax% - \expandafter \@tfor \expandafter \@tempa% - \expandafter :\expandafter =\prmbl@pos% + \begingroup + \def\prmbl@pos{#2}\let\prmbl@hpos\relax\let\prmbl@vpos\relax + \expandafter \@tfor \expandafter \@tempa + \expandafter :\expandafter =\prmbl@pos \do{% \if \@tempa l% \set@preamble@hpos{0}{#2}% @@ -1039,67 +1655,130 @@ bk% \if \@tempa o% \set@preamble@vpos{1}{#2}% \fi% - } + }% \@ifundefined{prmbl@hpos}{\def\prmbl@hpos{0}}{}% \@ifundefined{prmbl@vpos}{\def\prmbl@vpos{0}}{}% \ifcase\prmbl@hpos \ifcase\prmbl@vpos - \set@@@@preamble{#1@u}{t}{#3}{}{\hfil}{#4} + \set@@@@preamble{#1@u}{t}{#3}{}{\hfil}{#4}% \else - \set@@@@preamble{#1@o}{b}{#3}{}{\hfil}{#4} + \set@@@@preamble{#1@o}{b}{#3}{}{\hfil}{#4}% \fi \or \ifcase\prmbl@vpos - \set@@@@preamble{#1@u}{t}{#3}{\hfil}{\hfil}{#4} + \set@@@@preamble{#1@u}{t}{#3}{\hfil}{\hfil}{#4}% \else - \set@@@@preamble{#1@o}{b}{#3}{\hfil}{\hfil}{#4} + \set@@@@preamble{#1@o}{b}{#3}{\hfil}{\hfil}{#4}% \fi \else \ifcase\prmbl@vpos - \set@@@@preamble{#1@u}{t}{#3}{\hfil}{}{#4} + \set@@@@preamble{#1@u}{t}{#3}{\hfil}{}{#4}% \else - \set@@@@preamble{#1@o}{b}{#3}{\hfil}{}{#4} + \set@@@@preamble{#1@o}{b}{#3}{\hfil}{}{#4}% \fi \fi - } + \endgroup } \newcommand{\set@@@@preamble}[6]{% \expandafter\gdef\csname #1@preamble\endcsname{% - \hbox to\hsize{#4\parbox[{#2}]{#3}{#6\par}#5\par}}} + \hbox to\hsize{#4\parbox[{#2}]{#3}{#6\par}#5\par}% + }% +} \newcommand*{\set@preamble@hpos}[2]{% \@ifundefined{prbml@hpos}{% \def\prmbl@hpos{#1}% - }{% + }{% \ifnum \prmbl@hpos=0\relax\else% - \ClassError{% - scrbook% - }{% + \ClassError{\KOMAClassName}{% inconsistent hpos options% - }{% + }{% You said `#2' as position option. But you have to\MessageBreak use only one from `l', `r' or `c' not two of these.\MessageBreak If you'll continue only first hpos option will be - used}% - \fi}} + used% + }% + \fi + }% +} \newcommand*{\set@preamble@vpos}[2]{% \@ifundefined{prbml@vpos}{% \def\prmbl@vpos{#1}% - }{% + }{% \ifnum \prmbl@vpos=0\relax\else% - \ClassError{% - scrbook% - }{% + \ClassError{\KOMAClassName}{% inconsistent vpos options% - }{% + }{% You said `#2' as position option. But you have to\MessageBreak use only one from `o' or `u' not two of these.\MessageBreak If you'll continue only first vpos option will be - used}% - \fi}} + used% + }% + \fi + }% +} +\newcommand*{\setchapterpreamble}{\set@preamble{chapter}} +\newcommand*{\chapter@u@preamble}{} +\let\chapter@u@preamble\relax +\newcommand*{\chapter@o@preamble}{} +\let\chapter@o@preamble\relax +\newcommand*{\setpartpreamble}{\set@preamble{part}} +\newcommand*{\part@preamble@u}{} +\let\part@preamble@u\relax +\newcommand*{\part@preamble@o}{} +\let\part@preamble@o\relax +\newcommand*\l@part[2]{% + \ifnum \c@tocdepth >-2\relax + \addpenalty{-\@highpenalty}% + \addvspace{2.25em \@plus\p@}% + \setlength{\@tempdima}{2em}% + \if@tocleft + \ifx\toc@l@number\@empty\else + \setlength\@tempdima{0\toc@l@number}% + \fi + \fi + \begingroup + \parindent \z@ \rightskip \@pnumwidth + \parfillskip -\@pnumwidth + \leavevmode\sectfont\large + \advance\leftskip\@tempdima + \hskip -\leftskip + #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par + \penalty\@highpenalty + \endgroup + \fi +} +\newcommand*\l@chapter[2]{% + \ifnum \c@tocdepth >\m@ne + \addpenalty{-\@highpenalty}% + \vskip 1.0em \@plus\p@ + \setlength\@tempdima{1.5em}% + \if@tocleft + \ifx\toc@l@number\@empty\else + \setlength\@tempdima{0\toc@l@number}% + \fi + \fi + \begingroup + \parindent \z@ \rightskip \@pnumwidth + \parfillskip -\@pnumwidth + \leavevmode \sectfont + \advance\leftskip\@tempdima + \hskip -\leftskip + #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par + \penalty\@highpenalty + \endgroup + \fi +} +\newcommand*\l@section{\@dottedtocline{1}{1.5em}{2.3em}} +\newcommand*\l@subsection{\@dottedtocline{2}{3.8em}{3.2em}} +\newcommand*\l@subsubsection{\@dottedtocline{3}{7.0em}{4.1em}} +\newcommand*\l@paragraph{\@dottedtocline{4}{10em}{5em}} +\newcommand*\l@subparagraph{\@dottedtocline{5}{12em}{6em}} +%%% From File: scrkmisc.dtx +\newif\if@restonecol \newcommand{\dictum}[2][]{\par% \begingroup \raggeddictum\parbox{\dictumwidth}{% @@ -1118,273 +1797,43 @@ bk% \newcommand*{\dictumauthorformat}[1]{(#1)} \newcommand*{\raggeddictumtext}{\raggedright} \newcommand*{\raggeddictumauthor}{\raggedleft} -\newcommand*{\@dictumfont}{\normalfont\normalcolor\sffamily\small} -\newcommand*{\@dictumauthorfont}{\itshape} -\newcommand*{\scr@fnt@dictumtext}{\@dictumfont} -\newcommand*{\scr@fnt@dictumauthor}{\@dictumauthorfont} -\newcommand*{\scr@fnt@instead@dictum}{dictumtext} -\newcommand*{\setchapterpreamble}{\set@preamble{chapter}} -\newcommand*{\chapter@u@preamble}{} -\let\chapter@u@preamble\relax -\newcommand*{\chapter@o@preamble}{} -\let\chapter@o@preamble\relax -\newcommand*{\setpartpreamble}{\set@preamble{part}} -\newcommand*{\part@preamble@u}{} -\let\part@preamble@u\relax -\newcommand*{\part@preamble@o}{} -\let\part@preamble@o\relax -\newcommand*\addsec{\secdef\@addsec\@saddsec} -\newcommand*{\@addsec}{} -\def\@addsec[#1]#2{\section*{#2}\addcontentsline{toc}{section}{#1} - \if@twoside\ifx\@mkboth\markboth\markright{#1}\fi\fi} -\newcommand*{\@saddsec}[1]{\section*{#1}\@mkboth{}{}} -\newcommand\addchap{\if@openright\cleardoublepage\else\clearpage\fi - \thispagestyle{\chapterpagestyle}% - \global\@topnum\z@ - \@afterindentfalse - \secdef\@addchap\@saddchap% -} -\newcommand*{\@addchap}{} -\def\@addchap[#1]#2{\@schapter{#2}% - \addcontentsline{toc}{chapter}{#1}% - \if@twoside\@mkboth{#1}{}\else\@mkboth{}{#1}\fi} -\newcommand*{\@saddchap}[1]{\@schapter{#1}\@mkboth{}{}} -\AfterPackage{hyperref}{% - \@ifpackagelater{hyperref}{2001/02/19}{}{% - \ClassWarningNoLine{scrbook}{% - You are using an old version of hyperref package!\MessageBreak% - This version has a buggy hack at many drivers\MessageBreak% - causing \string\addchap\space to behave strange.\MessageBreak% - Please update hyperref to at least version - 6.71b}}} -\newcommand\section{\@startsection{section}{1}{\z@}% - {-3.5ex \@plus -1ex \@minus -.2ex}% - {2.3ex \@plus.2ex}% - {\setlength{\parfillskip}{\z@ \@plus 1fil}% - \raggedsection\normalfont\sectfont\nobreak\size@section\nobreak}} -\newcommand\subsection{\@startsection{subsection}{2}{\z@}% - {-3.25ex\@plus -1ex \@minus -.2ex}% - {1.5ex \@plus .2ex}% - {\setlength{\parfillskip}{\z@ \@plus 1fil}% - \raggedsection\normalfont\sectfont\nobreak\size@subsection\nobreak}} -\newcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}% - {-3.25ex\@plus -1ex \@minus -.2ex}% - {1.5ex \@plus .2ex}% - {\setlength{\parfillskip}{\z@ \@plus 1fil}% - \raggedsection\normalfont\sectfont\nobreak\size@subsubsection\nobreak}} -\newcommand\paragraph{\@startsection{paragraph}{4}{\z@}% - {3.25ex \@plus1ex \@minus.2ex}% - {-1em}% - {\setlength{\parfillskip}{\z@ \@plus 1fil}% - \raggedsection\normalfont\sectfont\nobreak\size@paragraph\nobreak}} -\newcommand\subparagraph{\@startsection{subparagraph}{5}{\parindent}% - {3.25ex \@plus1ex \@minus .2ex}% - {-1em}% - {\setlength{\parfillskip}{\z@ \@plus 1fil}% - \raggedsection\normalfont\sectfont\nobreak\size@subparagraph\nobreak}} -\newcommand\minisec[1]{\@afterindentfalse \vskip 1.5ex - {\parindent \z@ - \raggedsection\normalfont\sectfont\nobreak#1\par\nobreak}\nobreak - \@afterheading} -\let\raggedsection\raggedright -\setlength\arraycolsep{5\p@} -\setlength\tabcolsep{6\p@} -\setlength\arrayrulewidth{.4\p@} -\setlength\doublerulesep{2\p@} -\setlength\tabbingsep{\labelsep} +\newkomafont{dictum}{\normalfont\normalcolor\sffamily\small} +\newkomafont{dictumauthor}{\itshape} +\aliaskomafont{dictumtext}{dictum} \setlength{\skip\@mpfootins}{\skip\footins} \setlength\fboxsep{3\p@} \setlength\fboxrule{.4\p@} \@addtoreset{equation}{chapter} \renewcommand*\theequation{% \thechapter.% - \@arabic\c@equation} -\if@twocolumn - \setlength{\leftmargini}{2em} -\else - \setlength{\leftmargini}{2.5em} -\fi -\setlength{\leftmarginii}{2.2em} -\setlength{\leftmarginiii}{1.87em} -\setlength{\leftmarginiv}{1.7em} -\if@twocolumn - \setlength{\leftmarginv}{.5em} - \setlength{\leftmarginvi}{.5em} -\else - \setlength{\leftmarginv}{1em} - \setlength{\leftmarginvi}{1em} -\fi -\setlength{\leftmargin}{\leftmargini} -\setlength{\labelsep}{.5em} -\setlength{\labelwidth}{\leftmargini} -\addtolength{\labelwidth}{-\labelsep} -\@beginparpenalty=-\@lowpenalty -\@endparpenalty =-\@lowpenalty -\@itempenalty =-\@lowpenalty -\renewcommand*\theenumi{\@arabic\c@enumi} -\renewcommand*\theenumii{\@alph\c@enumii} -\renewcommand*\theenumiii{\@roman\c@enumiii} -\renewcommand*\theenumiv{\@Alph\c@enumiv} -\newcommand*\labelenumi{\theenumi.} -\newcommand*\labelenumii{\theenumii)} -\newcommand*\labelenumiii{\theenumiii.} -\newcommand*\labelenumiv{\theenumiv.} -\renewcommand*\p@enumii{\theenumi} -\renewcommand*\p@enumiii{\p@enumii(\theenumii)} -\renewcommand*\p@enumiv{\p@enumiii\theenumiii} -\newcommand*\labelitemi{\textbullet} -\newcommand*\labelitemii{\normalfont\bfseries\textendash} -\newcommand*\labelitemiii{\textasteriskcentered} -\newcommand*\labelitemiv{\textperiodcentered} -\newenvironment{description} - {\list{}{\labelwidth\z@ \itemindent-\leftmargin - \let\makelabel\descriptionlabel}} - {\endlist} -\newcommand*{\descriptionlabel}[1]{\hspace\labelsep - \descfont #1} -\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{verse} - {\let\\=\@centercr - \list{}{\itemsep \z@ - \itemindent -1.5em% - \listparindent\itemindent - \rightmargin \leftmargin - \advance\leftmargin 1.5em}% - \item\relax} - {\endlist} -\newenvironment{quotation} - {\list{}{\listparindent 1em% - \itemindent \listparindent - \rightmargin \leftmargin - \parsep \z@ \@plus\p@}% - \item\relax} - {\endlist} -\newenvironment{quote} - {\list{}{\rightmargin\leftmargin}% - \item\relax} - {\endlist} -\newenvironment{addmargin}{% - \@tempswafalse\@addmargin - }{\endlist} -\newenvironment{addmargin*}{% - \@tempswafalse - \if@twoside\ifthispageodd{}{\@tempswatrue}\fi - \@addmargin - }{\endlist} -\newcommand*{\@addmargin}[2][\@tempa]{% - \@tempcnta=\@listdepth - \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@} - \@listdepth=\@tempcnta% - }% - \item[]% - } -\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\marginline[1]{\marginpar[\raggedleft{#1}]{\raggedright #1}} -\newcommand*\appendix{\par% - \setcounter{chapter}{0}% - \setcounter{section}{0}% - \renewcommand*\@chapapp{\appendixname}% - \renewcommand*\thechapter{\@Alph\c@chapter}% - \@ifundefined{appendixmore}{}{\appendixmore}} -\newcounter{figure}[chapter] -\renewcommand*\thefigure{% - \thechapter.% - \@arabic\c@figure} -\newcommand*{\fps@figure}{tbp} -\newcommand*{\ftype@figure}{1} -\newcommand*{\ext@figure}{lof} -\newcommand*{\fnum@figure}{\figureformat} -\newenvironment{figure} - {\let\caption\captionbelow\@float{figure}} - {\end@float} -\newenvironment{figure*} - {\let\caption\captionbelow\@dblfloat{figure}} - {\end@dblfloat} -\newcounter{table}[chapter] -\renewcommand*\thetable{% - \thechapter.% - \@arabic\c@table} -\newcommand*{\fps@table}{tbp} -\newcommand*{\ftype@table}{2} -\newcommand*{\ext@table}{lot} -\newcommand*{\fnum@table}{\tableformat} -\newenvironment{table} - {\if@tablecaptionabove\let\caption\captionabove% - \else\let\caption\captionbelow\fi\@float{table}} - {\end@float} -\newenvironment{table*} - {\if@tablecaptionabove\let\caption\captionabove% - \else\let\caption\captionbelow\fi\@dblfloat{table}} - {\end@dblfloat} -\newcommand*{\new@tpo@label}[2]{% - \expandafter\gdef\csname scr@tpo@#1\endcsname{#2}% - } -\newcommand*{\ref@tpo@label}[1]{% - \expandafter\ifx\csname scr@tpo@#1\endcsname\relax\value{page}% - \else\csname scr@tpo@#1\endcsname\fi} + \@arabic\c@equation +} +\newcommand*{\new@tpo@label}{\@newl@bel{tpo}} \newcommand*{\scr@tpo}{0} \newcommand*{\is@thispageodd}{% - \begingroup% - \@tempcnta=\scr@tpo% - \advance\@tempcnta by\@ne% + \@bsphack + \begingroup + \@tempcnta=\scr@tpo + \advance\@tempcnta by\@ne \xdef\scr@tpo{\the\@tempcnta}% - \@bsphack - \protected@write\@auxout{}{% - \string\new@tpo@label{\scr@tpo}{\noexpand\the\value{page}}}% - \@esphack - \count@\ref@tpo@label{\scr@tpo}\relax - \ifodd\count@ + \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 + \ClassWarning{\KOMAClassName}{% + 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 } -\AtEndDocument{% - \if@filesw\immediate\write\@auxout{% - \string\gdef\string\scr@tpo@lst{\scr@tpo}}\fi% - \ifx\scr@tpo@lst\scr@tpo\else\ifnum \scr@tpo>0 - \ClassWarningNoLine{% - scrbook% - }{Rerun to get odd- an even-page-stuff right}% - \fi\fi - } \newif\ifthispagewasodd \newcommand{\ifthispageodd}{% \is@thispageodd @@ -1394,10 +1843,171 @@ bk% \expandafter\@secondoftwo \fi } -\newlength\abovecaptionskip -\newlength\belowcaptionskip -\setlength\abovecaptionskip{10\p@} -\setlength\belowcaptionskip{0\p@} +\DeclareRobustCommand*\textsubscript[1]{% + \@textsubscript{\selectfont#1}% +} +\newcommand{\@textsubscript}[1]{% + {\m@th\ensuremath{_{\mbox{\fontsize\sf@size\z@#1}}}}% +} +%%% From File: scrkpage.dtx +\newcommand*{\set@tempdima@hw}{% + \setlength{\@tempdima}{\textwidth}% + \if@mincl + \addtolength{\@tempdima}{\marginparsep}% + \addtolength{\@tempdima}{\marginparwidth}% + \fi +} +\newcommand*\pnumfont{\normalfont\normalcolor} +\newcommand*\headfont{\normalfont\normalcolor\slshape} +\newcommand*{\scr@fnt@pagenumber}{\pnumfont} +\aliaskomafont{pagination}{pagenumber} +\newcommand*{\scr@fnt@pagehead}{\headfont} +\newcommand*{\scr@fnt@wrn@pagehead}[1]{% + font selection of elements `pagehead' and `pagefoot'\MessageBreak + changed, because they are same% +} +\aliaskomafont{pagefoot}{pagehead} +\newcommand*{\pagemark}{{\usekomafont{pagenumber}% + \thepage}} +\if@twoside + \renewcommand*{\ps@plain}{% + \renewcommand*{\@evenhead}{}% + \renewcommand*{\@oddhead}{}% + \renewcommand*{\@evenfoot}{% + \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\pagemark\hfil}}}}}% + \renewcommand*{\@oddfoot}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\hfil\pagemark}}}}\hss}% + }% + \newcommand*{\ps@headings}{\let\@mkboth\markboth + \renewcommand*{\@evenhead}{% + \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% + \hb@xt@ \@tempdima{{\headfont\strut\leftmark\hfil}}% + \if@hsl \vskip 1.5\p@ \hrule \fi}}}% + \renewcommand*{\@oddhead}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \hb@xt@ \@tempdima{{\headfont\hfil\strut\rightmark}}% + \if@hsl \vskip 1.5\p@ \hrule \fi}}\hss}% + \renewcommand*{\@evenfoot}{% + \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\pagemark\hfil}}}}}% + \renewcommand*{\@oddfoot}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\hfil\pagemark}}}}\hss}% + \renewcommand*{\chaptermark}[1]{% + \markboth{\ifnum \c@secnumdepth >\m@ne + \if@mainmatter + \chaptermarkformat + \fi + \fi + ##1}{}% + }% + \renewcommand*{\sectionmark}[1]{% + \markright{\ifnum \c@secnumdepth >\z@ + \sectionmarkformat\fi + ##1}}% + }% + \newcommand*{\ps@myheadings}{\let\@mkboth\@gobbletwo + \renewcommand*{\@evenhead}{% + \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% + \hb@xt@ \@tempdima{{\headfont\strut\leftmark\hfil}}% + \if@hsl \vskip 1.5\p@ \hrule \fi}}}% + \renewcommand*{\@oddhead}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \hb@xt@ \@tempdima{{\headfont\hfil\strut\rightmark}}% + \if@hsl \vskip 1.5\p@ \hrule \fi}}\hss}% + \renewcommand*{\@evenfoot}{% + \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\pagemark\hfil}}}}}% + \renewcommand*{\@oddfoot}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\hfil\pagemark}}}}\hss}% + \renewcommand*{\chaptermark}[1]{}% + \renewcommand*{\sectionmark}[1]{}% + } +\else + \renewcommand*{\ps@plain}{% + \renewcommand*{\@oddhead}{% + }% + \let\@evenhead\@oddhead% + \renewcommand*{\@oddfoot}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\hfil\pagemark\hfil}}}}\hss + }% + \let\@evenfoot\@oddfoot + } + \newcommand*{\ps@headings}{\let\@mkboth\markboth + \renewcommand*{\@oddhead}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \hb@xt@ \@tempdima{{\headfont\hfil\strut\rightmark\hfil}} + \if@hsl \vskip 1.5\p@ \hrule \fi}}\hss + }% + \let\@evenhead\@oddhead + \renewcommand*{\@oddfoot}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\hfil\pagemark\hfil}}}\hss}}% + \renewcommand*{\sectionmark}[1]{}% + \renewcommand*{\chaptermark}[1]{% + \markright{\ifnum \c@secnumdepth >\m@ne + \if@mainmatter + \chaptermarkformat + \fi + \fi + ##1}}% + \let\@evenfoot\@oddfoot + } + \newcommand*{\ps@myheadings}{% + \let\@mkboth\@gobbletwo + \renewcommand*{\@evenhead}{}% + \renewcommand*{\@oddhead}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \hb@xt@ \@tempdima{{\headfont\hfil\strut\rightmark\hfil}}% + \if@hsl \vskip 1.5\p@ \hrule \fi}}\hss}% + \renewcommand*{\@evenfoot}{}% + \renewcommand*{\@oddfoot}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\hfil\pagemark\hfil}}}}\hss}% + \renewcommand*{\chaptermark}[1]{}% + \renewcommand*{\sectionmark}[1]{}% + } +\fi +\newcommand*{\titlepagestyle}{plain} +\newcommand*{\partpagestyle}{plain} +\newcommand*{\chapterpagestyle}{plain} +\newcommand*{\indexpagestyle}{plain} +\pagestyle{headings} +\pagenumbering{arabic} +\if@twoside + \flushbottom +\else + \raggedbottom +\fi +\if@twocolumn + \twocolumn + \sloppy + \flushbottom +\else + \onecolumn +\fi +%%% From File: scrkfloa.dtx +\newcommand\marginline[1]{% + \marginpar[\raggedleft{#1}]{\raggedright #1}% +} +\newlength{\abovecaptionskip} +\newlength{\belowcaptionskip} +\setlength{\abovecaptionskip}{10\p@} +\setlength{\belowcaptionskip}{0\p@} +\newcommand*{\captionformat}{:\ } \newif\if@captionabove\@captionabovefalse \newcommand{\scr@caption}{} \AtBeginDocument{\let\scr@caption\caption} @@ -1415,14 +2025,14 @@ bk% \@ifnextchar [%] {\@@captionbeside[{#1}]{#2}} {\c@pti@nb@sid@[{#1}]{#2}}% - } +} \newcommand*{\@@captionbeside}{} \long\def\@@captionbeside[#1]#2[#3]{% \def\scap@pos{#3}% \@ifnextchar [%] {\@@@captionbeside[{#1}]{#2}} {\c@pti@nb@sid@[{#1}]{#2}}% - } +} \newcommand*{\@@@captionbeside}{} \long\def\@@@captionbeside[#1]#2[#3]{% \def\scap@width{#3}% @@ -1433,38 +2043,36 @@ bk% \setlength{\@tempdima}{-.5\@tempdima}% \edef\scap@move{\the\@tempdima}% \c@pti@nb@sid@[{#1}]{#2}}% - } +} \newcommand*{\@@@@captionbeside}{} \long\def\@@@@captionbeside[#1]#2[#3]{% \def\scap@move{#3}% \@ifstar {\scap@alttrue\c@pti@nb@sid@[{#1}]{#2}} {\scap@altfalse\c@pti@nb@sid@[{#1}]{#2}}% - } +} \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}}% \begin{lrbox}{\c@pti@nb@sid@b@x}% - } +} \newenvironment*{captionbeside}{% \@dblarg\@captionbeside% - }{% +}{% \end{lrbox}% \settowidth{\@tempdima}{\usebox\c@pti@nb@sid@b@x}% \setlength{\@tempdimb}{\scap@width}% \addtolength{\@tempdimb}{-\@tempdima}% \addtolength{\@tempdimb}{-\columnsep}% \ifdim \@tempdimb<2em - \ClassWarning{% - scrbook% - }{% + \ClassWarning{\KOMAClassName}{% caption beside will be very, very small.\MessageBreak In most cases this will result in overfull and underfull\MessageBreak \string\hbox\space messages% - }% - \fi% + }% + \fi \onelinecaptionsfalse \setcapwidth[r]{\@tempdimb}% \let\@tempa\scap@pos @@ -1483,69 +2091,87 @@ bk% }% \fi \hspace*{\@tempdimc}% - \if l\@tempa% + \if l\@tempa \rlap{% \parbox[\scap@valign]{\@tempdimb}{\scap@caption \global\let\scap@currentlabel\@currentlabel}% - \nobreak\hskip\columnsep% + \nobreak\hskip\columnsep \parbox[\scap@valign]{\wd\c@pti@nb@sid@b@x}{\usebox\c@pti@nb@sid@b@x}% - }% + }% \else \rlap{% \parbox[\scap@valign]{\wd\c@pti@nb@sid@b@x}{\usebox\c@pti@nb@sid@b@x}% - \nobreak\hskip\columnsep% + \nobreak\hskip\columnsep \parbox[\scap@valign]{\@tempdimb}{\scap@caption \global\let\scap@currentlabel\@currentlabel}% - }% + }% \fi \par - \aftergroup\let\aftergroup\@currentlabel\aftergroup\scap@currentlabel - } + \aftergroup\let\aftergroup\@currentlabel + \aftergroup\scap@currentlabel +} +\newcommand*\capfont{\normalfont\normalcolor} +\newcommand*\caplabelfont{\normalfont\normalcolor} +\newcommand*{\scr@fnt@caption}{\capfont} +\newcommand*{\scr@fnt@captionlabel}{\caplabelfont} \newif\ifdofullc@p \dofullc@ptrue \newif\if@capbreak\@capbreakfalse \newcommand*{\setcapindent}{\@ifstar{\@@setcapindent}{\@setcapindent}} -\newcommand*{\@setcapindent}[1]{ +\newcommand*{\@setcapindent}[1]{% \setlength{\@tempdima}{#1}% - \ifdim\@tempdima>\hsize\addtolength{\@tempdima}{-\hsize}\@capbreaktrue - \else\@capbreakfalse\fi - \edef\cap@indent{\the\@tempdima} + \ifdim\@tempdima>\hsize + \addtolength{\@tempdima}{-\hsize}\@capbreaktrue + \else + \@capbreakfalse + \fi + \edef\cap@indent{\the\@tempdima}% \dofullc@pfalse } -\newcommand*{\@@setcapindent}[1]{ +\newcommand*{\@@setcapindent}[1]{% \setlength{\@tempdima}{#1}% - \edef\cap@indent{\the\@tempdima} + \edef\cap@indent{\the\@tempdima}% \dofullc@pfalse\@capbreaktrue } \AfterPackage{caption2}{% \renewcommand*{\setcapindent}{% - \ClassWarning{% - scrbook% - }{% + \ClassWarning{\KOMAClassName}{% You're using package caption2.\MessageBreak Because of this you should also use \string\captionstyle\space and\MessageBreak set length \string\captionindent\space instead if using\MessageBreak \string\setcapindent - } + }% \captionstyle{indent}% - \@ifstar{\setlength{\captionindent}}{\setlength{\captionindent}}}} + \@ifstar{\setlength{\captionindent}}{\setlength{\captionindent}}% + }% +} \newcommand*{\setcaphanging}{\dofullc@ptrue\@capbreakfalse} \AfterPackage{caption2}{% \renewcommand*{\setcaphanging}{% - \ClassWarning{% - scrbook% - }{% + \ClassWarning{\KOMAClassName}{% You're using package caption2.\MessageBreak - Because of this you should also use \string\captionstyle\MessageBreak + Because of this you should also use + \string\captionstyle\MessageBreak instead of \string\setcaphang - } - \captionstyle{hang}}} + } + \captionstyle{hang}% + }% +} \newcommand{\@makecaption}[2]{% - \if@captionabove\vskip\belowcaptionskip\else\vskip\abovecaptionskip\fi + \if@captionabove + \vskip\belowcaptionskip + \else + \vskip\abovecaptionskip + \fi \@@makecaption\@firstofone{#1}{#2}% - \if@captionabove\vskip\abovecaptionskip\else\vskip\belowcaptionskip\fi} + \if@captionabove + \vskip\abovecaptionskip + \else + \vskip\belowcaptionskip + \fi +} \newcommand*{\cap@width}{\hsize} \newcommand*{\cap@left}{\hfill} \newcommand*{\cap@right}{\hfill} @@ -1553,19 +2179,19 @@ bk% \begingroup% \setlength{\@tempdima}{#2}% \edef\@tempa{\endgroup\def\noexpand\cap@width{\the\@tempdima}}% - \@tempa% + \@tempa \begingroup - \expandafter\def\expandafter\@tempa\expandafter{#1}% + \edef\@tempa{#1}% \def\@tempb{c}\ifx\@tempa\@tempb - \endgroup% + \endgroup \def\cap@margin{\let\cap@left=\hfill\let\cap@right=\hfill}% \else \def\@tempb{l}\ifx\@tempa\@tempb - \endgroup% + \endgroup \def\cap@margin{\let\cap@left=\relax\let\cap@right\hfill}% \else \def\@tempb{r}\ifx\@tempa\@tempb - \endgroup% + \endgroup \def\cap@margin{\let\cap@left=\hfill\let\cap@right=\relax}% \else \def\@tempb{i}\ifx\@tempa\@tempb @@ -1595,48 +2221,46 @@ bk% }% \else \ifx \@tempa\@empty\else - \ClassError{% - scrbook% - }{% + \ClassError{\KOMAClassName}{% unknown optional position argument% - }{% + }{% You've used `#1' as position argument at \string\setcaptionwidth,\MessageBreak but only ONE of `c', `l', `r', `i`, `o` ist allowed.\MessageBreak Argument will be ignored, if you'll continue.% - }% - \fi% - \endgroup% - \fi\fi\fi\fi\fi% - } + }% + \fi + \endgroup + \fi\fi\fi\fi\fi +} \AfterPackage{caption2}{% \renewcommand*{\setcapwidth}[2][]{% - \ClassWarning{% - scrbook% - }{% + \ClassWarning{\KOMAClassName}{% 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 - } - \setcaptionwidth{#2}}}% + }% + \setcaptionwidth{#2}% + }% +}% \newcommand*{\cap@margin}{} \let\cap@margin=\relax% \newcommand*{\setcapmargin}{\@ifstar{\@setcapmargin}{\@@setcapmargin}} \newcommand*{\@setcapmargin}[2][\@tempdimb]{% \def\cap@margin{% - \onelinecaptionsfalse% - \begingroup% + \onelinecaptionsfalse + \begingroup \setlength{\@tempdima}{\hsize}% \setlength{\@tempdimb}{#2}% \addtolength{\@tempdima}{-\@tempdimb}% \setlength{\@tempdimc}{#1}% \addtolength{\@tempdima}{-\@tempdimc}% - \edef\@tempa{\endgroup% + \edef\@tempa{\endgroup \def\noexpand\cap@width{\the\@tempdima}% - \noexpand\if@twoside% + \noexpand\if@twoside \noexpand\ifthispageodd{% \def\noexpand\cap@left{\noexpand\hspace*{\the\@tempdimc}}% \def\noexpand\cap@right{\noexpand\hspace*{\the\@tempdimb}}% @@ -1644,99 +2268,116 @@ bk% \def\noexpand\cap@right{\noexpand\hspace*{\the\@tempdimc}}% \def\noexpand\cap@left{\noexpand\hspace*{\the\@tempdimb}}% }% - \noexpand\else% + \noexpand\else \def\noexpand\cap@left{\noexpand\hspace*{\the\@tempdimc}}% \def\noexpand\cap@right{\noexpand\hspace*{\the\@tempdimb}}% - \noexpand\fi} - \@tempa}% - } + \noexpand\fi + }% + \@tempa + }% +} \newcommand*{\@@setcapmargin}[2][\@tempdimb]{% \def\cap@margin{% - \onelinecaptionsfalse% - \begingroup% + \onelinecaptionsfalse + \begingroup \setlength{\@tempdima}{\hsize}% \setlength{\@tempdimb}{#2}% \addtolength{\@tempdima}{-\@tempdimb}% \setlength{\@tempdimc}{#1}% \addtolength{\@tempdima}{-\@tempdimc}% - \edef\@tempa{\endgroup% + \edef\@tempa{\endgroup \def\noexpand\cap@width{\the\@tempdima}% \def\noexpand\cap@left{\noexpand\hspace*{\the\@tempdimc}}% - \def\noexpand\cap@right{\noexpand\hspace*{\the\@tempdimb}}}% - \@tempa}% - } + \def\noexpand\cap@right{\noexpand\hspace*{\the\@tempdimb}}% + }% + \@tempa + }% +} \AfterPackage{caption2}{% \renewcommand*{\@setcapmargin}[2][\@tempdimb]{% \setlength{\@tempdimb}{#2}% \setlength{\@tempdima}{#1}% \ifdim\@tempdima\@tempdimb\else - \ClassWarning{% - scrbook% - }{% + \ClassWarning{\KOMAClassName}{% Can set only centered caption!\MessageBreak You're using package caption2.\MessageBreak Because of this you should also use \string\setcaptionmargin\MessageBreak instead of \string\setcapmargin - } + }% \fi \addtolength{\@tempdimb}{\@tempdimb}% - \setcaptionmargin{.5\@tempdimb}} + \setcaptionmargin{.5\@tempdimb}}% \let\@@setcapmargin=\@setcapmargin - } +} \newcommand{\@@makecaption}[3]{% - \cap@margin% - \ifonelinecaptions% + \cap@margin + \ifonelinecaptions \@tempcnta=\value{mpfootnote}\@tempcntb=\value{footnote}% \let\scr@tmp@footnotetext=\@footnotetext \let\@footnotetext=\@gobble \sbox\@tempboxa{% - {\capfont#1{{\caplabelfont#2\captionformat}}% + {\capfont\strut\ignorespaces + #1{{\caplabelfont#2\captionformat}}% #3}% - }% + }% \let\@footnotetext=\scr@tmp@footnotetext \let\scr@tmp@footnotetext=\undefined - \setcounter{footnote}{\@tempcntb}\setcounter{mpfootnote}{\@tempcnta}% + \setcounter{footnote}{\@tempcntb}% + \setcounter{mpfootnote}{\@tempcnta}% \else \sbox\@tempboxa{\hspace*{2\cap@width}}% \fi \begingroup% - \setlength{\@tempdima}{\wd\@tempboxa}% \setlength{\@tempdima}{\cap@width}% - \ifdim \wd\@tempboxa >\@tempdima% - \strut\cap@left% - \vtop{\hsize=\cap@width% - \ifdofullc@p - {\capfont\@hangfrom{#1{{\caplabelfont#2\captionformat}}}{#3\par}} - \else% - \ifdim\cap@indent<\z@% - {\capfont#1{{\caplabelfont #2\captionformat\par}}\noindent% - \hspace*{-\cap@indent}#3\par} + \ifdim \wd\@tempboxa >\@tempdima + \hb@xt@\hsize{% + \setbox\@tempboxa\vbox{\hsize=\cap@width + \ifdofullc@p + {\capfont\@hangfrom{\strut\ignorespaces + #1{{\caplabelfont#2\captionformat}}}% + {#3\par}}% \else% - \if@capbreak - {\capfont#1{{\caplabelfont #2\captionformat\par}}\noindent% - \@hangfrom{\hspace*{\cap@indent}}{#3\par}} - \else - {\capfont\@hangfrom{\hspace*{\cap@indent}}% - {\hspace{-\cap@indent}#1% - {{\caplabelfont#2\captionformat}}#3\par}} + \ifdim\cap@indent<\z@ + {\capfont\strut\ignorespaces + #1{{\caplabelfont #2\captionformat\par}}% + \noindent\hspace*{-\cap@indent}#3\par}% + \else% + \if@capbreak + {\capfont\strut\ignorespaces + #1{{\caplabelfont #2\captionformat\par}}% + \noindent\@hangfrom{\hspace*{\cap@indent}}{#3\par}}% + \else + {\capfont\@hangfrom{\strut\hspace*{\cap@indent}}% + {\hspace{-\cap@indent}\ignorespaces#1% + {{\caplabelfont#2\captionformat}}#3\par}}% + \fi \fi \fi - \fi}% - \cap@right\strut% + }% + \setlength{\@tempdima}{\ht\@tempboxa}% + \addtolength{\@tempdima}{\dp\@tempboxa}% + \addtolength{\@tempdima}{-\ht\strutbox}% + \ht\@tempboxa\ht\strutbox + \dp\@tempboxa\@tempdima + \strut\cap@left + \box\@tempboxa + \cap@right\strut + }% \else \global \@minipagefalse \sbox\@tempboxa{% - {\capfont#1{{\caplabelfont#2\captionformat}}% + {\capfont\strut\ignorespaces + #1{{\caplabelfont#2\captionformat}}% #3}% }% - \hb@xt@\hsize{\cap@left\box\@tempboxa\cap@right}% - \fi% - \endgroup} + \hb@xt@\hsize{\strut\cap@left\box\@tempboxa\cap@right\strut}% + \fi + \endgroup +} \AfterPackage{longtable}{% - \@ifpackageloaded{caption2}{\@komalongtablefalse% - \ClassWarning{% - scrbook}{% + \@ifpackageloaded{caption2}{\@komalongtablefalse + \ClassWarning{\KOMAClassName}{% you've loaded package caption2 before package\MessageBreak longtable!\MessageBreak Because of this package caption2 isn't able to @@ -1744,10 +2385,11 @@ bk% \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 caption2 after + I think, you should load package caption after package\MessageBreak - longtable% - }}{} + longtable and use the new interface% + }% + }{}% \if@komalongtable \renewcommand{\LT@makecaption}[3]{% \noalign{% @@ -1772,7 +2414,7 @@ bk% }% }% \newcommand*{\scr@LT@array}{}% - \let\scr@LT@array=\LT@array% + \let\scr@LT@array=\LT@array \renewcommand*{\LT@array}{% \let\scr@caption=\LT@caption \def\captionabove{\noalign{\global\@captionabovetrue}% @@ -1784,200 +2426,184 @@ bk% \else \let\LT@caption=\captionbelow \fi - \scr@LT@array} - \ClassInfo{% - scrbook}{% - longtable captions redefined} + \scr@LT@array + }% + \ClassInfo{\KOMAClassName}{% + longtable captions redefined% + }% \fi - } +} \newcommand*{\fs@komaabove}{% \let\@fs@capt\floatc@komascript \let\@fs@pre\@empty - \def\@fs@mid{\vskip\abovecaptionskip} + \def\@fs@mid{\vskip\abovecaptionskip}% \let\@fs@post\@empty \let\@fs@iftopcapt\iftrue} \newcommand*{\fs@komabelow}{% \let\@fs@capt\floatc@komascript \let\@fs@pre\@empty - \def\@fs@mid{\vskip\abovecaptionskip} + \def\@fs@mid{\vskip\abovecaptionskip}% \let\@fs@post\@empty \let\@fs@iftopcapt\iffalse} \newcommand{\floatc@komascript}{\@@makecaption\@firstofone} -\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm} -\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf} -\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt} -\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf} -\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit} -\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl} -\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc} -\DeclareOldFontCommand{\sfb}{\normalfont\sffamily\bfseries}{\@nomath\sfb} -\DeclareRobustCommand*{\cal}{\@fontswitch\relax\mathcal} -\DeclareRobustCommand*{\mit}{\@fontswitch\relax\mathnormal} -\newcommand*\descfont{\sffamily\bfseries} -\newcommand*\sectfont{\normalcolor\sffamily\bfseries} -\newcommand*\pnumfont{\normalfont\normalcolor} -\newcommand*\headfont{\normalfont\normalcolor\slshape} -\newcommand*\capfont{\normalfont\normalcolor} -\newcommand*\caplabelfont{\normalfont\normalcolor} -\newcommand*\titlefont{\sectfont} -\newcommand*{\setkomafont}[2]{% - \@ifundefined{scr@fnt@#1}{% - \@ifundefined{scr@fnt@instead@#1}{% - \ClassError{% - scrbook% - }{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} - }{% - \ClassError{% - scrbook% - }{font of element `#1' can't be set}{% - You've told me to redefine the font selection of the element,% - \MessageBreak% - but the element does not use a special font - selection. The\MessageBreak - The font of `#1' may be changed with element `\csname - scr@fnt@instead@#1\endcsname'} - }% - }{% - \expandafter\expandafter\expandafter\renewcommand% - \csname scr@fnt@#1\endcsname{#2}% - \@ifundefined{scr@fnt@wrn@#1}{}{% - \ClassWarning{% - scrbook% - }{\csname scr@fnt@wrn@#1\endcsname{#1}} - } - } +\setcounter{topnumber}{2} +\renewcommand*\topfraction{.7} +\setcounter{bottomnumber}{1} +\renewcommand*\bottomfraction{.3} +\setcounter{totalnumber}{3} +\renewcommand*\textfraction{.2} +\renewcommand*\floatpagefraction{.5} +\setcounter{dbltopnumber}{2} +\renewcommand*\dbltopfraction{.7} +\renewcommand*\dblfloatpagefraction{.5} +\newcommand*\figurename{Figure} +\newcommand*\tablename{Table} +\newcounter{figure}[chapter] +\renewcommand*\thefigure{% + \thechapter.% + \@arabic\c@figure } -\newcommand{\l@addto@macro}[2]{% - \begingroup% - \toks@\expandafter{#1#2}% - \edef\@tempa{\endgroup\def\noexpand#1{\the\toks@}}% - \@tempa} -\newcommand*{\addtokomafont}[2]{% - \@ifundefined{scr@fnt@#1}{% - \@ifundefined{scr@fnt@instead@#1}{% - \ClassError{% - scrbook% - }{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} - }{% - \ClassError{% - scrbook% - }{font of element `#1' can't be extended}{% - You've told me to extend the font selection of the element,% - \MessageBreak% - but the element does not use a special font - selection. The\MessageBreak - The font of `#1' may be changed with element `\csname - scr@fnt@instead@#1\endcsname'} - }% - }{% - \expandafter\expandafter\expandafter\l@addto@macro% - \csname scr@fnt@#1\endcsname{#2}% - \@ifundefined{scr@fnt@wrn@#1}{}{% - \ClassWarning{% - scrbook% - }{\csname scr@fnt@wrn@#1\endcsname{#1}} - } - } +\newcommand*{\figureformat}{% + \figurename~\thefigure% + \autodot% } -\newcommand*{\usekomafont}[1]{% - \@ifundefined{scr@fnt@#1}{% - \@ifundefined{scr@fnt@instead@#1}{% - \ClassError{% - scrbook% - }{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} - }{% - \ClassWarning{% - scrbook% - }{% - You've told me to use the font selection of the element,% - \MessageBreak% - but the element does not use a special font - selection. The\MessageBreak - The font of `#1' may be selected with element `\csname - scr@fnt@instead@#1\endcsname'.\MessageBreak - I fix this using font of `\csname - scr@fnt@instead@#1\endcsname'}% +\newcommand*{\fps@figure}{tbp} +\newcommand*{\ftype@figure}{1} +\newcommand*{\ext@figure}{lof} +\newcommand*{\fnum@figure}{\figureformat} +\newenvironment{figure}{% + \let\caption\captionbelow\@float{figure}% +}{% + \end@float +} +\newenvironment{figure*}{% + \let\caption\captionbelow\@dblfloat{figure}% +}{% + \end@dblfloat +} +\newcounter{table}[chapter] +\renewcommand*\thetable{% + \thechapter.% + \@arabic\c@table +} +\newcommand*{\tableformat}{% + \tablename~\thetable% + \autodot% +} +\newcommand*{\fps@table}{tbp} +\newcommand*{\ftype@table}{2} +\newcommand*{\ext@table}{lot} +\newcommand*{\fnum@table}{\tableformat} +\newenvironment{table}{% + \if@tablecaptionabove\let\caption\captionabove + \else\let\caption\captionbelow\fi + \@float{table}% +}{% + \end@float +} +\newenvironment{table*}{% + \if@tablecaptionabove\let\caption\captionabove + \else\let\caption\captionbelow\fi + \@dblfloat{table}% +}{% + \end@dblfloat +} +%%% From File: scrkftn.dtx +\renewcommand*\footnoterule{% + \kern-3\p@ + \ifx\@textbottom\relax\else\vskip \z@ \@plus.05fil\fi + \hrule\@width.4\columnwidth + \kern 2.6\p@} +\@addtoreset{footnote}{chapter} +\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 }% - \@nameuse{scr@fnt@instead@#1}% - }{% - \@nameuse{scr@fnt@#1}% - }% - } -\newcommand*{\scr@fnt@descriptionlabel}{\descfont} -\newcommand*{\scr@fnt@title}{\titlefont} -\newcommand*{\scr@fnt@sectioning}{\sectfont} -\newcommand*{\scr@fnt@part}{\size@part} -\newcommand*{\scr@fnt@partnumber}{\size@partnumber} -\newcommand*{\scr@fnt@chapter}{\size@chapter} -\newcommand*{\scr@fnt@section}{\size@section} -\newcommand*{\scr@fnt@subsection}{\size@subsection} -\newcommand*{\scr@fnt@subsubsection}{\size@subsubsection} -\newcommand*{\scr@fnt@paragraph}{\size@paragraph} -\newcommand*{\scr@fnt@subparagraph}{\size@subparagraph} -\newcommand*{\scr@fnt@instead@minisec}{sectioning} -\newcommand*{\scr@fnt@pagenumber}{\pnumfont} -\let\scr@fnt@pagination=\scr@fnt@pagenumber -\newcommand*{\scr@fnt@pagehead}{\headfont} -\newcommand*{\scr@fnt@wrn@pagehead}[1]{% - font selection of elements `pagehead' and `pagefoot'\MessageBreak - changed, because you wanted to change font selection\MessageBreak - of element `#1'% + \fi + \par + \parindent\@tempdimc\noindent + \ftn@font\hbox to \z@{\hss\@@makefnmark}##1% + }% + \def\@@makefnmark{\hbox{\ftnm@font{#4}}}% } -\let\scr@fnt@pagefoot=\scr@fnt@pagehead -\let\scr@fnt@wrn@pagefoot=\scr@fnt@wrn@pagehead -\newcommand*{\scr@fnt@caption}{\capfont} -\newcommand*{\scr@fnt@captionlabel}{\caplabelfont} +\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} +\newcommand*{\thefootnotemark}{\@thefnmark} +\deffootnote[1em]{1.5em}{1em}{\textsuperscript{\thefootnotemark}} +\deffootnotemark{\textsuperscript{\thefootnotemark}} +%%% From File: scrkliof.dtx +\renewcommand*{\numberline}[1]{% + \hb@xt@\@tempdima{#1\autodot\hfil}} \newcommand*\@pnumwidth{1.55em} \newcommand*\@tocrmarg {2.55em} \newcommand*\@dotsep{4.5} -\setcounter{tocdepth}{2} -\newcommand*\toc@heading{\section*{\contentsname - \@mkboth{\contentsname}{\contentsname}}} -\newcommand*{\scr@dottedtocline}{}% -\newcommand*{\scr@numberline}{}% -\newcommand*{\last@l@number}{}% +\newcommand*{\scr@dottedtocline}{} +\newcommand*{\scr@numberline}{} +\newcommand*{\last@l@number}{} \newcommand*{\@l@number}{} \newcommand*{\set@l@number}[1]{% \settowidth{\@tempdima}{#1\enskip}% - \ifdim\@tempdima >\@l@number\relax% + \ifdim\@tempdima >\@l@number \xdef\@l@number{\the\@tempdima}% \fi% - \ifdim\@tempdima >\last@l@number \else% + \ifdim\@tempdima >\last@l@number \else \setlength{\@tempdima}{\last@l@number}% \fi% } \newcommand*{\before@starttoc}[1]{ - \let\scr@dottedtocline=\@dottedtocline% + \let\scr@dottedtocline=\@dottedtocline \renewcommand*{\@dottedtocline}[3]{% \scr@dottedtocline{##1}{\z@}{\last@l@number}}% - \let\scr@numberline=\numberline% + \let\scr@numberline=\numberline \renewcommand*{\numberline}[1]{% \set@l@number{##1}\scr@numberline{##1}}% \gdef\@l@number{\z@}% \@ifundefined{#1@l@number}{% \def\last@l@number{2em}% - }{% - \expandafter\let\expandafter\last@l@number - \expandafter=\csname#1@l@number\endcsname% - }% - } + }{% + \expandafter\ifx\csname #1@l@number\endcsname\@empty + \let\last@l@number\z@ + \else + \expandafter\let\expandafter\last@l@number + \expandafter=\csname#1@l@number\endcsname + \fi + }% +} \newcommand*{\after@starttoc}[1]{% \protected@write\@auxout{}{% \string\gdef\expandafter\string\csname#1@l@number\endcsname{% \@l@number}}% } +\newcommand*\contentsname{Contents} +\setcounter{tocdepth}{2} +\newcommand*\toc@heading{% + \chapter*{\contentsname}% + \@mkboth{\contentsname}{\contentsname}% +} \newcommand*{\toc@l@number}{} \newcommand*{\tableofcontents}{% \begingroup @@ -1986,70 +2612,27 @@ bk% \else \@restonecolfalse \fi - \chapter*{\contentsname - \@mkboth{\contentsname}{\contentsname}}% - \@parskipfalse\@parskip@indent% - \if@tocleft\before@starttoc{toc}\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@tocleft\after@starttoc{toc}\fi \if@restonecol\twocolumn\fi \endgroup } -\newcommand*\l@part[2]{% - \ifnum \c@tocdepth >-2\relax - \addpenalty{-\@highpenalty}% - \addvspace{2.25em \@plus\p@}% - \setlength\@tempdima{2em}% - \if@tocleft - \ifx\toc@l@number\@empty\else - \setlength\@tempdima{0\toc@l@number}% - \fi - \fi - \begingroup - \parindent \z@ \rightskip \@pnumwidth - \parfillskip -\@pnumwidth - \leavevmode\sectfont\large - \advance\leftskip\@tempdima - \hskip -\leftskip - #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par - \penalty\@highpenalty - \endgroup - \fi} -\newcommand*\l@chapter[2]{% - \ifnum \c@tocdepth >\m@ne - \addpenalty{-\@highpenalty}% - \vskip 1.0em \@plus\p@ - \setlength\@tempdima{1.5em}% - \if@tocleft - \ifx\toc@l@number\@empty\else - \setlength\@tempdima{0\toc@l@number}% - \fi - \fi - \begingroup - \parindent \z@ \rightskip \@pnumwidth - \parfillskip -\@pnumwidth - \leavevmode \sectfont - \advance\leftskip\@tempdima - \hskip -\leftskip - #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par - \penalty\@highpenalty - \endgroup - \fi} -\newcommand*\l@section{\@dottedtocline{1}{1.5em}{2.3em}} -\newcommand*\l@subsection{\@dottedtocline{2}{3.8em}{3.2em}} -\newcommand*\l@subsubsection{\@dottedtocline{3}{7.0em}{4.1em}} -\newcommand*\l@paragraph{\@dottedtocline{4}{10em}{5em}} -\newcommand*\l@subparagraph{\@dottedtocline{5}{12em}{6em}} \newcommand*{\float@listhead}[1]{% \chapter*{#1}% \@mkboth{#1}{#1}% \if@dynlist% \newcommand*{\scr@starttoc}{}% - \let\scr@starttoc=\@starttoc% + \let\scr@starttoc=\@starttoc \renewcommand*{\@starttoc}[1]{% - \before@starttoc{##1}\scr@starttoc{##1}\after@starttoc{##1}}% - \fi% + \before@starttoc{##1}\scr@starttoc{##1}\after@starttoc{##1}% + }% + \fi } +\newcommand*\listfigurename{List of Figures} +\newcommand*\listtablename{List of Tables} \newcommand*\lof@heading{\float@listhead{\listfigurename}} \newcommand*\listoffigures{% \begingroup% @@ -2059,7 +2642,7 @@ bk% \@restonecolfalse \fi \lof@heading% - \@parskipfalse\@parskip@indent% + \setparsizes{0}{0}{\z@\@plus 1fil}\par@updaterelative \@starttoc{lof}% \if@restonecol\twocolumn\fi \endgroup @@ -2073,312 +2656,212 @@ bk% \else \@restonecolfalse \fi - \lot@heading% - \@parskipfalse\@parskip@indent% + \lot@heading + \setparsizes{0}{0}{\z@\@plus 1fil}\par@updaterelative \@starttoc{lot}% \if@restonecol\twocolumn\fi \endgroup } \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} + \chapter*{\bibname}% + \@mkboth{\bibname}{\bibname}% } \newdimen\bibindent \bibindent=1.5em \newenvironment{thebibliography}[1]{% \ifx\bibpreamble\relax\else\ifx\bibpreamble\@empty\else - \setchapterpreamble{\bibpreamble}% + \setchapterpreamble{\bibpreamble}% \fi\fi - \bib@heading% - \list{\@biblabel{\@arabic\c@enumiv}}% - {\settowidth\labelwidth{\@biblabel{#1}}% + \bib@heading + \list{% + \@biblabel{\@arabic\c@enumiv}% + }{% + \settowidth\labelwidth{\@biblabel{#1}}% \leftmargin\labelwidth \advance\leftmargin\labelsep \@openbib@code \usecounter{enumiv}% \let\p@enumiv\@empty - \renewcommand*\theenumiv{\@arabic\c@enumiv}}% - \sloppy\clubpenalty4000\widowpenalty4000% - \sfcode`\.=\@m} -{\def\@noitemerr - {\@latex@warning{Empty `thebibliography' environment}}% - \endlist} + \renewcommand*\theenumiv{\@arabic\c@enumiv}% + }% + \sloppy\clubpenalty4000 \widowpenalty4000 + \sfcode`\.=\@m +}{% + \def\@noitemerr{% + \@latex@warning{Empty `thebibliography' environment}% + }% + \endlist +} \newcommand*\newblock{\hskip .11em\@plus.33em\@minus.07em} \let\@openbib@code\@empty -\newcommand*{\index@preamble}{\relax} -\newcommand{\setindexpreamble}[1]{\renewcommand*{\index@preamble}{#1}} +%%% 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[\chapter*{\indexname}]% \@mkboth{\indexname}{\indexname}% } -\newenvironment{theindex} - {\if@twocolumn +\newenvironment{theindex}{% + \if@twocolumn \@restonecolfalse - \else + \else \@restonecoltrue - \fi - \columnseprule \z@ - \columnsep 35\p@ - \setchapterpreamble{\index@preamble} - \idx@heading% - \thispagestyle{\indexpagestyle}\parindent\z@ - \setlength{\parskip}{\z@ \@plus .3\p@} - \setlength{\parfillskip}{\z@ \@plus 1fil} - \let\item\@idxitem} - {\if@restonecol\onecolumn\else\clearpage\fi} -\newcommand*\@idxitem {\par\hangindent 40\p@} -\newcommand*\subitem {\@idxitem \hspace*{20\p@}} + \fi + \columnseprule \z@ + \columnsep 35\p@ + \setchapterpreamble{\index@preamble}% + \idx@heading% + \thispagestyle{\indexpagestyle}\parindent\z@ + \setlength{\parskip}{\z@ \@plus .3\p@}% + \setlength{\parfillskip}{\z@ \@plus 1fil}% + \let\item\@idxitem +}{% + \if@restonecol\onecolumn\else\clearpage\fi +} +\newcommand*\@idxitem{\par\hangindent 40\p@} +\newcommand*\subitem{\@idxitem \hspace*{20\p@}} \newcommand*\subsubitem{\@idxitem \hspace*{30\p@}} -\newcommand*\indexspace{\par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax} -\renewcommand*\footnoterule{% - \kern-3\p@ - \ifx\@textbottom\relax\else\vskip \z@ \@plus.0005fil\fi - \hrule\@width.4\columnwidth - \kern 2.6\p@} -\@addtoreset{footnote}{chapter} -\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*\indexspace{% + \par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax } -\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} -\newcommand*{\thefootnotemark}{\@thefnmark} -\deffootnote[1em]{1.5em}{1em} - {\textsuperscript{\thefootnotemark}} -\deffootnotemark{\textsuperscript{\thefootnotemark}} -\DeclareRobustCommand*\textsubscript[1]{% - \@textsubscript{\selectfont#1}} -\newcommand{\@textsubscript}[1]{% - {\m@th\ensuremath{_{\mbox{\fontsize\sf@size\z@#1}}}}} -\newcommand*\contentsname{Contents} -\newcommand*\listfigurename{List of Figures} -\newcommand*\listtablename{List of Tables} -\newcommand*\bibname{Bibliography} \newcommand*\indexname{Index} -\newcommand*\figurename{Figure} -\newcommand*\tablename{Table} -\newcommand*\partname{Part} -\newcommand*\chaptername{Chapter} -\newcommand*\appendixname{Appendix} -\newcommand*\abstractname{Abstract} -\newcommand*\today{\ifcase\month\or - January\or February\or March\or April\or May\or June\or - July\or August\or September\or October\or November\or December\fi - \space\number\day, \number\year} -\newcommand*{\providecaptionname}[3]{% - \@ifundefined{captions#1}{% - \@ifundefined{cap@info@#1@done}{% - \ClassInfo{% - scrlttr2% - }{% - 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% - \def\@tempb{#1}% - \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{% - scrlttr2% - }{% - `\string#2' at language `#1' already - defined\MessageBreak - --> skipped% - }% - \fi - \@tempa +%%% From File: scrklist.dtx +\if@twocolumn + \setlength{\leftmargini}{2em} +\else + \setlength{\leftmargini}{2.5em} +\fi +\setlength{\leftmarginii}{2.2em} +\setlength{\leftmarginiii}{1.87em} +\setlength{\leftmarginiv}{1.7em} +\if@twocolumn + \setlength{\leftmarginv}{.5em} + \setlength{\leftmarginvi}{.5em} +\else + \setlength{\leftmarginv}{1em} + \setlength{\leftmarginvi}{1em} +\fi +\setlength{\leftmargin}{\leftmargini} +\setlength{\labelsep}{.5em} +\setlength{\labelwidth}{\leftmargini} +\addtolength{\labelwidth}{-\labelsep} +\@beginparpenalty=-\@lowpenalty +\@endparpenalty =-\@lowpenalty +\@itempenalty =-\@lowpenalty +\setlength\arraycolsep{5\p@} +\setlength\tabcolsep{6\p@} +\setlength\arrayrulewidth{.4\p@} +\setlength\doublerulesep{2\p@} +\setlength\tabbingsep{\labelsep} +\renewcommand*\theenumi{\@arabic\c@enumi} +\renewcommand*\theenumii{\@alph\c@enumii} +\renewcommand*\theenumiii{\@roman\c@enumiii} +\renewcommand*\theenumiv{\@Alph\c@enumiv} +\newcommand*\labelenumi{\theenumi.} +\newcommand*\labelenumii{\theenumii)} +\newcommand*\labelenumiii{\theenumiii.} +\newcommand*\labelenumiv{\theenumiv.} +\renewcommand*\p@enumii{\theenumi} +\renewcommand*\p@enumiii{\p@enumii(\theenumii)} +\renewcommand*\p@enumiv{\p@enumiii\theenumiii} +\newcommand*\labelitemi{\textbullet} +\newcommand*\labelitemii{\normalfont\bfseries\textendash} +\newcommand*\labelitemiii{\textasteriskcentered} +\newcommand*\labelitemiv{\textperiodcentered} +\newenvironment{description}{% + \list{}{\labelwidth\z@ \itemindent-\leftmargin + \let\makelabel\descriptionlabel}% +}{% + \endlist +} +\newcommand*{\descriptionlabel}[1]{% + \hspace{\labelsep}\descfont #1% +} +\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{verse}{% + \let\\=\@centercr + \list{}{\itemsep=\z@ + \itemindent=-1.5em + \listparindent=\itemindent + \rightmargin=\leftmargin + \advance\leftmargin by1.5em }% + \item\relax +}{% + \endlist } -\newcommand*{\newcaptionname}[3]{% - \@ifundefined{captions#1}{% - \ClassInfo{% - scrlttr2% - }{% - No captions found for `#1' --> defining% - }% - \@namedef{captions#1}{}% - }{}% - \begingroup% - \csname captions#1\endcsname% - \ifx #2\undefined\else% - \ClassError{% - scrlttr2% - }{% - `\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 - \def\@tempb{#1}% - \ifx\@tempb\languagename - \def\@tempa{\endgroup\csname captions#1\endcsname}% - \else - \let\@tempa\endgroup - \fi - \@tempa +\newenvironment{quotation}{% + \list{}{\listparindent 1em% + \itemindent \listparindent + \rightmargin \leftmargin + \parsep \z@ \@plus\p@ + }% + \item\relax +}{% + \endlist } -\newcommand*{\renewcaptionname}[3]{% - \@ifundefined{captions#1}{% - \ClassError{% - scrlttr2% - }{% - 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{% - scrlttr2% - }{% - `\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 - \def\@tempb{#1}% - \ifx\@tempb\languagename - \def\@tempa{\endgroup\csname captions#1\endcsname}% - \else - \let\@tempa\endgroup - \fi - \@tempa +\newenvironment{quote}{% + \list{}{\rightmargin\leftmargin}% + \item\relax +}{% + \endlist } -\newif\if@altsecnumformat\@altsecnumformatfalse -\newif\if@autodot\@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% - \fi% - \@@maybeautodot} -\let\scr@sect\@sect -\renewcommand*{\@sect}[1]{\stepcounter{#1}% - \expandafter\@maybeautodot\csname the#1\endcsname% - \addtocounter{#1}{-1}\scr@sect{#1}} -\AtEndDocument{% - \if@autodot\if@filesw\immediate\write\@mainaux{% - \string\global\string\@altsecnumformattrue} - \fi\fi} -\newcommand*\autodot{\if@altsecnumformat.\fi} -\newcommand*\chaptermarkformat {\chapappifchapterprefix{\ }% - \thechapter\autodot\enskip} -\newcommand*\sectionmarkformat {\thesection\autodot\enskip} -\newcommand*{\partformat}{\partname~\thepart\autodot} -\newcommand*{\chapterformat}{% - \chapappifchapterprefix{\ }\thechapter\autodot\enskip} -\newcommand*{\figureformat}{\figurename~\thefigure% - \autodot% - } -\newcommand*{\tableformat}{\tablename~\thetable% - \autodot% +\newenvironment{addmargin}{% + \@tempswafalse\@addmargin +}{% + \advance\@listdepth\@ne + \endlist } -\newcommand*{\captionformat}{:\ } -\newcommand*{\chapappifprefix}[1][]{% - \ClassWarning{% - scrbook% - }{% - Please don't use obsolete command - \string\chapappifprefix.\MessageBreak - The new command \string\chapappifchapterprefix\space has - an\MessageBreak - obligatory instead of an optional argument. Use that\MessageBreak - new command% +\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 }% - \if@chapterprefix\chapapp#1\fi} -\newcommand*{\chapappifchapterprefix}[1]{\if@chapterprefix\chapapp#1\fi} -\newcommand*{\chapapp}{\@chapapp} -\newcommand*{\othersectionlevelsformat}[1]{% - \csname the#1\endcsname\autodot\enskip} -\renewcommand*{\@seccntformat}{\protect\othersectionlevelsformat} -\pagestyle{headings} -\pagenumbering{arabic} % Arabic page numbers -\if@twocolumn - \twocolumn - \sloppy - \flushbottom -\else - \onecolumn -\fi + \item\relax% +} +\newcommand*\descfont{\sffamily\bfseries} +\newcommand*{\scr@fnt@descriptionlabel}{\descfont} +%%% From File: scrlogo.dtx \@ifundefined{KOMAScript}{% \DeclareRobustCommand{\KOMAScript}{\textsf{K\kern.05em O\kern.05em% M\kern.05em A\kern.1em-\kern.1em Script}}}{} diff --git a/Master/texmf-dist/tex/latex/koma-script/scrdate.sty b/Master/texmf-dist/tex/latex/koma-script/scrdate.sty index 78e0fad466b..d111c410519 100644 --- a/Master/texmf-dist/tex/latex/koma-script/scrdate.sty +++ b/Master/texmf-dist/tex/latex/koma-script/scrdate.sty @@ -5,47 +5,42 @@ %% The original source files were: %% %% scrtime.dtx (with options: `scrdate') -%% scrlogo.dtx +%% scrlogo.dtx (with options: `logo') %% -%% Copyright (C) 1994-2004 by Markus Kohm. +%% Copyright (c) 1994-2006 +%% Markus Kohm and any individual authors listed elsewhere in this file. %% -%% All rights reserved. For further copyright information see the file -%% legal.txt, and any other copyright indicated in this file. +%% This file was generated from file(s) of the KOMA-Script bundle. +%% --------------------------------------------------------------- %% -%% This file is part of the LaTeX2e 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'. %% -%% The KOMA-Script-bundle (but not this file) bases on the -%% Script-family created by Frank Neukam 1993 and the standard -%% documents classes created by the LaTeX3-Team 1994-1996. -%% ------------------------------------------------------------- +%% 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. %% -%% This system is distributed in the hope that it will be useful, -%% but WITHOUT ANY WARRANTY; without even the implied warranty of -%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +%% 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. %% -%% IMPORTANT NOTICE: +%% English and German manuals are part of KOMA-Script bundle. +%% ---------------------------------------------------------- %% -%% For error reports in case of UNCHANGED versions see documentation. +%% See `README'. %% -%% Please do not request updates from us directly. Distribution is -%% done through Mail-Servers, Mailboxes and TeX organizations. -%% -%% You are not allowed to change this file. -%% -%% You are allowed to distribute this file under the condition that -%% it is distributed together with all files mentioned in readme.txt -%% and liesmich.txt. See LEGAL.TXT or LEGALDE.TXT for further -%% information. -%% -%% If you receive only some of these files from someone, complain! -%% -%% You are NOT ALLOWED to distribute this file alone. +%% 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: scrtime.dtx \NeedsTeXFormat{LaTeX2e}[1995/12/01] \ProvidesPackage{scrdate} - [2002/02/02 v1.1m LaTeX2e KOMA + [2006/03/30 v1.1o LaTeX2e KOMA-Script package] \newcommand\todaysname{% \begingroup% @@ -144,7 +139,9 @@ \newdaylanguage{croatian}{Ponedjeljak}{Utorak}{Srijeda} {\v{C}etvrtak}{Petak}{Subota}{Nedjelja} \newdaylanguage{dutch}{Maandag}{Dinsdag}{Woensdag} - {Donderdag}{Vrijdag}{Zaterdag}{Zondag} + {Donderdag}{Vrijdag}{Zaterdag}{Zondag} +\newdaylanguage{finnish}{maanantai}{tiistai}{keskiviikko} + {torstai}{perjantai}{lauantai}{sunnuntai} \def\@dayname#1{% \begingroup% \@tempcnta #1% @@ -157,6 +154,7 @@ * Local config file scrdate.cfg used^^J% *************************************}} {} +%%% From File: scrlogo.dtx \@ifundefined{KOMAScript}{% \DeclareRobustCommand{\KOMAScript}{\textsf{K\kern.05em O\kern.05em% M\kern.05em A\kern.1em-\kern.1em Script}}}{} diff --git a/Master/texmf-dist/tex/latex/koma-script/scrdoc.cls b/Master/texmf-dist/tex/latex/koma-script/scrdoc.cls new file mode 100644 index 00000000000..1173529737d --- /dev/null +++ b/Master/texmf-dist/tex/latex/koma-script/scrdoc.cls @@ -0,0 +1,351 @@ +% ====================================================================== +% scrdoc.dtx +% Copyright (C) 2002-2006 Markus Kohm +% +% This file is part of the LaTeX2e KOMA-Script bundle. +% +% This work may be distributed and/or modified under the conditions of +% the LaTeX Project Public License, version 1.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 work consists of all files listed in manifest.txt. +% ---------------------------------------------------------------------- +% scrdoc.dtx +% Copyright (C) 2002-2006 Markus Kohm +% +% Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz, +% Version 1.3b, verteilt und/oder veraendert werden. +% Die neuste Version dieser Lizenz ist +% http://www.latex-project.org/lppl.txt +% und Version 1.3b ist Teil aller Verteilungen von LaTeX +% Version 2005/12/01 oder spaeter und dieses Werks. +% +% Dieses Werk hat den LPPL-Verwaltungs-Status "author-maintained" +% (allein durch den Autor verwaltet). +% +% Der Aktuelle Verwalter und Autor dieses Werkes ist Markus Kohm. +% +% Dieses Werk besteht aus den in manifest.txt aufgefuehrten Dateien. +% ====================================================================== +% +% Note: This class was made to shrink size of dtx files. +% Do not use this class for anything because it may change +% incompatible from distribution to distribution +% + +\NeedsTeXFormat{LaTeX2e}[1995/12/01] +\ProvidesClass{scrdoc}[% + 2003/01/19 v0.1d KOMA-Script source documentation class] + +% Load standard LaTeX documentation class, passing all options to it +% but use scrartcl instead of article. +\IfFileExists{scrartcl.cls}{% + \newcommand*{\sd@saved@LoadClass}{} + \let\sd@saved@LoadClass=\LoadClass + \renewcommand*{\LoadClass}[2][]{% + \begingroup + \edef\@tempc{##2}\def\@tempb{article}% + \ifx\@tempc\@tempb + \let\LoadClass\sd@saved@LoadClass + \def\@tempc{scrartcl}% + \fi + \edef\@tempc{% + \noexpand\endgroup\noexpand\sd@saved@LoadClass[{##1}]{\@tempc}}% + \@tempc + } + \newcommand*{\sd@saved@PassOptionsToClass}{} + \let\sd@saved@PassOptionsToClass=\PassOptionsToClass + \renewcommand*{\PassOptionsToClass}[2]{% + \begingroup + \edef\@tempc{##2}\def\@tempb{article}% + \ifx\@tempc\@tempb + \def\@tempc{scrartcl}% + \fi + \edef\@tempc{% + \noexpand\endgroup\noexpand\sd@saved@PassOptionsToClass{##1}{% + \@tempc}}% + \@tempc + } +}{% + \typeout{^^J% + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!^^J% + !!! You should generate KOMA-Script classes first!^^J% + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!^^J% + ^^J% + }% +} +\LoadClassWithOptions{ltxdoc} + +% Use two columns at index +\setcounter{IndexColumns}{2} + +% If \EnableCrossrefs is used, we don't want following macros to be +% indexed: + +\DoNotIndex{\.,\\,\ ,\@Alph,\@M} +\DoNotIndex{\@abstrtfalse,\@abstrttrue,\@addtoreset,\@afterheading} +\DoNotIndex{\@afterindentfalse,\@alph,\@arabic} +\DoNotIndex{\@beginparpenalty} +\DoNotIndex{\@car,\@cdr,\@centercr} +\DoNotIndex{\@dblfloat,\@dotsep} +\DoNotIndex{\@dottedtocline,\@empty,\@endparpenalty} +\DoNotIndex{\@float,\@fontswitch} +\DoNotIndex{\@gobbletwo} +\DoNotIndex{\@hangfrom,\@highpenalty} +\DoNotIndex{\@ifnextchar,\@ifundefined,\@itempenalty} +\DoNotIndex{\@latex@warning} +\DoNotIndex{\@m,\@medpenalty,\@minus,\@mkboth,\@mparswitchfalse} +\DoNotIndex{\@mparswitchtrue} +\DoNotIndex{\@ne,\@nil,\@nobreakfalse,\@nobreaktrue,\@nomath} +\DoNotIndex{\@plus} +\DoNotIndex{\@tempa,\@tempcnta,\@tempdima,\@tempskipka} +\DoNotIndex{\@tempswafalse,\@tempswatrue} +\DoNotIndex{\@tempb,\@tempcntb,\@tempdimb,\@tempskipkb} +\DoNotIndex{\@tempswbfalse,\@tempswbtrue} +\DoNotIndex{\@tempc,\@tempcntc,\@tempdimc,\@tempskipkc} +\DoNotIndex{\@tocrmarg,\@topnewpage,\@topnum,\@twocolumnfalse} +\DoNotIndex{\@twocolumntrue,\@twosidefalse,\@twosidetrue} +\DoNotIndex{\@whiledim,\@whilenum} +\DoNotIndex{\addcontentsline,\addpenalty,\addtocontents,\addtolength} +\DoNotIndex{\addvspace,\advance} +\DoNotIndex{\begin,\begingroup,\bfseries,\box,\bullet} +\DoNotIndex{\c@figure,\c@page,\c@secnumdepth,\c@table,\c@tocdepth} +\DoNotIndex{\cdot,\centering,\changes,\cleardoublepage,\clearpage} +\DoNotIndex{\cmd,\col@number,\CurrentOption,\CodelineIndex,\cs} +\DoNotIndex{\day,\dblfloatpagefraction,\dbltopfraction} +\DoNotIndex{\DeclareOldFontCommand,\DeclareOption,\def,\DisableCrossrefs} +\DoNotIndex{\divide,\DoNotIndex} +\DoNotIndex{\ifdim,\else,\fi,\empty,\em,\EnableCrossrefs,\end} +\DoNotIndex{\end@dblfloat} +\DoNotIndex{\end@float,\endgroup,\endlist,\endquotation,\endtitlepage} +\DoNotIndex{\everypar,\ExecuteOptions,\expandafter} +\DoNotIndex{\fboxrule,\fboxsep} +\DoNotIndex{\gdef,\global} +\DoNotIndex{\hangindent,\hbox,\hfil,\hrule,\hsize,\hskip,\hspace,\hss} +\DoNotIndex{\if@tempswa,\ifcase,\or,\fi,\fi} +\DoNotIndex{\ifnum,\ifodd,\ifx,\fi,\fi,\fi} +\DoNotIndex{\include,\input,\InputIfFileExists,\item,\itshape} +\DoNotIndex{\kern,\leavevmode,\leftmark,\leftskip,\let,\lineskip} +\DoNotIndex{\list,\long} +\DoNotIndex{\m@ne,\m@th,\marginpar,\markboth,\markright,\mathbf,\mathcal} +\DoNotIndex{\mathit,\mathnormal,\mathrm,\mathsf,\mathtt,\MessageBreak} +\DoNotIndex{\month} +\DoNotIndex{\newblock,\newcommand,\newcount,\newcounter,\newdimen} +\DoNotIndex{\newenvironment,\newlength,\newpage,\nobreak,\noindent} +\DoNotIndex{\normalfont,\normallineskip,\normalsize,\null,\number} +\DoNotIndex{\numberline,\normalcolor} +\DoNotIndex{\OldMakeindex,\OnlyDescription,\overfullrule} +\DoNotIndex{\p@,\PackageError,\PackageInfo,\PackageWarningNoLine} +\DoNotIndex{\pagenumbering,\pagestyle,\par,\paragraph,\parbox} +\DoNotIndex{\PassOptionsToPackage,\pcal,\penalty,\pmit,\PrintChanges} +\DoNotIndex{\PrintIndex,\ProcessOptions,\protect,\providecommand} +\DoNotIndex{\ProvidesClass} +\DoNotIndex{\raggedbottom,\raggedleft,\raggedright,\refstepcounter,\relax} +\DoNotIndex{\renewcommand,\RequirePackage,\reset@font} +\DoNotIndex{\rightmargin,\rightmark,\rightskip,\rmfamily,\@Roman,\@roman} +\DoNotIndex{\scshape,\secdef,\setbox,\setcounter,\setlength} +\DoNotIndex{\settowidth,\sfcode,\sffamily,\skip,\sloppy,\slshape,\space} +\DoNotIndex{\string} +\DoNotIndex{\the,\thispagestyle,\triangleright,\ttfamily} +\DoNotIndex{\twocolumn,\typeout} +\DoNotIndex{\undefined,\usecounter} +\DoNotIndex{\vfil,\vfill,\vspace} +\DoNotIndex{\wd,\xdef,\year,\z@} +% More may be set by the source files. + +% Redefine some defaults to handle not only macros and environments +% but also options, Length, Counters, KOMAvars. Also define some new. +\def\macro{\begingroup + \catcode`\\12 + \MakePrivateLetters \m@cro@{0}} +\def\environment{\begingroup + \catcode`\\12 + \MakePrivateLetters \m@cro@{1}} +\def\option{\begingroup + \catcode`\\12 + \MakePrivateLetters \m@cro@{2}} +\def\Length{\begingroup + \catcode`\\12 + \MakePrivateLetters \m@cro@{3}} +\def\Counter{\begingroup + \catcode`\\12 + \MakePrivateLetters \m@cro@{4}} +\def\KOMAvar{\begingroup + \catcode`\\12 + \MakePrivateLetters \m@cro@{5}} +\def\KOMAfont{\begingroup + \catcode`\\12 + \MakePrivateLetters \m@cro@{6}} +\long\def\m@cro@#1#2{\endgroup \topsep\MacroTopsep \trivlist + \edef\saved@macroname{\string#2}% + \def\makelabel##1{\llap{##1}}% + \if@inlabel + \let\@tempa\@empty \count@\macro@cnt + \loop \ifnum\count@>\z@ + \edef\@tempa{\@tempa\hbox{\strut}}\advance\count@\m@ne + \repeat + \edef\makelabel##1{\llap{\vtop to\baselineskip + {\@tempa\hbox{##1}\vss}}}% + \advance \macro@cnt \@ne + \else \macro@cnt\@ne \fi + \edef\@tempa{\noexpand\item[% + \ifcase #1 + \noexpand\PrintMacroName + \or + \noexpand\PrintEnvName + \or + \noexpand\PrintOptionName + \or + \noexpand\PrintLengthName + \or + \noexpand\PrintCounterName + \or + \noexpand\PrintKOMAvarName + \or + \noexpand\PrintKOMAfontName + \fi + {\string#2}]}% + \@tempa + \global\advance\c@CodelineNo\@ne + \ifcase #1 + \SpecialMainIndex{#2}\nobreak + \DoNotIndex{#2}% + \or + \SpecialMainEnvIndex{#2}\nobreak + \or + \SpecialMainOptionIndex{#2}\nobreak + \or + \SpecialMainLengthIndex{#2}\nobreak + \DoNotIndex{#2}% + \or + \SpecialMainCounterIndex{#2}\nobreak + \or + \SpecialMainKOMAvarIndex{#2}\nobreak + \or + \SpecialMainKOMAfontIndex{#2}\nobreak + \fi + \global\advance\c@CodelineNo\m@ne + \ignorespaces} +\let\endoption\endmacro +\let\endLength\endmacro +\let\endCounter\endmacro +\let\endKOMAvar\endmacro + +% The new names we need +\providecommand*{\EnvName}{Umgebung}% This is german +\providecommand*{\EnvsName}{Umgebungen}% This is german +\providecommand*{\OptionName}{Option}% This is german +\providecommand*{\OptionsName}{Optionen}% This is german +\providecommand*{\PrintOptionName}[1]{\strut \MacroFont #1\ } +\providecommand*{\PrintDescribeOption}[1]{\strut \MacroFont #1\ } +\providecommand*{\LengthName}{L\"ange}% This is german +\providecommand*{\LengthsName}{L\"angen}% This is german +\providecommand*{\PrintLengthName}[1]{\strut \MacroFont \string #1\ } +\providecommand*{\PrintDescribeLength}[1]{\strut \MacroFont \string #1\ } +\providecommand*{\CounterName}{Z\"ahler}% This is german +\providecommand*{\CountersName}{Z\"ahler}% This is german +\providecommand*{\PrintCounterName}[1]{\strut \MacroFont #1\ } +\providecommand*{\PrintDescribeCounter}[1]{\strut \MacroFont #1\ } +\providecommand*{\KOMAvarName}{Variable}% This is german +\providecommand*{\KOMAvarsName}{Variablen}% This is german +\providecommand*{\PrintKOMAvarName}[1]{\strut \MacroFont #1\ } +\providecommand*{\PrintDescribeKOMAvar}[1]{\strut \MacroFont #1\ } +\providecommand*{\KOMAfontName}{Element mit Schrift}% This is german +\providecommand*{\KOMAfontsName}{Elemente mit Schrift}% This is german +\providecommand*{\PrintKOMAfontName}[1]{\strut \MacroFont #1\ } +\providecommand*{\PrintDescribeKOMAfont}[1]{\strut \MacroFont #1\ } + +% Defining new main index commands +\newcommand*{\SpecialMainIndex@Type}[3]{% + \@bsphack\special@index{% + #1\actualchar + {\string\ttfamily\space#1} + (\string #2)% + \encapchar main}% + \special@index{% + #3:\levelchar{% + \string\ttfamily\space#1}\encapchar + main}\@esphack} +\renewcommand*{\SpecialMainEnvIndex}[1]{% + \SpecialMainIndex@Type{#1}{\EnvName}{\EnvsName}} +\newcommand*{\SpecialMainOptionIndex}[1]{% + \SpecialMainIndex@Type{#1}{\OptionName}{\OptionsName}} +\newcommand*{\SpecialMainLengthIndex}[1]{% + \@bsphack\SpecialIndex@{#1}{(\string\LengthName )\encapchar main}% + \@esphack} +\newcommand*{\SpecialMainCounterIndex}[1]{% + \SpecialMainIndex@Type{#1}{\CounterName}{\CountersName}} +\newcommand*{\SpecialMainKOMAvarIndex}[1]{% + \SpecialMainIndex@Type{#1}{\KOMAvarName}{\KOMAvarsName}} +\newcommand*{\SpecialMainKOMAfontIndex}[1]{% + \SpecialMainIndex@Type{#1}{\KOMAfontName}{\KOMAfontsName}} + +% Defining new usage index commands +\newcommand*{\SpecialIndex@Type}[3]{% + \@bsphack + \index{#1\actualchar{\protect\ttfamily#1} + (#2)\encapchar usage}% + \index{#3:\levelchar{\protect\ttfamily#1}\encapchar + usage}\@esphack} +\renewcommand{\SpecialEnvIndex}[1]{% + \SpecialIndex@Type{#1}{\EnvName}{\EnvsName}} +\newcommand*{\SpecialOptionIndex}[1]{% + \SpecialMainIndex@Type{#1}{\OptionName}{\OptionsName}} +\newcommand*{\SpecialLengthIndex}[1]{\@bsphack% + {\let\special@index\index + \SpecialIndex@{#1}{(\string\LengthName )\encapchar usage}}% + \@esphack} +\newcommand*{\SpecialCounterIndex}[1]{% + \SpecialMainIndex@Type{#1}{\CounterName}{\CountersName}} +\newcommand*{\SpecialKOMAvarIndex}[1]{% + \SpecialMainIndex@Type{#1}{\KOMAvarName}{\KOMAvarsName}} + +% Define new describe commands +\newcommand*{\newDescribe}[1]{% + \expandafter\newcommand\expandafter*\csname Describe#1\endcsname{% + \leavevmode\@bsphack\begingroup\MakePrivateLetters + \csname Describe@#1\endcsname}% + \expandafter\newcommand\expandafter*\csname Describe@#1\endcsname[1]{% + \endgroup + \marginpar{\raggedleft\csname PrintDescribe#1\endcsname{##1}}% + \csname Special#1Index\endcsname{##1}\@esphack\ignorespaces}% +} +\newDescribe{Option} + +% We use left margin very much, so shift everything to the right +\if@twoside +\else +\addtolength{\oddsidemargin}{1in} +\setlength{\oddsidemargin}{1.5\oddsidemargin} +\addtolength{\oddsidemargin}{-1in} +\fi + +% We need some logos: +\providecommand*{\eTeX}{$\m@th\varepsilon$-\TeX} + +% Terms for other languages: +\AtBeginDocument{% + \begingroup\expandafter\expandafter\expandafter\endgroup + \expandafter\ifx\csname addto\endcsname\relax + \ClassWarning{scrdoc}{Package babel not loaded}% + \else + \addto\captionsenglish{% + \def\partname{File}% + }% + \addto\captionsngerman{% + \def\partname{Datei}% + }% + \ClassInfo{scrdoc}{Select language \languagename}% + \expandafter\selectlanguage\expandafter{\languagename}% + \fi +} + +\endinput +% end of ``scrdoc.cls'' diff --git a/Master/texmf-dist/tex/latex/koma-script/scrkbase.sty b/Master/texmf-dist/tex/latex/koma-script/scrkbase.sty new file mode 100644 index 00000000000..0f2579aa369 --- /dev/null +++ b/Master/texmf-dist/tex/latex/koma-script/scrkbase.sty @@ -0,0 +1,541 @@ +%% +%% This is file `scrkbase.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% scrkvers.dtx (with options: `package,scrkbase') +%% scrkbase.dtx (with options: `package,option') +%% scrlfile.dtx (with options: `load') +%% scrkbase.dtx (with options: `package,body') +%% scrlogo.dtx (with options: `logo') +%% +%% Copyright (c) 1994-2006 +%% 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{2006/07/30 v2.95b KOMA-Script}% +\endgroup +%%% From File: scrkbase.dtx +\ProvidesPackage{scrkbase}[% + \KOMAScriptVersion\space package (basics and keyval use)] +%%% From File: scrlfile.dtx +\def\scrlfileversion{2006/03/28 v2.95} +\edef\@tempa{\noexpand\RequirePackage{scrlfile}[\scrlfileversion]} +\@tempa +%%% From File: scrkbase.dtx +\RequirePackage{keyval} +\begingroup + \def\@tempa#1=#2=#3\relax{% + \KV@@sp@def\@tempa{#1}% + \ifx\@tempa\@empty\else + \expandafter\let\expandafter\@tempc + \csname\KV@prefix\@tempa\endcsname + \ifx\@tempc\relax + \KV@errx + {\@tempa\space undefined}% + \else + \ifx\@empty#3\@empty + \KV@default + \else + \KV@@sp@def\@tempb{#2}% + \expandafter\@tempc\expandafter{\@tempb}\relax + \fi + \fi + \fi} + \@check@eq\KV@split\@tempa +\endgroup +\def\KV@split#1=#2=#3\relax{% + \KV@@sp@def\@tempa{#1}% + \ifx\@tempa\@empty\else + \expandafter\let\expandafter\@tempc + \csname\KV@prefix\@tempa\endcsname + \ifx\@tempc\relax + \scr@KV@errx{\@tempa}% + \else + \ifx\@empty#3\@empty + \KV@default + \else + \KV@@sp@def\@tempb{#2}% + \expandafter\@tempc\expandafter{\@tempb}\relax + \fi + \fi + \fi} +\CheckCommand*{\KV@default}{% + \expandafter\let\expandafter\@tempb + \csname\KV@prefix\@tempa @default\endcsname + \ifx\@tempb\relax + \KV@err{No value specified for \@tempa}% + \else + \@tempb\relax + \fi} +\renewcommand*{\KV@default}{% + \expandafter\let\expandafter\@tempb + \csname\KV@prefix\@tempa @default\endcsname + \ifx\@tempb\relax + \scr@KV@err{\@tempa}% + \else + \@tempb\relax + \fi} +\newcommand*{\scr@KV@errx}[1]{% + \expandafter\ifx\csname\KV@prefix nokey\endcsname\relax + \KV@errx{#1\space undefined}% + \else + \csname\KV@prefix nokey\endcsname{#1}% + \fi +} +\newcommand*{\scr@KV@err}[1]{% + \expandafter\ifx\csname\KV@prefix noval\endcsname\relax + \KV@err{No value specified for #1}% + \else + \csname\KV@prefix noval\endcsname{#1}% + \fi +} +\newif\if@atdocument +\AtBeginDocument{\@atdocumenttrue} +\@onlypreamble\@atdocumentrue +\@onlypreamble\@atdocumentfalse +\newcommand{\ifundefined}[1]{% + \begingroup\expandafter\expandafter\expandafter\endgroup + \expandafter\ifx\csname #1\endcsname\relax + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi +} +\newcommand{\ifnotundefined}[1]{% + \begingroup\expandafter\expandafter\expandafter\endgroup + \expandafter\ifx\csname #1\endcsname\relax + \expandafter\@secondoftwo + \else + \expandafter\@firstoftwo + \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*{\let@as@internal@defined}[1]{ + \@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 + }{% + \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 + }% + }% +} +\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}{% + \ifundefined{pdfoutput}{% + \ifundefined{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}{% + \ifundefined{pdfoutput}{% + \ifundefined{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*{\DeclareKeyValOption}[2][% + \ifx\@currext\@clsextension\OptionNotUsed\else\@unkownoptionerror\fi +]{% + \DeclareOption*{ + \expandafter\let\expandafter\@KV@saved@nokey + \csname KV@#2@nokey\endcsname + \@namedef{KV@#2@nokey}{#1\@gobble}% + \@expandtwoargs\setkeys{#2}\CurrentOption + \expandafter\let\csname KV@#2@nokey\endcsname\@KV@saved@nokey + }% +} +\newcommand*{\Pr@cessL@calKeyValOptions}[1]{% + \edef\@curroptions{\@ptionlist{\@currname.\@currext}}% + \ifx\@curroptions\@empty\else + \expandafter\let\expandafter\@KV@saved@nokey\csname KV@#1@nokey\endcsname + \@namedef{KV@#1@nokey}{\in@false\@gobble}% + \@for\CurrentOption:=\@curroptions\do{% + \ifx\CurrentOption\@empty\else + \in@true\@expandtwoargs\setkeys{#1}\CurrentOption + \ifin@ + \ifx\@currext\@clsextension + \@expandtwoargs\@removeelement\CurrentOption + \@unusedoptionlist\@unusedoptionlist + \else + \@expandtwoargs\@removeelement\CurrentOption + \@curroptions\@curroptions + \fi + \fi + \fi + }% + \let\CurrentOption\@empty + \ifx\@currext\@clsextension\else + \expandafter\let\csname opt@\@currname.\@currext\endcsname\@curroptions + \fi + \expandafter\let\csname KV@#1@nokey\endcsname\@KV@saved@nokey + \fi +} +\newcommand*{\Pr@cessGl@balKeyValOptions}[1]{% + \ifx\@currext\@clsextension\else + \expandafter\let\expandafter\@KV@saved@nokey + \csname KV@#1@nokey\endcsname + \@namedef{KV@#1@nokey}{\in@false\@gobble}% + \@for\CurrentOption:=\@classoptionslist\do{% + \ifx\CurrentOption\@empty\else + \in@true\@expandtwoargs\setkeys{#1}\CurrentOption + \ifin@ + \@expandtwoargs\@removeelement\CurrentOption + \@unusedoptionlist\@unusedoptionlist + \fi + \fi + }% + \let\CurrentOption\@empty + \expandafter\let\csname KV@#1@nokey\endcsname\@KV@saved@nokey + \fi +} +\newcommand*{\ProcessKeyValOptions}[1]{% + \Pr@cessGl@balKeyValOptions{#1}% + \Pr@cessL@calKeyValOptions{#1}% +} +\newcommand*{\ProcessAllOptions}{% + \@ifstar\@Pr@cessAll@pti@ns\Pr@cessAll@pti@ns +} +\newcommand*{\@Pr@cessAll@pti@ns}[1]{% + \ProcessKeyValOptions{#1}\ProcessOptions* +} +\newcommand*{\Pr@cessAll@pti@ns}[1]{% + \ProcessKeyValOptions{#1}\ProcessOptions\relax +} +\newcommand*{\KOMA@key}{\define@key{KOMA}} +\newcommand*{\KOMAoptions}[1]{% + \setkeys{KOMA}{#1}% +} +\KOMA@key{nokey}{% + \PackageError{% + scrkeyval% + }{% + unknown KOMA option `#1'% + }{% + You've tried to use the KOMA option `#1'.\MessageBreak + But there is no KOMA option with that name.\MessageBreak + See the manual of KOMA-Script for information about known KOMA + options.% + }% +}% +\KOMA@key{noval}{% + \PackageError{% + scrkbase% + }{% + KOMA option `#1' needs a value% + }{% + You've tried to use the KOMA option `#1' without a + value.\MessageBreak + But this option has no default value, so you have to set a + value.\MessageBreak + See the manual of KOMA-Script for information about the option and + all known\MessageBreak + values.% + }% +}% +\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*{\KOMA@ncmdkey}[1]{% + \@ifnextchar [%] + {\KOMA@@ncmdkey{#1}}{\KOMA@@ncmdkey{#1}[]}% +} +\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@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}[3][\@gobbletwo]{% + \DeclareOption{#2}{\KOMA@UseObsolete{option}{#1}{#2}{#3}}% +} +\newcommand*{\KOMA@UseObsolete}[4]{% + #2{% + scrkbase% + }{% + You've used the obsolete #1 `#3'.\MessageBreak + \protect\KOMAoptions{#4} will be used instead.\MessageBreak + You should do this change too% + }% + \KOMAoptions{#4}% +} +\newcommand*{\KOMA@newobsoletecommand}[3][\@gobbletwo]{% + \newcommand*{#2}{\KOMA@UseObsolete{command}{#1}{\string#2}{#3}}% +} +%%% 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 `scrkbase.sty'. diff --git a/Master/texmf-dist/tex/latex/koma-script/scrlettr.cls b/Master/texmf-dist/tex/latex/koma-script/scrlettr.cls index d2a524ce371..3f4e2ceca78 100644 --- a/Master/texmf-dist/tex/latex/koma-script/scrlettr.cls +++ b/Master/texmf-dist/tex/latex/koma-script/scrlettr.cls @@ -5,44 +5,39 @@ %% The original source files were: %% %% scrlettr.dtx (with options: `scrlettr') -%% scrlogo.dtx +%% scrlogo.dtx (with options: `logo') %% -%% Copyright (C) 1994-2004 Axel Kielhorn, Markus Kohm and Frank Neukam. +%% Copyright (c) 1994-2006 +%% Markus Kohm and any individual authors listed elsewhere in this file. %% -%% All rights reserved. For further copyright information see the file -%% LEGAL.TXT or LEGALDE.TXT. +%% This file was generated from file(s) of the KOMA-Script bundle. +%% --------------------------------------------------------------- %% -%% This file is part of the LaTeX2e 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'. %% -%% The KOMA-Script bundle bases on the Script-family created by -%% Frank Neukam 1993 and the standard documents classes created -%% by the LaTeX3-Team 1994-1996. -%% ------------------------------------------------------------------------ +%% 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. %% -%% This system is distributed in the hope that it will be useful, -%% but WITHOUT ANY WARRANTY; without even the implied warranty of -%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +%% 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. %% -%% IMPORTANT NOTICE: +%% English and German manuals are part of KOMA-Script bundle. +%% ---------------------------------------------------------- %% -%% For error reports in case of UNCHANGED versions see documentation. +%% See `README'. %% -%% Please do not request updates from us directly. Distribution is -%% done through Mail-Servers, Mailboxes and TeX organizations. -%% -%% You are not allowed to change this file. -%% -%% You are allowed to distribute this file under the condition that -%% it is distributed together with all files mentioned in readme.txt -%% and liesmich.txt. See LEGAL.TXT or LEGALDE.TXT for further -%% information. -%% -%% If you receive only some of these files from someone, complain! -%% -%% You are NOT ALLOWED to distribute this file alone. +%% 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: scrlettr.dtx \NeedsTeXFormat{LaTeX2e}[1995/12/01] \ProvidesClass{scrlettr} [2002/05/24 v2.6e @@ -708,6 +703,7 @@ \pagenumbering{arabic} \raggedbottom \frenchspacing +%%% From File: scrlogo.dtx \@ifundefined{KOMAScript}{% \DeclareRobustCommand{\KOMAScript}{\textsf{K\kern.05em O\kern.05em% M\kern.05em A\kern.1em-\kern.1em Script}}}{} diff --git a/Master/texmf-dist/tex/latex/koma-script/scrlfile.sty b/Master/texmf-dist/tex/latex/koma-script/scrlfile.sty index e314c208726..a2a4ca5eabb 100644 --- a/Master/texmf-dist/tex/latex/koma-script/scrlfile.sty +++ b/Master/texmf-dist/tex/latex/koma-script/scrlfile.sty @@ -4,51 +4,43 @@ %% %% The original source files were: %% -%% scrclass.dtx (with options: `package,scrlfile') -%% scrlogo.dtx +%% scrlfile.dtx (with options: `scrlfile') +%% scrlogo.dtx (with options: `logo') %% -%% Copyright (C) 1994-2004 Markus Kohm. +%% Copyright (c) 1994-2002 +%% Markus Kohm and any individual authors listed elsewhere in this file. %% -%% All rights reserved. For further copyright information see the file -%% LEGAL.TXT or LEGALDE.TXT. +%% This file was generated from file(s) of the KOMA-Script bundle. +%% --------------------------------------------------------------- %% -%% This file is part of the LaTeX2e KOMA-Script bundle. -%% ---------------------------------------------------- +%% It may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.2 +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.2 or later is part of all distributions of LaTeX +%% version 1999/12/01 or later. %% -%% The KOMA-Script bundle bases on the Script-family created by -%% Frank Neukam 1993 and the standard documents classes created -%% by the LaTeX3-Team 1994-1996. -%% ------------------------------------------------------------------------ +%% This file may only be distributed together with the files +%% `scrlogo.dtx', `scrlfile.dtx' and `scrlfile.ins'. You may however +%% distribute the files `scrlogo.dtx', `scrlfile.dtx' and `scrlfile.ins' +%% without this file. See also `scrlfile.dtx' for additional information. %% -%% This system is distributed in the hope that it will be useful, -%% but WITHOUT ANY WARRANTY; without even the implied warranty of -%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +%% If this file is a beta version, you are not allowed to distribute it. %% +%% English and German manuals are part of KOMA-Script bundle. +%% ---------------------------------------------------------- %% -%% IMPORTANT NOTICE: +%% A short version of the english manual is at `scrlfile.dtx', too. %% -%% For error reports in case of UNCHANGED versions see documentation. +%% 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. %% -%% Please do not request updates from us directly. Distribution is -%% done through Mail-Servers, Mailboxes and TeX organizations. -%% -%% You are not allowed to change this file. -%% -%% You are allowed to distribute this file under the condition that -%% it is distributed together with all files mentioned in readme.txt -%% and liesmich.txt. See LEGAL.TXT or LEGALDE.TXT for further -%% information. -%% -%% If you receive only some of these files from someone, complain! -%% -%% You are NOT ALLOWED to distribute this file alone. -%% -\NeedsTeXFormat{LaTeX2e}[1995/12/01] -\ProvidesPackage{% - scrlfile% - } - [2004/09/16 v2.9t LaTeX2e KOMA - package] +%%% From File: scrlfile.dtx +\def\scrlfileversion{2006/03/28 v2.95} +\ProvidesPackage{scrlfile}[% + \scrlfileversion\space KOMA-Script package (loading files)] \typeout{Package scrlfile, \csname ver@scrlfile.sty\endcsname% ^^J\@spaces\@spaces\@spaces\@spaces\space\space Copyright (C) Markus Kohm^^J} @@ -103,6 +95,40 @@ \endgroup {#1}% } +\AtEndDocument{% + \let\scr@saved@checkend=\@checkend + \renewcommand*{\@checkend}[1]{% + \def\reserved@a{#1}\def\reserved@b{document}% + \scr@saved@checkend{#1}% + \ifx\reserved@a\reserved@b + \let\scr@saved@clearpage=\clearpage + \renewcommand*{\clearpage}{\scr@saved@clearpage + \scr@hook@bcma\let\clearpage=\scr@saved@clearpage}% + \fi% + }% +} +\newcommand*{\scr@saved@checkend}{} +\newcommand*{\scr@hook@bcma}{% + \renewcommand*{\BeforeClosingMainAux}[1]{##1}% + \renewcommand*{\newpage}{% + \PackageError{% + scrlfile% + }{% + \string\newpage\space at \string\BeforeClosingMainAux + }{% + You should never use \string\newpage\space or + \string\clear(double)page or other output material at the\MessageBreak + argument of \string\BeforeClosingMainAux!\MessageBreak + If you'll continue, the \string\newpage\space will be ignored to + avoid corruption of\MessageBreak + every prior use of \string\BeforeClosingMainAux. + }% + }% +} +\newcommand*{\BeforeClosingMainAux}{% + \g@addto@macro\scr@hook@bcma% +} +%%% From File: scrlogo.dtx \@ifundefined{KOMAScript}{% \DeclareRobustCommand{\KOMAScript}{\textsf{K\kern.05em O\kern.05em% M\kern.05em A\kern.1em-\kern.1em Script}}}{} diff --git a/Master/texmf-dist/tex/latex/koma-script/scrlttr2.cls b/Master/texmf-dist/tex/latex/koma-script/scrlttr2.cls index 156984b84a5..b3adea55192 100644 --- a/Master/texmf-dist/tex/latex/koma-script/scrlttr2.cls +++ b/Master/texmf-dist/tex/latex/koma-script/scrlttr2.cls @@ -4,248 +4,503 @@ %% %% The original source files were: %% -%% scrclass.dtx (with options: `class,scrlettr') -%% scrlogo.dtx +%% scrkvers.dtx (with options: `class,letter') +%% scrkbase.dtx (with options: `load') +%% scrkcomp.dtx (with options: `class,letter,option') +%% scrkmisc.dtx (with options: `class,letter,option') +%% scrklco.dtx (with options: `class,letter,option') +%% scrklang.dtx (with options: `class,letter,option') +%% scrkfont.dtx (with options: `class,letter,option') +%% scrkvars.dtx (with options: `class,letter,option') +%% scrkplen.dtx (with options: `class,letter,option') +%% scrktare.dtx (with options: `class,letter,option') +%% scrkpar.dtx (with options: `class,letter,option') +%% scrkpage.dtx (with options: `class,letter,option') +%% scrkfloa.dtx (with options: `class,letter,option') +%% scrkftn.dtx (with options: `class,letter,option') +%% scrklist.dtx (with options: `class,letter,option') +%% scrknpap.dtx (with options: `class,letter,option') +%% scrkcile.dtx (with options: `class,letter,option') +%% scrkmisc.dtx (with options: `class,letter,execoption') +%% scrkcomp.dtx (with options: `class,letter,body') +%% scrkfont.dtx (with options: `class,letter,body') +%% scrkmisc.dtx (with options: `class,letter,body') +%% scrklco.dtx (with options: `class,letter,body') +%% scrklang.dtx (with options: `class,letter,body') +%% scrkvars.dtx (with options: `class,letter,body') +%% scrkplen.dtx (with options: `class,letter,body') +%% scrktare.dtx (with options: `class,letter,body') +%% scrkpar.dtx (with options: `class,letter,body') +%% scrkpage.dtx (with options: `class,letter,body') +%% scrkfloa.dtx (with options: `class,letter,body') +%% scrkftn.dtx (with options: `class,letter,body') +%% scrklist.dtx (with options: `class,letter,body') +%% scrknpap.dtx (with options: `class,letter,body') +%% scrkcile.dtx (with options: `class,letter,body') +%% scrlogo.dtx (with options: `logo') %% -%% Copyright (C) 1994-2004 Markus Kohm. +%% Copyright (c) 1994-2006 +%% Markus Kohm and any individual authors listed elsewhere in this file. %% -%% All rights reserved. For further copyright information see the file -%% LEGAL.TXT or LEGALDE.TXT. +%% This file was generated from file(s) of the KOMA-Script bundle. +%% --------------------------------------------------------------- %% -%% This file is part of the LaTeX2e 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'. %% -%% The KOMA-Script bundle bases on the Script-family created by -%% Frank Neukam 1993 and the standard documents classes created -%% by the LaTeX3-Team 1994-1996. -%% ------------------------------------------------------------------------ +%% 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. %% -%% This system is distributed in the hope that it will be useful, -%% but WITHOUT ANY WARRANTY; without even the implied warranty of -%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +%% 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. %% -%% IMPORTANT NOTICE: +%% English and German manuals are part of KOMA-Script bundle. +%% ---------------------------------------------------------- %% -%% For error reports in case of UNCHANGED versions see documentation. +%% See `README'. %% -%% Please do not request updates from us directly. Distribution is -%% done through Mail-Servers, Mailboxes and TeX organizations. +%% 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. %% -%% You are not allowed to change this file. -%% -%% You are allowed to distribute this file under the condition that -%% it is distributed together with all files mentioned in readme.txt -%% and liesmich.txt. See LEGAL.TXT or LEGALDE.TXT for further -%% information. -%% -%% If you receive only some of these files from someone, complain! -%% -%% You are NOT ALLOWED to distribute this file alone. -%% -\NeedsTeXFormat{LaTeX2e}[1995/12/01] -\ProvidesClass{% +%%% 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{2006/07/30 v2.95b KOMA-Script}% +\endgroup +\newcommand*{\KOMAClassName}{% scrlttr2% - } - [2004/09/16 v2.9t LaTeX2e KOMA - document class] -\RequirePackage{keyval} -\newcommand*{\KOMA@key}{\define@key{KOMA}} -\newcommand*{\KOMAoptions}[1]{% - \@ifundefined{scr@save@KV@errx}{% - \let\scr@save@KV@errx=\KV@errx - \renewcommand*{\KV@errx}[1]{% - \ClassError{% - scrlttr2% - }{unknown KOMA option `#1'}{% - You've tried to use the KOMA option `#1'.\MessageBreak - But there is no KOMA option with that name.\MessageBreak - See the manual of KOMA-Script for information about known koma - options.}}% - \setkeys{KOMA}{#1}% - \let\KV@errx=\scr@save@KV@errx - \let\scr@save@KV@errx=\relax +} +\newcommand*{\ClassName}{% + letter% +} +\ProvidesClass{\KOMAClassName}[% + \KOMAScriptVersion\space document class (\ClassName)% +] +%%% From File: scrkbase.dtx +\RequirePackage{scrkbase}[\KOMAScriptVersion] +%%% From File: scrkcomp.dtx +\newcommand*{\scr@compatibility}{0} +\KOMA@key{version}[last]{% + \ifundefined{scr@v@#1}{% + \def\scr@compatibility{0}% + \ClassWarningNoLine{\KOMAClassName}{% + 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'% + }% }{% - \setkeys{KOMA}{#1}% - }\ignorespaces% + \edef\scr@compatibility{\@nameuse{scr@v@#1}}% + }% } -\newcommand*{\AfterProcessOptions@hook}{} -\newcommand*{\AfterProcessOptions}[1]{% - \g@addto@macro{\AfterProcessOptions@hook}{#1}% +\AtEndOfClass{% + \KOMA@key{version}[]{% + \ClassError{\KOMAClassName}{% + Option `version' too late% + }{% + Option `version' may be set only while loading the class.\MessageBreak + But you've tried to set it up later.% + }% + }% } -\newcommand*{\@setif}[3][]{% - \begingroup% - \edef\@tempa{#1} - \ifx\@tempa\@empty\def\@tempc{@#2}\else\def\@tempc{#1}\fi - \edef\@tempa{#3}\def\@tempb{on}\ifx\@tempa\@tempb - \def\@tempa{true}% - \else\def\@tempb{off}\ifx\@tempa\@tempb - \def\@tempa{false}% - \fi\fi% - \@ifundefined{\@tempc\@tempa}{% - \ClassError{% - scrlttr2% - }{You've used an unknown switch or value}{% - You've tried to set switch `#2' to value `#3', but there's - either no\MessageBreak% - switch `#2' defined or `#3' is not a switch - value.\MessageBreak% - Allowed switch values are `true', `false', `on', - `off'\@setif@alsoerr.} - \let\@tempa\endgroup - }{% - \edef\@tempa{\endgroup\noexpand\@nameuse{\@tempc\@tempa}} - } +\@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@last}{2} +%%% 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[\PackageInfo]{final}{draft=false} +%%% From File: scrklco.dtx +\newcommand*{\lco@test}{% + \IfFileExists{\CurrentOption.lco}{% + \let\scr@pti@nerr@r\@gobble + \expandafter\AtEndOfClass\expandafter{\expandafter\LoadLetterOption + \expandafter{\CurrentOption}}% + }% +} +\AtEndOfClass{\LoadLetterOption{DIN}} +%%% From File: scrklang.dtx +\newif\if@orgdate\@orgdatetrue +\KOMA@key{numericaldate}[true]{% + \if@orgdate\@orgdatefalse\else\@orgdatetrue\fi + \KOMA@set@ifkey{numericaldate}{@orgdate}{#1}% + \if@orgdate\@orgdatefalse\else\@orgdatetrue\fi +} +\KOMA@DeclareObsoleteOption[\PackageInfo]{scrdate}{numericaldate=true} +\KOMA@DeclareObsoleteOption[\PackageInfo]{orgdate}{numericaldate=false} +%%% From File: scrkfont.dtx +\newcommand*\@ptsize{% + 2% +} +\newcommand*{\@pt@scan}{% + \expandafter\@pt@@scan\CurrentOption pt\@pt@@scan% +} +\newcommand*{\@pt@@scan}{} +\def\@pt@@scan #1pt#2\@pt@@scan{% + \ifstr{#2}{pt}{% + \ifnumber{#1}{% + \KOMA@UseObsolete{option}{\PackageInfo}{#1#2}{fontsize=#1#2}% + }{\@headlines}% + }{\@headlines}% +} +\KOMA@key{fontsize}{% + \begingroup + \setlength{\@tempdima}{#1}% + \addtolength{\@tempdima}{-10\p@}% + \edef\@tempa{\endgroup\noexpand\renewcommand*\noexpand\@ptsize{% + \strip@pt\@tempdima}}% \@tempa - \let\@setif@alsoerr=\@empty - } -\newcommand*{\@setif@alsoerr}{} -\newcommand*{\@setxif}[5][]{% - \begingroup% - \edef\@tempa{#1} - \ifx\@tempa\@empty\def\@tempc{@#2}\else\def\@tempc{#1}\fi - \@ifundefined{\@tempc true}{% - \ClassError{% - scrlttr2% - }{You've used an unknown switch}{% - You've tried to set switch `#2' to value `#3', but - there's no\MessageBreak - switch `#2' defined.} - \let\@tempa\endgroup +} +\@onlypreamble\KV@KOMA@fontsize +%%% From File: scrkvars.dtx +%%% From File: scrkplen.dtx +%%% From File: scrktare.dtx +\newcommand*{\@BCOR}{\expandafter\@@BCOR\CurrentOption BCORBCOR\@@BCOR} +\newcommand*{\@@BCOR}{} +\def\@@BCOR #1BCOR#2BCOR#3\@@BCOR{% + \ifstr{#1}{}{% + \ifstr{#3}{BCOR}{% + \PassOptionsToPackage{BCOR#2}{typearea}% + }{\scr@pti@nerr@r}% + }{\scr@pti@nerr@r}% +} +\newcommand*{\@DIV}{\expandafter\@@DIV\CurrentOption DIVDIV\@@DIV} +\newcommand*{\@@DIV}{} +\def\@@DIV #1DIV#2DIV#3\@@DIV{% + \edef\@tempa{#1}\ifx\@tempa\@empty + \edef\@tempa{#3}\def\@tempb{DIV}\ifx\@tempa\@tempb + \PassOptionsToPackage{DIV#2}{typearea}% + \else\scr@pti@nerr@r\fi + \else\@BCOR\fi +} +\newcommand{\@headlines}{% + \expandafter\@@headlines\CurrentOption headlines\@@headlines% +} +\newcommand*{\@@headlines}{} +\def\@@headlines #1headlines#2\@@headlines{ + \edef\@tempa{#2}\edef\@tempb{headlines}\ifx\@tempa\@tempb + \PassOptionsToPackage{#1headlines}{typearea} + \else\@DIV\fi +} +\newcommand*{\x@paper}{% + \expandafter\x@@paper\CurrentOption paper\x@@paper% +} +\newcommand*{\x@@paper}{} +\def\x@@paper #1#2paper#3\x@@paper{% + \ifstr{#3}{paper}{% + \ifnumber{#2}{% + \ifstr{#1}{a}{% + \PassOptionsToPackage{#1#2#3}{typearea}% }{% - \edef\@tempa{#3}\edef\@tempb{#4}\ifx\@tempa\@tempb - \edef\@tempa{\endgroup\noexpand\@nameuse{\@tempc true}} - \else\def\@tempb{#5}\ifx\@tempa\@tempb - \edef\@tempa{\endgroup\noexpand\@nameuse{\@tempc false}} - \else - \ClassError{% - scrlttr2% - }{You've used an unknown switch value}{% - You've tried to set switch `#2' to value `#3', but allowed - switch\MessageBreak - values are `#4', `#5'\@setif@alsoerr\space only.} - \let\@tempa\endgroup - \fi\fi% - } - \@tempa - \let\@setif@alsoerr=\@empty - } -\newcommand*{\@setnumstate}[4]{% + \ifstr{#1}{b}{% + \PassOptionsToPackage{#1#2#3}{typearea}% + }{% + \ifstr{#1}{c}{% + \PassOptionsToPackage{#1#2#3}{typearea}% + }{% + \ifstr{#1}{d}{% + \PassOptionsToPackage{#1#2#3}{typearea}% + }{\scr@pti@nerr@r}% + }% + }% + }% + }{\scr@pti@nerr@r}% + }{% + \@pt@scan + }% +} +\newcommand*{\scr@pti@nerr@r}{ + \OptionNotUsed +} +\KOMA@key{twoside}[true]{% + \KOMA@set@ifkey{twoside}{@twoside}{#1}% + \if@twoside\@mparswitchtrue\else\@mparswitchfalse\fi% + \csname recalctypearea\endcsname +} +\KOMA@DeclareObsoleteOption[\PackageInfo]{oneside}{twoside=false} +%%% From File: scrkpar.dtx +\newcommand*{\setparsizes}[3]{% + \edef\f@parindent{\the\parindent}% + \edef\f@parskip{\the\parskip}% + \edef\f@parfillskip{\the\parfillskip}% + \def\scr@parindent{#1}% + \def\scr@parskip{#2}% + \def\scr@parfillskip{#3}% + \def\par@update{\let\par@update\default@par@update\par@updaterelative}% +} +\newcommand*{\f@parindent}{\the\parindent} +\newcommand*{\f@parskip}{\the\parskip} +\newcommand*{\f@parfillskip}{\the\parfillskip} +\AtEndOfClass{% + \edef\f@parindent{\the\parindent}% + \edef\f@parskip{\the\parskip}% + \edef\f@parfillskip{\the\parfillskip}% +} +\newcommand*{\par@update}{} +\let\par@update\relax +\newcommand*{\default@par@update}{} +\let\default@par@update\relax +\newcommand*{\scr@parindent}{1em} +\newcommand*{\scr@parskip}{\z@} +\newcommand*{\scr@parfillskip}{\z@ \@plus 1fil} +\KOMA@key{parskip}[true]{% \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}% + \KOMA@set@ncmdkey{parskip}{@tempa}{% + {false}{0},{off}{0},{no}{0},% + {full-}{1},% + {half-}{2},% + {full}{3},{true}{3},{on}{3},{yes}{3},% + {half}{4},% + {full+}{5},% + {half+}{6},% + {full*}{7},% + {half*}{8},% + {relative}{9},% + {absolute}{10},% + }{#1}% + \ifcase\number\@tempa% 0 + \endgroup + \setparsizes{1em}{\z@ \@plus \p@}{\z@ \@plus 1fil}% + \or% 1 + \endgroup + \setparsizes{\z@}{\baselineskip \@plus .1\baselineskip}{% + \z@ \@plus 1fil}% + \or% 2 + \endgroup + \setparsizes{\z@}{.5\baselineskip \@plus .5\baselineskip}{% + \z@ \@plus 1fil}% + \or%3 + \endgroup + \setparsizes{\z@}{\baselineskip \@plus .1\baselineskip}{% + 1em \@plus 1fil}% + \or%4 + \endgroup + \setparsizes{\z@}{.5\baselineskip \@plus .5\baselineskip}{% + 1em \@plus 1fil}% + \or%5 + \endgroup + \setparsizes{\z@}{\baselineskip \@plus .1\baselineskip}{% + .3333\linewidth\@plus 1fil}% + \or%6 + \endgroup + \setparsizes{\z@}{.5\baselineskip \@plus .5\baselineskip}{% + .3333\linewidth \@plus 1fil}% + \or%7 + \endgroup + \setparsizes{\z@}{\baselineskip \@plus .1\baselineskip}{% + .25\linewidth \@plus 1fil}% + \or%8 + \endgroup + \setparsizes{\z@}{.5\baselineskip \@plus .5\baselineskip}{% + .25\linewidth \@plus 1fil}% + \or%9 + \endgroup + \ifx\par@updaterelative\undefined + \expandafter\AtEndOfClass + \else + \expandafter\@firstofone + \fi + {% + \ifx\par@update\default@par@update + \let\par@update\par@updaterelative \fi + \let\default@par@update=\par@updaterelative + }% + \or%10 + \endgroup + \ifx\par@updaterelative\undefined + \expandafter\AtEndOfClass + \else + \expandafter\@firstofone \fi - } - \if@tempswa - \edef\@tempa{\endgroup - \noexpand\renewcommand*{\noexpand#1}{\@tempa}} - \else - \ClassError{% - scrlttr2% - }{You've used an unknown option value}{% - You've tried to set option `#2' to value `#4', - but allowed values\MessageBreak - are only:\MessageBreak - \@tempa.}% - \let\@tempa=\endgroup - \fi - \@tempa - } -\newcommand*{\@ObsoleteOption}[1]{% - \ClassWarningNoLine{% - scrlttr2% - }{% - You've used the obsolete option `\CurrentOption'.\MessageBreak - I'm using option `#1' instead.\MessageBreak - You should do this change also} - \KOMAoptions{#1} + {% + \ifx\par@update\default@par@update + \let\par@update\relax + \fi + \let\default@par@update=\relax + }% + \else% sonst + \endgroup + \fi } -\newcommand*{\@ObsoleteCommand}[2]{% - \ClassWarning{% - scrlttr2% - }{% - You`ve used the obsolete command `\string#1'.\MessageBreak - I`m using `\string\KOMAoptions{#2}' instead.\MessageBreak - You should do this change also} - \KOMAoptions{#2} -} -\KOMA@key{BCOR}{\PassOptionsToPackage{BCOR#1}{typearea}} -\KOMA@key{DIV}{\PassOptionsToPackage{DIV#1}{typearea}} -\KOMA@key{headlines}{\PassOptionsToPackage{#1headlines}{typearea}} -\KOMA@key{paper}{\PassOptionsToPackage{#1paper}{typearea}} -\DeclareOption{a4paper}{\@ObsoleteOption{paper=a4}} -\DeclareOption{a5paper}{\@ObsoleteOption{paper=a5}} -\DeclareOption{b5paper}{\@ObsoleteOption{paper=b5}} -\DeclareOption{letterpaper}{\@ObsoleteOption{paper=letter}} -\DeclareOption{legalpaper}{\@ObsoleteOption{paper=legal}} -\DeclareOption{executivepaper}{\@ObsoleteOption{paper=executive}} +\KOMA@DeclareObsoleteOption[\PackageInfo]{parskip-}{parskip=full-} +\KOMA@DeclareObsoleteOption[\PackageInfo]{parskip+}{parskip=full+} +\KOMA@DeclareObsoleteOption[\PackageInfo]{parskip*}{parskip=full*} +\KOMA@DeclareObsoleteOption[\PackageInfo]{halfparskip}{parskip=half} +\KOMA@DeclareObsoleteOption[\PackageInfo]{halfparskip-}{parskip=half-} +\KOMA@DeclareObsoleteOption[\PackageInfo]{halfparskip+}{parskip=half+} +\KOMA@DeclareObsoleteOption[\PackageInfo]{halfparskip*}{parskip=half*} +\KOMA@DeclareObsoleteOption[\PackageInfo]{parindent}{parskip=false} +%%% From File: scrkpage.dtx \newif\if@hsl -\KOMA@key{headsepline}[true]{\@setif{hsl}{#1}}% -\AfterProcessOptions{% - \if@hsl\PassOptionsToPackage{headinclude}{typearea}\fi} -\DeclareOption{headnosepline}{% - \@ObsoleteOption{headsepline=false}% - } +\KOMA@key{headsepline}[true]{% + \KOMA@set@ifkey{headsepline}{@hsl}{#1}% + \@ifpackageloaded{typearea}{% + \KOMAoptions{headinclude=#1}% + }{% + \PassOptionsToPackage{typearea}{headinclude=#1}% + }% +} +\KOMA@DeclareObsoleteOption[\PackageInfo]{headnosepline}{headsepline=false} \newif\if@fsl -\KOMA@key{footsepline}[true]{\@setif{fsl}{#1}}% -\AfterProcessOptions{% - \if@fsl\PassOptionsToPackage{footinclude}{typearea}\fi} -\DeclareOption{footnosepline}{% - \@ObsoleteOption{footsepline=false}% - } -\newif\if@mincl -\DeclareOption{mpinclude}{% - \@mincltrue - \ClassWarning{scrlttr2}{% - You should not use option `mpinclude' with this\MessageBreak - class} - } -\DeclareOption{mpexclude}{ - \@minclfalse - \ClassWarning{scrlttr2}{% - You should not use option `mpexclude' with this\MessageBreak - class} - } +\KOMA@key{footsepline}[true]{% + \KOMA@set@ifkey{footsepline}{@fsl}{#1}% + \@ifpackageloaded{typearea}{% + \KOMAoptions{footinclude=#1}% + }{% + \PassOptionsToPackage{typearea}{footinclude=#1}% + }% +} +\KOMA@DeclareObsoleteOption[\PackageInfo]{footnosepline}{footsepline=false} +\KOMA@key{cleardoublepage}{% + \begingroup% + \def\@tempc{% + \endgroup% + \KOMA@unkown@keyval{cleardoublepage}{#1}{% + 'current' or any defined pagestyle e.g. 'empty','plain'}% + }% + \ifstr{#1}{current}{% + \let\cleardoublepage\cleardoublestandardpage + }{% + \ifnotundefined{ps@#1}{% + \def\@tempc{\endgroup% + \def\cleardoublepage{\cleardoublepageusingstyle{#1}}% + }% + }{}% + }% + \@tempc +} +\newcommand*{\cleardoublestandardpage}{} +\let\cleardoublestandardpage\cleardoublepage +\newcommand*{\cleardoublepageusingstyle}[1]{\clearpage + {\thispagestyle{#1}\cleardoublestandardpage}} +\newcommand*{\cleardoubleemptypage}{\cleardoublepageusingstyle{empty}} +\newcommand*{\cleardoubleplainpage}{\cleardoublepageusingstyle{plain}} +\KOMA@DeclareObsoleteOption[\PackageInfo]{cleardoubleempty}{% + cleardoublepage=empty% +} +\KOMA@DeclareObsoleteOption[\PackageInfo]{cleardoubleplain}{% + cleardoublepage=plain% +} +\KOMA@DeclareObsoleteOption[\PackageInfo]{cleardoublestandard}{% + cleardoublepage=standard% +} +%%% From File: scrkfloa.dtx +%%% From File: scrkftn.dtx +%%% From File: scrklist.dtx +%%% From File: scrknpap.dtx \newcommand*{\@alignfrom}{0} -\KOMA@key{fromalign}{% - \@setnumstate{\@alignfrom}{fromalign}{% - {left}{0},% - {center}{1},{centered}{1},{middle}{1},% - {right}{2},% - {no}{10000},{false}{10000},{off}{10000}}{#1}% - } +\KOMA@ncmdkey{fromalign}{@alignfrom}{% + {left}{0},% + {center}{1},{centered}{1},{middle}{1},% + {right}{2},% + {no}{10000},{false}{10000},{off}{10000}% +} \newcommand*{\@rulefrom}{0} -\KOMA@key{fromrule}[below]{% - \@setnumstate{\@rulefrom}{fromrule}{% - {false}{0},{no}{0},{off}{0},{aftername}{1},% - {below}{2},{afteraddress}{2},{true}{2},{yes}{2},{on}{2}% +\KOMA@ncmdkey{fromrule}[below]{@rulefrom}{% + {false}{0},{no}{0},{off}{0},{aftername}{1},% + {below}{2},{afteraddress}{2},{true}{2},{yes}{2},{on}{2}% +} +\KOMA@ifkey{fromphone}{@phone} +\KOMA@ifkey{fromfax}{@fax} +\KOMA@ifkey{fromemail}{@email} +\KOMA@ifkey{fromurl}{@www} +\KOMA@ifkey{fromlogo}{@logo} +\newif\if@afield\@afieldtrue +\KOMA@ifkey{addrfield}{@afield} +\newif\if@baddr\@baddrtrue +\KOMA@ifkey{backaddress}{@baddr} +\newif\if@bigloc +\KOMA@key{locfield}[wide]{% + \begingroup + \KOMA@set@ncmdkey{locfield}{@tempa}{{wide}{0},{narrow}{1}}{#1}% + \ifcase\@tempa + \endgroup + \@biglocfalse + \else + \endgroup + \@bigloctrue + \fi +} +\DeclareOption{wlocfield}{\@ObsoleteOption{locfield=wide}} +\DeclareOption{slocfield}{\@ObsoleteOption{locfield=narrow}} +\newif\if@fold\@foldtrue +\KOMA@ifkey{foldmarks}{@fold} +\newif\if@refwide +\KOMA@key{refline}[wide]{% + \begingroup + \KOMA@set@ncmdkey{refline}{@tempa}{{wide}{0},{narrow}{1}}{#1}% + \ifcase\@tempa + \endgroup + \@refwidefalse + \else + \endgroup + \@refwidetrue + \fi +} +\newif\if@subj +\newif\if@subjafter +\KOMA@key{subject}{% + \begingroup + \KOMA@set@ncmdkey{locfield}{@tempa}{% + {titled}{0},% + {untitled}{1},% + {afteropening}{2},% + {beforeopening}{3}% }{#1}% - } -\newif\if@phone -\KOMA@key{fromphone}[true]{\@setif{phone}{#1}}% -\newif\if@fax -\KOMA@key{fromfax}[true]{\@setif{fax}{#1}}% -\newif\if@email -\KOMA@key{fromemail}[true]{\@setif{email}{#1}}% -\newif\if@www -\KOMA@key{fromurl}[true]{\@setif{www}{#1}}% -\newif\if@logo -\KOMA@key{fromlogo}[true]{\@setif{logo}{#1}}% + \ifcase\@tempa + \endgroup + \@subjtrue + \or + \endgroup + \@subjfalse + \or + \endgroup + \@subjaftertrue + \else + \endgroup + \@subjafterfalse + \fi +} +\KOMA@ifkey{enlargefirstpage}{@enlargefp} \newcommand*{\@pageat}{4} \KOMA@key{pagenumber}{% \begingroup - \@setnumstate{\@tempa}{pagenumber}{% + \KOMA@set@ncmdkey{pagenumber}{@tempa}{% {no}{-1},{off}{-1},{false}{-1},% {topleft}{0},{headleft}{0},% {topmiddle}{1},{topcenter}{1},{topcentered}{1},% @@ -257,7 +512,7 @@ {botright}{5},{footright}{5},% {top}{10},{head}{10},{bot}{11},{foot}{11},% {left}{20},{middle}{21},{center}{21},{centered}{21},{right}{22}% - }{#1}% + }{#1}% \ifnum\@tempa<10 \edef\@tempa{\endgroup\edef\noexpand\@pageat{\@tempa}}% \else @@ -274,7 +529,7 @@ \ifnum\@pageat>2 \edef\@pageat{3}% \else - \edef\@pageat{0} + \edef\@pageat{0}% \fi \@tempcnta\@tempa \advance\@tempcnta by -20 @@ -283,696 +538,56 @@ \fi \fi \@tempa - } -\newcommand*\@ptsize{% - 2% - } -\KOMA@key{fontsize}{% - \begingroup - \setlength{\@tempdima}{#1} - \addtolength{\@tempdima}{-10\p@} - \edef\@tempa{\endgroup\noexpand\renewcommand*\noexpand\@ptsize{% - \strip@pt\@tempdima}} - \@tempa - } -\DeclareOption{10pt}{% - \@ObsoleteOption{fontsize=10pt} - } -\DeclareOption{11pt}{% - \@ObsoleteOption{fontsize=11pt} - } -\DeclareOption{12pt}{% - \@ObsoleteOption{fontsize=12pt} - } -\KOMA@key{twoside}[true]{\@setif{twoside}{#1}% - \if@twoside\@mparswitchtrue\else\@mparswitchfalse\fi} -\DeclareOption{oneside}{% - \@ObsoleteOption{twoside=false} - } -\KOMA@key{draft}[true]{% - \begingroup - \let\@drafttrue=\@tempswatrue - \let\@draftfalse=\@tempswafalse - \@setif{draft}{#1} - \if@tempswa - \global\setlength{\overfullrule}{5\p@} - \else - \global\setlength{\overfullrule}{\z@} - \fi - \endgroup - } -\DeclareOption{final}{% - \@ObsoleteOption{draft=false} - } -\newif\if@enlargefp -\KOMA@key{enlargefirstpage}[true]{% - \@setif[@enlargefp]{enlargefirstpage}{#1}} -\newif\if@parskip -\newcommand*{\scr@parskip}{\setlength{\parskip}{\z@}} -\newcommand*{\scr@parfillskip}{\setlength{\parfillskip}{\z@}} -\newcommand*{\@parskip@indent}{} -\KOMA@key{parskip}[true]{% - \begingroup% - \@tempcnta=-1\edef\@tempa{#1}% - \def\@tempb{false}\ifx\@tempa\@tempb\@tempcnta=0\fi - \def\@tempb{off}\ifx\@tempa\@tempb\@tempcnta=0\fi - \def\@tempb{full-}\ifx\@tempa\@tempb\@tempcnta=1\fi - \def\@tempb{half-}\ifx\@tempa\@tempb\@tempcnta=2\fi - \def\@tempb{full}\ifx\@tempa\@tempb\@tempcnta=3\fi - \def\@tempb{true}\ifx\@tempa\@tempb\@tempcnta=3\fi - \def\@tempb{on}\ifx\@tempa\@tempb\@tempcnta=3\fi - \def\@tempb{half}\ifx\@tempa\@tempb\@tempcnta=4\fi - \def\@tempb{full+}\ifx\@tempa\@tempb\@tempcnta=5\fi - \def\@tempb{half+}\ifx\@tempa\@tempb\@tempcnta=6\fi - \def\@tempb{full*}\ifx\@tempa\@tempb\@tempcnta=7\fi - \def\@tempb{half*}\ifx\@tempa\@tempb\@tempcnta=8\fi - \let\@tempa\endgroup - \ifnum \@tempcnta <\z@\relax - \ClassError{% - scrlttr2% - }{You've used an unknown option value}{% - You've tried to set option `parskip' to value `#1', but - allowed values\MessageBreak - are `full-', `full', `full+', `full*', `half-', - `half', `half+',\MessageBreak - `half*', `false' and `off' only.\MessageBreak - You may also use `on' instead of `full'.}% - \else\ifnum \@tempcnta =\z@ - \def\@tempa{\endgroup\@parskipfalse\@parskip@indent}% - \else - \let\@tempb=\relax\let\@tempc=\relax - \ifodd \@tempcnta - \def\@tempb{\def\noexpand\scr@parskip{% - \noexpand\setlength{\parskip}{\baselineskip}% - \noexpand\addtolength{\parskip}{% - \z@ \@plus .1\baselineskip}}}% - \else - \def\@tempb{\def\noexpand\scr@parskip{% - \noexpand\setlength{\parskip}{.5\baselineskip}% - \noexpand\addtolength{\parskip}{% - \z@ \@plus .5\baselineskip}}}% - \fi - \advance\@tempcnta by \m@ne - \divide\@tempcnta by \tw@ - \ifcase\@tempcnta - \def\@tempc{\def\noexpand\scr@parfillskip{% - \noexpand\setlength{\parfillskip}{\z@ \@plus 1fil}}}% - \or - \def\@tempc{\def\noexpand\scr@parfillskip{% - \noexpand\setlength{\parfillskip}{1em \@plus 1fil}}}% - \or - \def\@tempc{\def\noexpand\scr@parfillskip{% - \noexpand\setlength{\parfillskip}{.3333\linewidth}% - \noexpand\addtolength{\parfillskip}{\z@ \@plus 1fil}}}% - \or - \def\@tempc{\def\noexpand\scr@parfillskip{% - \noexpand\setlength{\parfillskip}{.25\linewidth}% - \noexpand\addtolength{\parfillskip}{\z@ \@plus 1fil}}}% - \fi - \edef\@tempa{% - \endgroup\noexpand\@parskiptrue\@tempb\@tempc% - \noexpand\@parskip@indent}% - \fi - \fi - \@tempa - } -\newcommand*{\cleardoublestandardpage}{} -\let\cleardoublestandardpage\cleardoublepage -\newcommand*{\cleardoubleemptypage}{\clearpage% - {\thispagestyle{empty}\cleardoublestandardpage}} -\newcommand*{\cleardoubleplainpage}{\clearpage% - {\thispagestyle{plain}\cleardoublestandardpage}} -\DeclareOption{cleardoubleempty}{% - \@ObsoleteOption{cleardoublepage=empty}} -\DeclareOption{cleardoubleplain}{% - \@ObsoleteOption{cleardoublepage=plain}} -\DeclareOption{cleardoublestandard}{% - \@ObsoleteOption{cleardoublepage=standard}} -\KOMA@key{cleardoublepage}{% - \begingroup% - \def\@tempc{% - \endgroup% - \ClassError{% - scrlttr2% - }{You've used an unknown switch value}{% - You've tried to set switch `cleardoublepage' to value - `#1', but\MessageBreak - allowed switch values are `emtpy', `plain' and - `standard' only.}} - \edef\@tempa{#1}% - \def\@tempb{empty}\ifx\@tempa\@tempb% - \def\@tempc{\endgroup% - \let\cleardoublepage\cleardoubleemptypage}\fi - \def\@tempb{plain}\ifx\@tempa\@tempb% - \def\@tempc{\endgroup% - \let\cleardoublepage\cleardoubleplainpage}\fi - \def\@tempb{standard}\ifx\@tempa\@tempb% - \def\@tempc{\endgroup% - \let\cleardoublepage\cleardoublestandardpage}\fi - \@tempc} -\newif\if@afield\@afieldtrue -\KOMA@key{addrfield}[true]{\@setif[@afield]{addrfield}{#1}} -\newif\if@baddr\@baddrtrue -\KOMA@key{backaddress}[true]{\@setif[@baddr]{backaddress}{#1}} -\newif\if@subj -\newif\if@subjafter -\KOMA@key{subject}[true]{% - \begingroup - \edef\@tempa{#1}% - \def\@tempb{afteropening}% - \ifx\@tempa\@tempb\endgroup\@subjaftertrue - \else - \def\@tempb{beforeopening}% - \ifx\@tempa\@tempb\endgroup\@subjafterfalse - \else - \endgroup\def\@setif@alsoerr{, `afteropening' and - `beforeopening'\MessageBreak}% - \@setxif[@subj]{subject}{#1}{titled}{untitled}% - \fi - \fi - } -\newif\if@bigloc -\KOMA@key{locfield}[wide]{\@setxif[@bigloc]{locfield}{#1}{wide}{narrow}} -\DeclareOption{wlocfield}{\@ObsoleteOption{locfield=wide}} -\DeclareOption{slocfield}{\@ObsoleteOption{locfield=narrow}} -\newif\if@fold\@foldtrue -\KOMA@key{foldmarks}[true]{\@setif[@fold]{foldmarks}{#1}} -\newif\if@orgdate\@orgdatetrue -\KOMA@key{numericaldate}[true]{% - \if@orgdate\@orgdatefalse\else\@orgdatetrue\fi - \@setif[@orgdate]{numericaldate}{#1} - \if@orgdate\@orgdatefalse\else\@orgdatetrue\fi } -\DeclareOption{scrdate}{\@ObsoleteOption{numericaldate=true}} -\DeclareOption{orgdate}{\@ObsoleteOption{numericaldate=false}} -\newif\if@refwide -\KOMA@key{refline}[wide]{\@setxif[@refwide]{refline}{#1}{wide}{narrow}} - \DeclareOption*{% - \let\scr@save@KV@errx=\KV@errx% - \IfFileExists{\CurrentOption.lco}{% - \begingroup\edef\@tempa{\endgroup% - \noexpand\AtEndOfClass{% - \noexpand\LoadLetterOption{\CurrentOption}}% - }% - \@tempa\let\KV@errx\@gobble - }{% - \renewcommand*{\KV@errx}[1]{\OptionNotUsed} - } - \expandafter\KOMAoptions\expandafter{\CurrentOption} - \let\KV@errx=\scr@save@KV@errx% - \let\scr@save@KV@errx=\relax% - } +%%% From File: scrkcile.dtx +%%% From File: scrkmisc.dtx +\DeclareKeyValOption[% + \let\scr@pti@nerr@r + \OptionNotUsed + \lco@test + \x@paper +]{KOMA} +\KOMAoptions{% + draft=false,headsepline=false,footsepline=false,parskip=false% + ,twoside=false% +} \ExecuteOptions{% } \ProcessOptions\relax -\AfterProcessOptions@hook -\let\AfterProcessOptions@hook=\undefined -\RequirePackage{scrlfile} -\newif\if@restonecol +%%% From File: scrkcomp.dtx +\expandafter\ifnum \@nameuse{scr@v@2.95}>\scr@compatibility + \newcommand*{\@setif}[2][]{% + \begingroup + \edef\@tempa{#1}\ifx\@tempa\@empty + \def\@tempa{\KOMA@set@ifkey{#2}{@#2}}% + \else + \def\@tempa{\KOMA@set@ifkey{#2}{#1}}% + \fi + \expandafter\endgroup\@tempa + }% +\fi +%%% From File: scrkfont.dtx \@tempcnta=10 -\advance\@tempcnta by\@ptsize\relax +\advance\@tempcnta by\@ptsize \xdef\@tempa{% -size% -\the\@tempcnta.clo} + size% + \the\@tempcnta.clo} \InputIfFileExists{\@tempa}{}{% - \ClassError - {scrlttr2} - {File `\@tempa' not found!\MessageBreak - This error is fatal!} - {To every fontsize you want to select by class option,\MessageBreak - you need a corresponding - size-class-option-file declaring all\MessageBreak - the macros based on fontsize.\MessageBreak - Ask a wizzard for more information or use another - fontsize.\MessageBreak - You cannot continue!} - \batchmode \csname @@end\endcsname \end -} -\KOMA@key{fontsize}{% - \begingroup - \setlength{\@tempdima}{#1} - \addtolength{\@tempdima}{-10\p@} - \ifnum \@tempdima=\@ptsize - \else - \ClassError{% - scrlttr2% - }{option `fontsize' not allowed\MessageBreak - after loading sizeX.clo file}{% - Maybe you've used option `fontsize' at - \string\KOMAoptions.\MessageBreak - You should set this option at \string\documentclass.} - \fi - \endgroup - } -\newcommand*{\scr@file@date@version}{} -\def\scr@file@date@version#1/#2/#3 #4 #5\@nil{#1/#2/#3 #4} -\RequirePackage{typearea}[\expandafter\expandafter\expandafter% - \scr@file@date@version\csname ver@% - scrlttr2% - .cls\endcsname\@nil] -\if@twoside - \addtolength{\oddsidemargin}{\evensidemargin} - \addtolength{\oddsidemargin}{-\ta@bcor} - \setlength{\evensidemargin}{.5\oddsidemargin} - \setlength{\oddsidemargin}{\evensidemargin} - \addtolength{\oddsidemargin}{\ta@bcor} -\fi -\KOMA@key{BCOR}{\typearea[{#1}]{last}} -\KOMA@key{DIV}{\typearea[current]{#1}} -\KOMA@key{headlines}{% - \def\ta@hh{#1\baselineskip}% - \typearea[current]{last}} -\KOMA@key{paper}{% - \begingroup - \edef\@tempc{\noexpand\@tempswatrue% - \noexpand\ifdim\paperwidth=\the\paperwidth\noexpand\else% - \noexpand\@tempswafalse\noexpand\fi% - \noexpand\ifdim\paperheight=\the\paperheight\noexpand\else% - \noexpand\@tempswafalse\noexpand\fi% - } - \edef\@tempa{#1}% - \def\@tempb{letter}\ifx\@tempa\@tempb% - \setlength{\paperheight}{11in}\setlength{\paperwidth}{8.5in}% - \else\def\@tempb{legal}\ifx\@tempa\@tempb% - \setlength{\paperheight}{14in}\setlength{\paperwidth}{8.5in}% - \else\def\@tempb{executive}\ifx\@tempa\@tempb% - \setlength{\paperheight}{10.5in}\setlength{\paperwidth}{7.25in}% - \else% - \def\ta@opt@err{% - \ClassError{% - scrlttr2% - }{papersize `#1' undefined}{% - You've told me to set KOMA option `paper' to value - `#1',\MessageBreak - but the value `#1' is not allowed to this - option.\MessageBreak - See the KOMA-Script manual for informations about known - papersizes.}% - } - \let\@headlines\ta@opt@err% - \x@@paper #1paperpaper\x@@paper% - \fi\fi\fi - \@tempc% - \if@tempswa% - \ClassInfo{% - scrlttr2% - }{% - change to already set paper size ignored% - } - \let\@tempc\endgroup% - \else% - \ClassWarning{% - scrlttr2% - }{% - you're changing paper size after loading package\MessageBreak - `typearea'. This may be dangerous.\MessageBreak - You should set paper size only at \string\documentclass\space - not\MessageBreak - with \string\KOMAoptions% - } - \edef\@tempc{\endgroup% - \setlength{\paperwidth}{\the\paperwidth}% - \setlength{\paperheight}{\the\paperheight}% - \noexpand\typearea[current]{last}} - \fi - \@tempc% - } -\setlength{\lineskip}{\p@} -\setlength{\normallineskip}{\p@} -\g@addto@macro{\@listi}{\@list@extra} -\let\@listI=\@listi -\g@addto@macro{\@listii}{\@list@extra} -\g@addto@macro{\@listiii}{\@list@extra} -\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}{} -\renewcommand*{% - \@parskip@indent}{% - \if@parskip - \setlength{\parindent}{\z@}% - \scr@parskip - \scr@parfillskip - \renewcommand*{\@list@extra}{% - \topsep\z@ \parsep\parskip \itemsep\z@}% - \else - \setlength{\parindent}{1em}% - \setlength{\parskip}{\z@ \@plus \p@}% - \setlength{\parfillskip}{\z@ \@plus 1fil}% - \renewcommand*{\@list@extra}{}% - \fi -}% -\@parskip@indent -\AtBeginDocument{% - \if@parskip\ifdim\parfillskip=\z@ \scr@parfillskip\fi\fi -} -\@lowpenalty = 51 -\@medpenalty =151 -\@highpenalty =301 -\newcommand*{\@firsthead}{\noindent% - \parbox[b]{\useplength{firstheadwidth}} - {\centering\usekomafont{fromaddress}{% - \ifkomavarempty{fromname}{}{% - {\usekomafont{fromname}% - {\ignorespaces\usekomavar{fromname}}}\\[-8pt] - \rule{\useplength{firstheadwidth}}{.4pt}\\ - }% - \ifkomavarempty{fromaddress}{}{% - \ignorespaces\usekomavar{fromaddress}% - }% - }% + \ClassError{\KOMAClassName}{% + File `\@tempa' not found!\MessageBreak + This error is fatal!% + }{% + To every fontsize you want to select by class + option,\MessageBreak + you need a corresponding + size-class-option-file declaring all\MessageBreak + the macros based on fontsize.\MessageBreak + Ask a wizzard for more information or use another + fontsize.\MessageBreak + You cannot continue!% }% - } -\newcommand*{\@gen@firsthead}{% - \ifcase\@alignfrom - \renewcommand*{\@firsthead}{\noindent - \parbox[b]{\textwidth}{\raggedright - {\usekomafont{fromname}\strut\ignorespaces - \usekomavar{fromname}% - {% - \ifnum\@rulefrom=1\\[-.5\baselineskip]% - \setlength{\@tempdima}{\useplength{fromrulewidth}}% - \ifdim\@tempdima=\z@ - \setlength{\@tempdima}{\textwidth}% - \if@logo - \settowidth{\@tempdimb}{\usekomavar{fromlogo}}% - \addtolength{\@tempdima}{-\@tempdimb}% - \fi - \fi - \expandafter\rule\expandafter{\the\@tempdima}{.4pt}% - \fi - }% - \\}% - {\usekomafont{fromaddress}\strut\ignorespaces - \usekomavar{fromaddress}% - \if@phone\\\usekomavar*{fromphone}\usekomavar{fromphone}\fi% - \if@fax\\\usekomavar*{fromfax}\usekomavar{fromfax}\fi% - \if@email\\\usekomavar*{fromemail}\usekomavar{fromemail}\fi% - \if@www\\\usekomavar*{fromurl}\usekomavar{fromurl}\fi% - \ifnum\@rulefrom=2\\[-.5\baselineskip]% - \setlength{\@tempdima}{\useplength{fromrulewidth}}% - \ifdim\@tempdima=\z@ - \setlength{\@tempdima}{\textwidth}% - \fi - \expandafter\rule\expandafter{\the\@tempdima}{.4pt}% - \fi - \\ - }% - }% - \if@logo - \llap{\usekomavar{fromlogo}}% - \fi - }% - \or - \renewcommand*{\@firsthead}{\noindent - \parbox[b]{\textwidth}{\centering - {\usekomafont{fromname}\strut\ignorespaces - \usekomavar{fromname}% - {% - \ifnum\@rulefrom=1\\[-.5\baselineskip]% - \setlength{\@tempdima}{\useplength{fromrulewidth}}% - \ifdim\@tempdima=\z@ - \setlength{\@tempdima}{\textwidth}% - \fi - \expandafter\rule\expandafter{\the\@tempdima}{.4pt}% - \fi - }% - \\ - }% - {\usekomafont{fromaddress}\strut\ignorespaces - \usekomavar{fromaddress}% - \if@phone\\\usekomavar*{fromphone}\usekomavar{fromphone}\fi% - \if@fax\\\usekomavar*{fromfax}\usekomavar{fromfax}\fi% - \if@email\\\usekomavar*{fromemail}\usekomavar{fromemail}\fi% - \if@www\\\usekomavar*{fromurl}\usekomavar{fromurl}\fi% - \ifnum\@rulefrom=2\\[-.5\baselineskip]% - \setlength{\@tempdima}{\useplength{fromrulewidth}}% - \ifdim\@tempdima=\z@ - \setlength{\@tempdima}{\textwidth}% - \fi - \expandafter\rule\expandafter{\the\@tempdima}{.4pt}% - \fi - \\ - }% - }% - }% - \or - \renewcommand*{\@firsthead}{\noindent - \if@logo - \rlap{\usekomavar{fromlogo}}% - \fi - \parbox[b]{\textwidth}{\raggedleft - {\usekomafont{fromname}\strut\ignorespaces - \usekomavar{fromname}% - {% - \ifnum\@rulefrom=1\\[-.5\baselineskip]% - \setlength{\@tempdima}{\useplength{fromrulewidth}}% - \ifdim\@tempdima=\z@ - \setlength{\@tempdima}{\textwidth}% - \if@logo - \settowidth{\@tempdimb}{\usekomavar{fromlogo}}% - \addtolength{\@tempdima}{-\@tempdimb}% - \fi - \fi - \expandafter\rule\expandafter{\the\@tempdima}{.4pt}% - \fi - }% - \\ - }% - {\usekomafont{fromaddress}\strut\ignorespaces - \usekomavar{fromaddress}% - \if@phone\\\usekomavar*{fromphone}\usekomavar{fromphone}\fi% - \if@fax\\\usekomavar*{fromfax}\usekomavar{fromfax}\fi% - \if@email\\\usekomavar*{fromemail}\usekomavar{fromemail}\fi% - \if@www\\\usekomavar*{fromurl}\usekomavar{fromurl}\fi% - \ifnum\@rulefrom=2\\[-.5\baselineskip]% - \setlength{\@tempdima}{\useplength{fromrulewidth}}% - \ifdim\@tempdima=\z@ - \setlength{\@tempdima}{\textwidth}% - \fi - \expandafter\rule\expandafter{\the\@tempdima}{.4pt}% - \fi - \\ - }% - }% - }% - \fi - } -\newcommand*{\@firstfoot}{} -\newcommand*{\@nexthead}{% - \rlap{\parbox[c]{\textwidth}{\raggedright\strut - \ifnum\@pageat=0\pagemark\else\leftmark\fi\strut}}% - \parbox[c]{\textwidth}{% - \centering\strut - \ifcase\@pageat - \rightmark - \or - \pagemark - \or - \rightmark - \fi\strut}% - \llap{\parbox[c]{\textwidth}{\raggedleft\strut - \ifcase\@pageat - \leftmark - \or - \rightmark - \or - \pagemark - \else - \rightmark - \fi\strut}}% - }% -\newcommand*{\@nextfoot}{% - \ifnum\@pageat>2 - \parbox[c]{\textwidth}{% - \ifcase\@pageat\or\or\or\raggedright\or\centering\or\raggedleft\fi - \strut\pagemark% - }% - \fi + \batchmode \csname @@end\endcsname \end } -\newcommand*{\pagemark}{{\usekomafont{pagenumber}\pagename\ \thepage}} -\renewcommand*{\ps@plain}{% - \renewcommand*{\@evenhead}{% - \vbox{\vbox{\hsize=\textwidth\hbox to\textwidth{% - \parbox[b]{\textwidth}{\strut - \ifnum\@pageat>-1 - \ifnum\@pageat<3 - \ifcase\@pageat\raggedright\or\centering\or\raggedleft\fi - \pagemark - \else - \hfill - \fi - \else - \hfill - \fi}% - }% - \if@hsl\kern1pt\rule{\textwidth}{.4pt}\fi - }% - }% - }% - \let\@oddhead\@evenhead% - \renewcommand*{\@evenfoot}{% - \parbox[t]{\textwidth}{% - \if@fsl - {% - \raggedright% - \vskip-\baselineskip\vskip.4pt - \hrulefill\\ - }% - \fi - \ifnum\@pageat>2 - \ifcase\@pageat\or\or\or\raggedright\or\centering\or\raggedleft\fi - \strut\pagemark - \else - \hfill - \fi - }% - }% - \let\@oddfoot\@evenfoot - } -\newcommand*{\ps@headings}{% - \let\@mkboth=\markboth - \renewcommand*{\@evenhead}{% - \vbox{% - \vbox{\hsize=\textwidth\hbox to\textwidth{\headfont\@nexthead}}% - \if@hsl\kern1pt\rule{\textwidth}{.4pt}\fi% - }% - }% - \let\@oddhead\@evenhead% - \renewcommand*{\@evenfoot}{% - \parbox[t]{\textwidth}{% - \if@fsl - {% - \raggedright% - \vskip-\baselineskip\vskip.4pt - \hrulefill\\ - }% - \fi - \vbox{\hsize=\textwidth\hbox to\textwidth{\headfont\@nextfoot}}% - }% - }% - \let\@oddfoot\@evenfoot - } -\newcommand*{\ps@myheadings}{% - \ps@headings\let\@mkboth=\@gobbletwo - } -\let\@mkboth=\@gobbletwo -\setlength\arraycolsep{5\p@} -\setlength\tabcolsep{6\p@} -\setlength\arrayrulewidth{.4\p@} -\setlength\doublerulesep{2\p@} -\setlength\tabbingsep{\labelsep} -\setlength{\skip\@mpfootins}{\skip\footins} -\setlength\fboxsep{3\p@} -\setlength\fboxrule{.4\p@} -\renewcommand*\theequation{% - \@arabic\c@equation} -\if@twocolumn - \setlength{\leftmargini}{2em} -\else - \setlength{\leftmargini}{2.5em} -\fi -\setlength{\leftmarginii}{2.2em} -\setlength{\leftmarginiii}{1.87em} -\setlength{\leftmarginiv}{1.7em} -\if@twocolumn - \setlength{\leftmarginv}{.5em} - \setlength{\leftmarginvi}{.5em} -\else - \setlength{\leftmarginv}{1em} - \setlength{\leftmarginvi}{1em} -\fi -\setlength{\leftmargin}{\leftmargini} -\setlength{\labelsep}{.5em} -\setlength{\labelwidth}{\leftmargini} -\addtolength{\labelwidth}{-\labelsep} -\@beginparpenalty=-\@lowpenalty -\@endparpenalty =-\@lowpenalty -\@itempenalty =-\@lowpenalty -\renewcommand*\theenumi{\@arabic\c@enumi} -\renewcommand*\theenumii{\@alph\c@enumii} -\renewcommand*\theenumiii{\@roman\c@enumiii} -\renewcommand*\theenumiv{\@Alph\c@enumiv} -\newcommand*\labelenumi{\theenumi.} -\newcommand*\labelenumii{\theenumii)} -\newcommand*\labelenumiii{\theenumiii.} -\newcommand*\labelenumiv{\theenumiv.} -\renewcommand*\p@enumii{\theenumi} -\renewcommand*\p@enumiii{\p@enumii(\theenumii)} -\renewcommand*\p@enumiv{\p@enumiii\theenumiii} -\newcommand*\labelitemi{\textbullet} -\newcommand*\labelitemii{\normalfont\bfseries\textendash} -\newcommand*\labelitemiii{\textasteriskcentered} -\newcommand*\labelitemiv{\textperiodcentered} -\newenvironment{description} - {\list{}{\labelwidth\z@ \itemindent-\leftmargin - \let\makelabel\descriptionlabel}} - {\endlist} -\newcommand*{\descriptionlabel}[1]{\hspace\labelsep - \descfont #1} -\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{verse} - {\let\\=\@centercr - \list{}{\itemsep \z@ - \itemindent -1.5em% - \listparindent\itemindent - \rightmargin \leftmargin - \advance\leftmargin 1.5em}% - \item\relax} - {\endlist} -\newenvironment{quotation} - {\list{}{\listparindent 1em% - \itemindent \listparindent - \rightmargin \leftmargin - \parsep \z@ \@plus\p@}% - \item\relax} - {\endlist} -\newenvironment{quote} - {\list{}{\rightmargin\leftmargin}% - \item\relax} - {\endlist} -\newenvironment{addmargin}{% - \@tempswafalse\@addmargin - }{\endlist} -\newenvironment{addmargin*}{% - \@tempswafalse - \if@twoside\ifthispageodd{}{\@tempswatrue}\fi - \@addmargin - }{\endlist} -\newcommand*{\@addmargin}[2][\@tempa]{% - \@tempcnta=\@listdepth - \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@} - \@listdepth=\@tempcnta% - }% - \item[]% - } -\newcommand\marginline[1]{\marginpar[\raggedleft{#1}]{\raggedright #1}} \DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm} \DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf} \DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt} @@ -980,195 +595,278 @@ size% \DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit} \DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl} \DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc} -\DeclareOldFontCommand{\sfb}{\normalfont\sffamily\bfseries}{\@nomath\sfb} +\DeclareOldFontCommand{\sfb}{\normalfont\sffamily\bfseries}{% + \@nomath\sfb} \DeclareRobustCommand*{\cal}{\@fontswitch\relax\mathcal} \DeclareRobustCommand*{\mit}{\@fontswitch\relax\mathnormal} -\newcommand*\descfont{\sffamily\bfseries} -\newcommand*\sectfont{\normalcolor\sffamily\bfseries} -\newcommand*\pnumfont{\normalfont\normalcolor} -\newcommand*\headfont{\normalfont\normalcolor\slshape} -\newcommand*\titlefont{\sectfont} -\newcommand*{\subject@font}{\normalfont\normalcolor\bfseries} -\newcommand*{\baddr@font}{\sffamily} \newcommand*{\setkomafont}[2]{% \@ifundefined{scr@fnt@#1}{% \@ifundefined{scr@fnt@instead@#1}{% - \ClassError{% - scrlttr2% - }{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} + \ClassError{\KOMAClassName}{% + 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% + }% }{% - \ClassError{% - scrlttr2% - }{font of element `#1' can't be set}{% - You've told me to redefine the font selection of the element,% - \MessageBreak% - but the element does not use a special font - selection. The\MessageBreak - The font of `#1' may be changed with element `\csname - scr@fnt@instead@#1\endcsname'} + \ClassInfo{\KOMAClassName}{% + 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\renewcommand% - \csname scr@fnt@#1\endcsname{#2}% - \@ifundefined{scr@fnt@wrn@#1}{}{% - \ClassWarning{% - scrlttr2% - }{\csname scr@fnt@wrn@#1\endcsname{#1}} - } - } + \expandafter\expandafter\expandafter\def\csname scr@fnt@#1\endcsname{#2}% + }% + \@ifundefined{scr@fnt@wrn@#1}{}{% + \ClassWarning{\KOMAClassName}{% + \csname scr@fnt@wrn@#1\endcsname{#1}% + }% + }% +} +\ifundefined{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{\l@addto@macro}[2]{% - \begingroup% - \toks@\expandafter{#1#2}% - \edef\@tempa{\endgroup\def\noexpand#1{\the\toks@}}% - \@tempa} \newcommand*{\addtokomafont}[2]{% \@ifundefined{scr@fnt@#1}{% \@ifundefined{scr@fnt@instead@#1}{% - \ClassError{% - scrlttr2% - }{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} + \ClassError{\KOMAClassName}{% + 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% + }% }{% - \ClassError{% - scrlttr2% - }{font of element `#1' can't be extended}{% - You've told me to extend the font selection of the element,% - \MessageBreak% - but the element does not use a special font - selection. The\MessageBreak - The font of `#1' may be changed with element `\csname - scr@fnt@instead@#1\endcsname'} + \ClassInfo{\KOMAClassName}{% + 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% + \expandafter\expandafter\expandafter\l@addto@macro \csname scr@fnt@#1\endcsname{#2}% - \@ifundefined{scr@fnt@wrn@#1}{}{% - \ClassWarning{% - scrlttr2% - }{\csname scr@fnt@wrn@#1\endcsname{#1}} - } - } + }% + \@ifundefined{scr@fnt@wrn@#1}{}{% + \ClassWarning{\KOMAClassName}{% + \csname scr@fnt@wrn@#1\endcsname{#1}% + }% + }% } \newcommand*{\usekomafont}[1]{% \@ifundefined{scr@fnt@#1}{% \@ifundefined{scr@fnt@instead@#1}{% - \ClassError{% - scrlttr2% - }{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} - }{% - \ClassWarning{% - scrlttr2% + \ClassError{\KOMAClassName}{% + font of element `#1' can't be used% }{% - You've told me to use the font selection of the element,% - \MessageBreak% - but the element does not use a special font - selection. The\MessageBreak - The font of `#1' may be selected with element `\csname - scr@fnt@instead@#1\endcsname'.\MessageBreak - I fix this using font of `\csname - scr@fnt@instead@#1\endcsname'}% + 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% }% - \@nameuse{scr@fnt@instead@#1}% }{% - \@nameuse{scr@fnt@#1}% + \ClassInfo{\KOMAClassName}{% + 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 + }% }% - } -\newcommand*{\scr@fnt@descriptionlabel}{\descfont} -\newcommand*{\scr@fnt@title}{\titlefont} -\newcommand*{\scr@fnt@sectioning}{\sectfont} -\newcommand*{\scr@fnt@pagenumber}{\pnumfont} -\let\scr@fnt@pagination=\scr@fnt@pagenumber -\newcommand*{\scr@fnt@pagehead}{\headfont} -\newcommand*{\scr@fnt@wrn@pagehead}[1]{% - font selection of elements `pagehead' and `pagefoot'\MessageBreak - changed, because you wanted to change font selection\MessageBreak - of element `#1'% -} -\let\scr@fnt@pagefoot=\scr@fnt@pagehead -\let\scr@fnt@wrn@pagefoot=\scr@fnt@wrn@pagehead -\newcommand*{\scr@fnt@subject}{\subject@font} -\newcommand*{\scr@fnt@backaddress}{\baddr@font} -\newcommand*{\scr@fnt@fromaddress}{\faddr@font} -\newcommand*{\scr@fnt@fromname}{\fname@font} -\renewcommand*\footnoterule{% - \kern-3\p@ - \ifx\@textbottom\relax\else\vskip \z@ \@plus.0005fil\fi - \hrule\@width.4\columnwidth - \kern 2.6\p@} -\@addtoreset{footnote}{chapter} -\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}% + \@nameuse{scr@fnt@instead@#1}% + }{% + \@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: scrkmisc.dtx +\setlength{\skip\@mpfootins}{\skip\footins} +\setlength\fboxsep{3\p@} +\setlength\fboxrule{.4\p@} +\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 + \ClassWarning{\KOMAClassName}{% + odd/even page label number \scr@tpo\space undefined}% + \edef\@tempa{\the\value{page}}% \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}% + \edef\@tempa{\csname tpo@\scr@tpo\endcsname}% \fi - \par - \parindent\@tempdimc\noindent - \ftn@font\hbox to \z@{\hss\@@makefnmark}##1} - \def\@@makefnmark{\hbox{\ftnm@font{#4}}} + \ifodd\number\@tempa + \aftergroup\thispagewasoddtrue + \else + \aftergroup\thispagewasoddfalse + \fi + \endgroup + \@esphack +} +\newif\ifthispagewasodd +\newcommand{\ifthispageodd}{% + \is@thispageodd + \ifthispagewasodd + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi } -\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} -\newcommand*{\thefootnotemark}{\@thefnmark} -\deffootnote[1em]{1.5em}{1em} - {\textsuperscript{\thefootnotemark}} -\deffootnotemark{\textsuperscript{\thefootnotemark}} \DeclareRobustCommand*\textsubscript[1]{% - \@textsubscript{\selectfont#1}} + \@textsubscript{\selectfont#1}% +} \newcommand{\@textsubscript}[1]{% - {\m@th\ensuremath{_{\mbox{\fontsize\sf@size\z@#1}}}}} -\newcommand*\today{\ifcase\month\or - January\or February\or March\or April\or May\or June\or - July\or August\or September\or October\or November\or December\fi - \space\number\day, \number\year} + {\m@th\ensuremath{_{\mbox{\fontsize\sf@size\z@#1}}}}% +} +%%% From File: scrklco.dtx +\newcommand*{\LoadLetterOption}[1]{% + \@ifundefined{@restore@catcode@level}% + {\let\@restore@catcode@level=\z@}{}% + \ifnum\@restore@catcode@level =\z@ + \ifnum\catcode`\@=11 + \let\@restore@catcode\relax + \else + \@tempcnta=\catcode`\@ + \edef\@restore@catcode{% + \noexpand\catcode`\noexpand\@=\the\@tempcnta}% + \makeatletter + \fi + \fi + \@tempcnta=\@restore@catcode@level\relax + \advance\@tempcnta by \@ne\relax + \edef\@restore@catcode@level{\the\@tempcnta}% + \InputIfFileExists{#1.lco}{% + \ClassInfo{% + scrlttr2% + }{Letter-Class-Option `#1' loaded}% + }{% + \ClassError{% + scrlttr2% + }{% + Letter-Class-Option file `#1.lco' not found% + }{% + You've told me to load the Letter-Class-Option `#1'. So I have + to load\MessageBreak + the file `#1.lco'. But the file isn't available.}% + }% + \@tempcnta=\@restore@catcode@level\relax + \advance\@tempcnta by \m@ne\relax + \edef\@restore@catcode@level{\the\@tempcnta}% + \ifnum\@tempcnta =\z@ + \@restore@catcode + \fi + } +\newcommand*{\LOPNP@option}{} +\newcommand*{\LOPNP@size}{} +\newcommand*{\@PapersizeWarning}{% + \begingroup% + \edef\@tempc{\noexpand\@tempswatrue + \noexpand\ifdim\paperwidth=\the\paperwidth\noexpand\else + \noexpand\@tempswafalse\noexpand\fi + \noexpand\ifdim\paperheight=\the\paperheight\noexpand\else + \noexpand\@tempswafalse\noexpand\fi + \noexpand\@@PapersizeWarning + } + \def\@tempb{letter}\ifx\LOPNP@size\@tempb% + \setlength{\paperheight}{11in}\setlength{\paperwidth}{8.5in}% + \else\def\@tempb{legal}\ifx\LOPNP@size\@tempb% + \setlength{\paperheight}{14in}\setlength{\paperwidth}{8.5in}% + \else\def\@tempb{executive}\ifx\LOPNP@size\@tempb% + \setlength{\paperheight}{10.5in}\setlength{\paperwidth}{7.25in}% + \else% + \def\ta@opt@err{% + \ClassError{% + scrlttr2% + }{papersize `\LOPNP@size' undefined}{% + You've told me to check for paper size + `\LOPNP@size'\MessageBreak + at letter option file `\LOPNP@option.lco',\MessageBreak + but this paper size is not supported.\MessageBreak + See the KOMA-Script manual for informations about known + paper sizes.}% + }% + \let\@headlines\ta@opt@err% + \expandafter\x@@paper\LOPNP@size paperpaper\x@@paper% + \fi\fi\fi + \@tempc + \endgroup% +} +\newcommand*{\@@PapersizeWarning}{% + \if@tempswa\else% + \ClassWarningNoLine{% + scrlttr2% + }{% + Letter option file `\LOPNP@option.lco'\MessageBreak + needs paper size `\LOPNP@size'.\MessageBreak + Current paper size is not `\LOPNP@size'!\MessageBreak + You should add `paper=\LOPNP@size' at the\MessageBreak + option list of \string\documentclass!\MessageBreak + Maybe you know what you are doing,\MessageBreak + so I do not change this myself}% + \fi + } +\newcommand*{\LetterOptionNeedsPapersize}[2]{% + \edef\LOPNP@size{#2}\edef\LOPNP@option{#1}% + } +%%% From File: scrklang.dtx \newcommand*{\providecaptionname}[3]{% \@ifundefined{captions#1}{% \@ifundefined{cap@info@#1@done}{% - \ClassInfo{% - scrlttr2% - }{% + \ClassInfo{\KOMAClassName}{% No captions found for `#1'\MessageBreak --> skipped% }% - \expandafter\let\csname cap@info@#1@done\endcsname\@empty}{}% + \expandafter\let\csname cap@info@#1@done\endcsname\@empty + }{}% }{% - \begingroup% - \let\@tempa\endgroup% - \csname captions#1\endcsname% - \ifx #2\undefined% - \def\@tempb{#1}% + \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{% @@ -1182,9 +880,7 @@ size% }% \fi \else - \ClassInfo{% - scrlttr2% - }{% + \ClassInfo{\KOMAClassName}{% `\string#2' at language `#1' already defined\MessageBreak --> skipped% @@ -1195,32 +891,31 @@ size% } \newcommand*{\newcaptionname}[3]{% \@ifundefined{captions#1}{% - \ClassInfo{% - scrlttr2% - }{% + \ClassInfo{\KOMAClassName}{% No captions found for `#1' --> defining% - }% + }% \@namedef{captions#1}{}% - }{}% - \begingroup% - \csname captions#1\endcsname% - \ifx #2\undefined\else% - \ClassError{% - scrlttr2% - }{% + }{}% + \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% + \endgroup \expandafter\g@addto@macro\csname captions#1\endcsname{% - \def#2{#3}}% + \def#2{#3}% + }% \begingroup - \def\@tempb{#1}% + \edef\@tempb{#1}% + \@onelevel@sanitize\@tempb + \@onelevel@sanitize\languagename \ifx\@tempb\languagename \def\@tempa{\endgroup\csname captions#1\endcsname}% \else @@ -1230,38 +925,37 @@ size% } \newcommand*{\renewcaptionname}[3]{% \@ifundefined{captions#1}{% - \ClassError{% - scrlttr2% - }{% + \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{% - scrlttr2% - }{% + }{}% + \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}}% + \def#2{#3}% + }% \begingroup - \def\@tempb{#1}% + \edef\@tempb{#1}% + \@onelevel@sanitize\@tempb + \@onelevel@sanitize\languagename \ifx\@tempb\languagename \def\@tempa{\endgroup\csname captions#1\endcsname}% \else @@ -1273,20 +967,27 @@ size% \@ifundefined{date#1}{% \ClassInfo{% scrlttr2% - }{% + }{% no date found for language `#1'\MessageBreak --> skipped% - } - }{% + }% + }{% \expandafter\g@addto@macro\csname date#1\endcsname{% \let\sym@date=\today% \def\num@date{#2}% \def\today{\if@orgdate\sym@date\else\num@date\fi}% - } - } - } -\AtBeginDocument{ + }% + }% +} +\AtBeginDocument{% \@ifundefined{captionsenglish}{\let\captionsenglish\@empty}{}% + \@ifundefined{dateenglish}{\def\dateenglish{% + \def\today{\ifcase\month\or + January\or February\or March\or April\or May\or June\or + July\or August\or September\or October\or November\or December\fi + \space\number\day, \number\year}% + }% + }{}% \providecaptionname{english}\yourrefname{Your ref.}% \providecaptionname{english}\yourmailname{Your letter of}% \providecaptionname{english}\myrefname{Our ref.}% @@ -1304,6 +1005,7 @@ size% \providecaptionname{english}\emailname{Email}% \providecaptionname{english}\wwwname{Url}% \providecaptionname{english}\bankname{Bank account}% + \g@addnumerical@date{english}{\number\day/\number\month/\number\year}% \providecaptionname{USenglish}\yourrefname{Your ref.}% \providecaptionname{USenglish}\yourmailname{Your letter of}% \providecaptionname{USenglish}\myrefname{Our ref.}% @@ -1321,6 +1023,7 @@ size% \providecaptionname{USenglish}\emailname{Email}% \providecaptionname{USenglish}\wwwname{Url}% \providecaptionname{USenglish}\bankname{Bank account}% + \g@addnumerical@date{USenglish}{\number\month/\number\day/\number\year}% \providecaptionname{american}\yourrefname{Your ref.}% \providecaptionname{american}\yourmailname{Your letter of}% \providecaptionname{american}\myrefname{Our ref.}% @@ -1338,6 +1041,7 @@ size% \providecaptionname{american}\emailname{Email}% \providecaptionname{american}\wwwname{Url}% \providecaptionname{american}\bankname{Bank account}% + \g@addnumerical@date{american}{\number\month/\number\day/\number\year}% \providecaptionname{british}\yourrefname{Your ref.}% \providecaptionname{british}\yourmailname{Your letter of}% \providecaptionname{british}\myrefname{Our ref.}% @@ -1355,6 +1059,7 @@ size% \providecaptionname{british}\emailname{Email}% \providecaptionname{british}\wwwname{Url}% \providecaptionname{british}\bankname{Bank account}% + \g@addnumerical@date{british}{\number\day/\number\month/\number\year}% \providecaptionname{UKenglish}\yourrefname{Your ref.}% \providecaptionname{UKenglish}\yourmailname{Your letter of}% \providecaptionname{UKenglish}\myrefname{Our ref.}% @@ -1372,6 +1077,7 @@ size% \providecaptionname{UKenglish}\emailname{Email}% \providecaptionname{UKenglish}\wwwname{Url}% \providecaptionname{UKenglish}\bankname{Bank account}% + \g@addnumerical@date{UKenglish}{\number\day/\number\month/\number\year}% \providecaptionname{german}\yourrefname{Ihr Zeichen}% \providecaptionname{german}\yourmailname{Ihr Schreiben vom}% \providecaptionname{german}\myrefname{Unser Zeichen}% @@ -1389,6 +1095,7 @@ size% \providecaptionname{german}\emailname{E-Mail}% \providecaptionname{german}\wwwname{URL}% \providecaptionname{german}\bankname{Bankverbindung}% + \g@addnumerical@date{german}{\number\day.\,\number\month.\,\number\year}% \providecaptionname{ngerman}\yourrefname{Ihr Zeichen}% \providecaptionname{ngerman}\yourmailname{Ihr Schreiben vom}% \providecaptionname{ngerman}\myrefname{Unser Zeichen}% @@ -1406,6 +1113,7 @@ size% \providecaptionname{ngerman}\emailname{E-Mail}% \providecaptionname{ngerman}\wwwname{URL}% \providecaptionname{ngerman}\bankname{Bankverbindung}% + \g@addnumerical@date{ngerman}{\number\day.\,\number\month.\,\number\year}% \providecaptionname{austrian}\yourrefname{Ihr Zeichen}% \providecaptionname{austrian}\yourmailname{Ihr Schreiben vom}% \providecaptionname{austrian}\myrefname{Unser Zeichen}% @@ -1423,6 +1131,7 @@ size% \providecaptionname{austrian}\emailname{E-Mail}% \providecaptionname{austrian}\wwwname{URL}% \providecaptionname{austrian}\bankname{Bankverbindung}% + \g@addnumerical@date{austrian}{\number\day.\,\number\month.\,\number\year}% \providecaptionname{french}\yourrefname{Vos r\'ef\'erences}% \providecaptionname{french}\yourmailname{Votre lettre du}% \providecaptionname{french}\myrefname{Nos r\'ef\'erences}% @@ -1440,23 +1149,26 @@ size% \providecaptionname{french}\emailname{E-mail}% \providecaptionname{french}\wwwname{URL}% \providecaptionname{french}\bankname{Compte en banque}% - \providecaptionname{italian}\yourrefname{Vs./Rif.}% - \providecaptionname{italian}\yourmailname{Vs.~lettera del}% - \providecaptionname{italian}\myrefname{Ns./Rif.}% - \providecaptionname{italian}\customername{Nr.~cliente}% - \providecaptionname{italian}\invoicename{Nr.~fattura}% + \g@addnumerical@date{french}{\number\day.\,\number\month.\,\number\year}% + \providecaptionname{italian}\yourrefname{Vs./Rif.}% or Vostro Riferimento + \providecaptionname{italian}\yourmailname{Vs.~lettera del}% or Vostra + % lettera del + \providecaptionname{italian}\myrefname{Ns./Rif.}% or Nostro Riferimento + \providecaptionname{italian}\customername{Nr.~cliente}% or Cliente num. + \providecaptionname{italian}\invoicename{Nr.~fattura}% or Fattura num. \providecaptionname{italian}\subjectname{Oggetto}% - \providecaptionname{italian}\ccname{Per conoscenza}% - \providecaptionname{italian}\enclname{Allegato}% + \providecaptionname{italian}\ccname{Per conoscenza}% or Copia a + \providecaptionname{italian}\enclname{Allegato}% or (plural) Allegati \providecaptionname{italian}\headtoname{A}% - \providecaptionname{italian}\headfromname{}% TODO: translate it + \providecaptionname{italian}\headfromname{Da}% \providecaptionname{italian}\datename{Data}% \providecaptionname{italian}\pagename{Pagina}% - \providecaptionname{italian}\phonename{}% TODO: translate it - \providecaptionname{italian}\faxname{}% TODO: translate it - \providecaptionname{italian}\emailname{}% TODO: translate it - \providecaptionname{italian}\wwwname{}% TODO: translate it - \providecaptionname{italian}\bankname{}% TODO: translate it + \providecaptionname{italian}\phonename{Telefono}% + \providecaptionname{italian}\faxname{Fax}% + \providecaptionname{italian}\emailname{Email}% + \providecaptionname{italian}\wwwname{Sito Web}% + \providecaptionname{italian}\bankname{Conto bancario}% + \g@addnumerical@date{italian}{\number\day.\,\number\month.\,\number\year}% \providecaptionname{spanish}\yourrefname{Su ref.}% \providecaptionname{spanish}\yourmailname{Su carta de}% \providecaptionname{spanish}\myrefname{Nuestra ref.}% @@ -1474,6 +1186,7 @@ size% \providecaptionname{spanish}\emailname{Email}% or Correo electr\'onico \providecaptionname{spanish}\wwwname{URL}% or P\`agina web \providecaptionname{spanish}\bankname{Cuenta bancaria}% + \g@addnumerical@date{spanish}{\number\day.\,\number\month.\,\number\year}% \providecaptionname{croatian}\yourrefname{Va\v{s} znak}% \providecaptionname{croatian}\yourmailname{Va\v{s}e pismo od}% \providecaptionname{croatian}\myrefname{Na\v{s} znak}% @@ -1491,6 +1204,7 @@ size% \providecaptionname{croatian}\emailname{E-Mail}% \providecaptionname{croatian}\wwwname{URL}% \providecaptionname{croatian}\bankname{Bankovna veza}% + \g@addnumerical@date{croatian}{\number\day.\,\number\month.\,\number\year.}% \providecaptionname{dutch}\yourrefname{Uw kenmerk}% \providecaptionname{dutch}\yourmailname{Uw brief van}% \providecaptionname{dutch}\myrefname{Ons kenmerk}% @@ -1506,34 +1220,27 @@ size% \providecaptionname{dutch}\phonename{Telefoon}% \providecaptionname{dutch}\faxname{Fax}% \providecaptionname{dutch}\emailname{E--mail}% - \providecaptionname{dutch}\urlname{URL}% + \providecaptionname{dutch}\wwwname{URL}% \providecaptionname{dutch}\bankname{Bankrekening}% - \g@addnumerical@date{english}{% - \number\day/\number\month/\number\year} - \g@addnumerical@date{british}{% - \number\day/\number\month/\number\year} - \g@addnumerical@date{UKenglish}{% - \number\day/\number\month/\number\year} - \g@addnumerical@date{USenglish}{% - \number\month/\number\day/\number\year} - \g@addnumerical@date{american}{% - \number\month/\number\day/\number\year} - \g@addnumerical@date{german}{% - \number\day.\,\number\month.\,\number\year} - \g@addnumerical@date{ngerman}{% - \number\day.\,\number\month.\,\number\year} - \g@addnumerical@date{austrian}{% - \number\day.\,\number\month.\,\number\year} - \g@addnumerical@date{french}{% - \number\day.\,\number\month.\,\number\year} - \g@addnumerical@date{italian}{% - \number\day.\,\number\month.\,\number\year} - \g@addnumerical@date{spanish}{% - \number\day.\,\number\month.\,\number\year} - \g@addnumerical@date{croatian}{% - \number\day.\,\number\month.\,\number\year.} - \g@addnumerical@date{dutch}{% - \number\day.\,\number\month.\,\number\year} + \g@addnumerical@date{dutch}{\number\day.\,\number\month.\,\number\year}% + \providecaptionname{finnish}\yourrefname{Viitteenne}% + \providecaptionname{finnish}\yourmailname{Kirjeenne}% + \providecaptionname{finnish}\myrefname{Viitteemme}% + \providecaptionname{finnish}\customername{Asiakasnumero}% + \providecaptionname{finnish}\invoicename{Laskun numero}% + \providecaptionname{finnish}\subjectname{Asia}% + \providecaptionname{finnish}\ccname{Jakelu}% + \providecaptionname{finnish}\enclname{Liitteet}% + \providecaptionname{finnish}\headtoname{Vastaanottaja}% + \providecaptionname{finnish}\headfromname{L\"ahett\"aj\"a}% + \providecaptionname{finnish}\datename{P\"aiv\"a}% + \providecaptionname{finnish}\pagename{Sivu}% + \providecaptionname{finnish}\phonename{Puhelin}% + \providecaptionname{finnish}\faxname{Faksi}% + \providecaptionname{finnish}\emailname{S\"ahk\"oposti}% + \providecaptionname{finnish}\wwwname{URL}% + \providecaptionname{finnish}\bankname{Pankkitilin numero}% + \g@addnumerical@date{finnish}{\number\day.\number\month.\number\year}% \captionsenglish \dateenglish \begingroup\expandafter\expandafter\expandafter\endgroup @@ -1556,7 +1263,7 @@ size% This may result in use of wrong language!\MessageBreak You should use a compatible language package\MessageBreak - (e.g. `Babel', `german', `ngerman', ...)} + (e.g. `Babel', `german', `ngerman', ...)}% \ifx\l@american\undefined\else\ifnum\language=\l@american \captionsamerican \dateamerican @@ -1606,11 +1313,11 @@ size% \datedutch \fi\fi \else - \edef\@tempa{nohyphenation} + \edef\@tempa{nohyphenation}% \ifx\languagename\@tempa \ClassWarningNoLine{% scrlttr2% - }{% + }{% You've selected language `\languagename'.\MessageBreak Maybe your LaTeX format contains Babel extension\MessageBreak but you have not selected a language using\MessageBreak @@ -1618,47 +1325,23 @@ size% Please select another language!\MessageBreak Only as a workaround english captions and date\MessageBreak will be used% - }% + }% \else - \expandafter\selectlanguage\expandafter{\languagename} + \expandafter\selectlanguage\expandafter{\languagename}% \ClassInfo{% scrlttr2% - }{% + }{% used language is `\languagename'.\MessageBreak Supported languages are `english', `UKenglish',\MessageBreak `british', `american', `USenglish',\MessageBreak `german', `ngerman', `austrian',\MessageBreak - `dutch', `italian', `spanish', `croatian'% - } + `dutch', `italian', `spanish',\MessageBreak + `croatian', 'finnish'% + }% \fi \fi - } -\newenvironment{letter}[2][]{% - \newpage - \if@twoside\ifodd\c@page\else - \thispagestyle{empty}\null\newpage\fi\fi - \setcounter{page}{\@ne}% - \setcounter{footnote}{0}% - \interlinepenalty=200\@processto{#2}% - \KOMAoptions{#1}% - \@beginletterhook - }{% - \stopletter\@@par\pagebreak\@@par% - } -\newcommand*{\stopletter}{} -\newcommand{\@processto}[1]{% - \ifx\relax#1\relax\else - \expandafter\@xproc#1\\\@nil\ifkomavarempty{toaddress}{}{% - \expandafter\@xproc#1\@nil}% - \fi } -\newcommand*{\@xproc}{} -\long\def\@xproc#1\\#2\@nil{% - \setkomavar{toname}{#1}\setkomavar{toaddress}{#2}} -\newcommand*{\fname@font}{} -\newcommand*{\faddr@font}{} -\newcommand{\AtBeginLetter}{\g@addto@macro\@beginletterhook} -\newcommand{\@beginletterhook}{} +%%% From File: scrkvars.dtx \newcommand*{\newkomavar}{% \@ifstar {\@tempswatrue\@newkomavar}{\@tempswafalse\@newkomavar}} \newcommand*{\@newkomavar}[2][\relax]{% @@ -1681,8 +1364,8 @@ size% is undefined, but the name of the variable is defined.\MessageBreak This should never happen. So someone crashs me!% - } - } + }% + }% }{% \ClassError{% scrlttr2% @@ -1690,8 +1373,8 @@ size% Variable `#2' already defined% }{% I'll ignore this command, if you'll continue.% - } - } + }% + }% } \newcommand*{\setkomavar}{% \@ifstar {\@setkomaname}{\@setkomavar}} @@ -1716,7 +1399,7 @@ size% \ifx\@tempa\@tempb\endgroup\else \endgroup\@namedef{scr@#1@name}{#2}% \fi - } + }% } \newcommand*{\@komavar@err}[2]{% \ClassError{% @@ -1773,90 +1456,7 @@ size% \fi }% } -\newkomavar{signature} -\setkomavar{signature}{\usekomavar{fromname}} -\newkomavar{place} -\newkomavar{location} -\newkomavar{backaddress} -\setkomavar{backaddress}{% - \ifkomavarempty{fromname}{}{% - \strut\ignorespaces\usekomavar{fromname}% - \ifkomavarempty{fromaddress}{}{\\}}% - \ifkomavarempty{fromaddress}{}{% - \strut\ignorespaces\usekomavar{fromaddress}}% - } -\newkomavar{specialmail} -\newkomavar{title} -\newkomavar{fromlogo} -\newkomavar[\usekomavar{place}]{placeseparator} -\setkomavar{placeseparator}{,~} -\newkomavar[\subjectname]{subjectseparator} -\setkomavar{subjectseparator}{: } -\newkomavar[\ccname]{ccseparator} -\setkomavar{ccseparator}{: } -\newkomavar[\enclname]{enclseparator} -\setkomavar{enclseparator}{: } -\newkomavar{backaddressseparator} -\setkomavar{backaddressseparator}{,~} -\newkomavar[\phonename]{phoneseparator} -\setkomavar{phoneseparator}{:~} -\newkomavar[\faxname]{faxseparator} -\setkomavar{faxseparator}{:~} -\newkomavar[\emailname]{emailseparator} -\setkomavar{emailseparator}{:~} -\newkomavar[\wwwname]{urlseparator} -\setkomavar{urlseparator}{:~} -\newkomavar[\headfromname]{fromname} -\newkomavar[\usekomavar{fromname}]{fromaddress} -\newkomavar[\headtoname]{toname} -\newkomavar[\usekomavar{toname}]{toaddress} -\newkomavar[\usekomavar*{phoneseparator}% - \usekomavar{phoneseparator}]{fromphone} -\newkomavar[\usekomavar*{faxseparator}% - \usekomavar{faxseparator}]{fromfax} -\newkomavar[\usekomavar*{emailseparator}% - \usekomavar{emailseparator}]{fromemail} -\newkomavar[\usekomavar*{urlseparator}% - \usekomavar{urlseparator}]{fromurl} -\newkomavar[\bankname]{frombank} -\newkomavar[\yourrefname]{yourref} -\newkomavar[\yourmailname]{yourmail} -\newkomavar[\myrefname]{myref} -\newkomavar[\customername]{customer} -\newkomavar[\invoicename]{invoice} -\newkomavar[\usekomavar*{subjectseparator}% - \usekomavar{subjectseparator}]{subject} -\newkomavar[\datename]{date} -\setkomavar{date}{\@date} -\newcommand{\firsthead}[1]{% - \renewcommand*{\@alignfrom}{10000}% - \renewcommand*{\@firsthead}{\noindent#1}% - } -\newcommand{\firstfoot}[1]{% - \renewcommand*{\@firstfoot}{\noindent#1}% - } -\newcommand{\nexthead}[1]{% - \renewcommand*{\@nexthead}{\noindent#1}% - } -\newcommand{\nextfoot}[1]{% - \renewcommand*{\@nextfoot}{\noindent#1}% - } -\newcommand*{\foldmarkson}{% - \@ObsoleteCommand{\foldmarkson}{foldmarks=on}} -\newcommand*{\foldmarksoff}{% - \@ObsoleteCommand{\foldmarksoff}{foldmarks=off}} -\newcommand*{\addrfieldon}{% - \@ObsoleteCommand{\addrfieldon}{addrfield=on}} -\newcommand*{\addrfieldoff}{% - \@ObsoleteCommand{\addrfieldoff}{addrfield=off}} -\newcommand*{\subjecton}{% - \@ObsoleteCommand{\subjecton}{subject=titled}} -\newcommand*{\subjectoff}{% - \@ObsoleteCommand{\subjectoff}{subject=untitled}} -\newcommand*{\subjectafteron}{% - \@ObsoleteCommand{\subjectafteron}{subject=afteropening}} -\newcommand*{\subjectafteroff}{% - \@ObsoleteCommand{\subjectafteroff}{subject=beforeopening}} +%%% From File: scrkplen.dtx \newcommand*{\@newplength}[1]{% \@ifundefined{ltr@len@#1}{% \expandafter\let\csname ltr@len@#1\endcsname=\z@% @@ -1869,8 +1469,8 @@ size% \string\@newplength\MessageBreak which is already defined. Try another name or better\MessageBreak - Don't use this KOMA-Script internal macro} - } + Don't use this KOMA-Script internal macro}% + }% } \newcommand*{\useplength}[1]{% \expandafter\number\expandafter\csname ltr@len@#1\endcsname} @@ -1905,6 +1505,520 @@ size% }% \@tempa% } +%%% From File: scrktare.dtx +\let\@BCOR =\relax +\let\@@BCOR =\relax +\let\@DIV =\relax +\let\@@DIV =\relax +\let\@headlines =\relax +\let\@@headlines =\relax +\let\x@paper =\relax +\let\x@@paper =\relax +\let\scr@pti@nerr@r =\relax +\RequirePackage{typearea}[\KOMAScriptVersion] +%%% From File: scrkpar.dtx +\setlength{\lineskip}{\p@} +\setlength{\normallineskip}{\p@} +\newcommand*{\scr@selectfont}{}\let\scr@selectfont\selectfont +\BeforePackage{everysel}{% + \ifx\selectfont\scr@new@selectfont\else + \ClassWarningNoLine{\KOMAClassName}{discard change of \string\selectfont}% + \fi + \let\selectfont\scr@selectfont +} +\AfterPackage{everysel}{% + \g@addto@macro\selectfont{\par@update}% + \let\scr@new@selectfont\selectfont +} +\g@addto@macro\selectfont{\par@update} +\newcommand*{\scr@new@selectfont}{}\let\scr@new@selectfont\selectfont +\newcommand*{\par@updaterelative}{% + \begingroup + \edef\@tempa{\the\parindent}\ifx\@tempa\f@parindent + \aftergroup\parindent@update + \fi + \edef\@tempa{\the\parskip}\ifx\@tempa\f@parskip + \aftergroup\parskip@update + \fi + \edef\@tempa{\the\parfillskip}\ifx\@tempa\f@parfillskip + \aftergroup\parfillskip@update + \fi + \endgroup +} +\newcommand*{\parindent@update}{% + \scr@defaultunits\parindent\scr@parindent + \begingroup + \let\@tempb\endgroup + \edef\@tempa{\the\parindent}\ifx\@tempa\f@parindent\else + \def\@tempb{\endgroup\edef\f@parindent{\the\parindent}}% + \fi + \@tempb +} +\newcommand*{\parskip@update}{% + \scr@defaultunits\parskip\scr@parskip + \begingroup + \let\@tempb\endgroup + \edef\@tempa{\the\parskip}\ifx\@tempa\f@parskip\else + \def\@tempb{\endgroup\edef\f@parskip{\the\parskip}}% + \fi + \@tempb +} +\newcommand*{\parfillskip@update}{% + \scr@defaultunits\parfillskip\scr@parfillskip + \begingroup + \let\@tempb\endgroup + \edef\@tempa{\the\parfillskip}\ifx\@tempa\f@parfillskip\else + \def\@tempb{\endgroup\edef\f@parfillskip{\the\parfillskip}}% + \fi + \@tempb +} +\newcommand*{\scr@defaultunits}[2]{% + \begingroup + \edef\@tempa{#2}% + \expandafter\scr@@defaultunits\expandafter#1\@tempa plusplus\@nnil + \edef\@tempa{\noexpand\endgroup\noexpand\setlength{\noexpand#1}{\the#1}}% + \@tempa +} +\newcommand*{\scr@@defaultunits}{} +\def\scr@@defaultunits#1#2plus#3plus#4\@nnil{% + \ifx\relax#3\relax + \scr@@@defaultunits#1{}#2minusminus\@nnil + \else + \scr@@@defaultunits#1{#2}#3minusminus\@nnil + \fi +} +\newcommand*{\scr@@@defaultunits}{} +\def\scr@@@defaultunits#1#2#3minus#4minus#5\@nnil{% + \ifx\relax#2\relax + \@defaultunits\@tempskipa#3pt\relax\@nnil + \setlength{#1}{\@tempskipa}% + \else + \@defaultunits\@tempskipa\z@\@plus#3pt\relax\@nnil + \setlength{#1}{\@tempskipa}% + \@defaultunits\@tempskipa#2pt\relax\@nnil + \addtolength{#1}{\@tempskipa}% + \fi + \ifx\relax#4\relax\else + \@defaultunits\@tempskipa\z@\@minus #4pt\relax\@nnil + \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*{\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@\parskip\parskip\itemsep\z@\fi +} +\@lowpenalty = 51 +\@medpenalty =151 +\@highpenalty =301 +%%% From File: scrkpage.dtx +\newcommand*{\set@tempdima@hw}{% + \setlength{\@tempdima}{\textwidth}% + \if@mincl + \addtolength{\@tempdima}{\marginparsep}% + \addtolength{\@tempdima}{\marginparwidth}% + \fi +} +\newcommand*\pnumfont{\normalfont\normalcolor} +\newcommand*\headfont{\normalfont\normalcolor\slshape} +\newcommand*{\scr@fnt@pagenumber}{\pnumfont} +\aliaskomafont{pagination}{pagenumber} +\newcommand*{\scr@fnt@pagehead}{\headfont} +\newcommand*{\scr@fnt@wrn@pagehead}[1]{% + font selection of elements `pagehead' and `pagefoot'\MessageBreak + changed, because they are same% +} +\aliaskomafont{pagefoot}{pagehead} +\newcommand*{\pagemark}{{\usekomafont{pagenumber}% + \pagename\ % + \thepage}} + \renewcommand*{\ps@plain}{% + \renewcommand*{\@oddhead}{% + \vbox{\vbox{\hsize=\textwidth\hbox to\textwidth{% + \parbox[b]{\textwidth}{\strut + \ifnum\@pageat>-1 + \ifnum\@pageat<3 + \ifcase\@pageat\raggedright\or\centering\or\raggedleft\fi + \pagemark + \else + \hfill + \fi + \else + \hfill + \fi + }% + }% + \if@hsl\kern1pt\rule{\textwidth}{.4pt}\fi + }% + }% + }% + \let\@evenhead\@oddhead% + \renewcommand*{\@oddfoot}{% + \parbox[t]{\textwidth}{% + \if@fsl + {% + \raggedright% + \vskip-\baselineskip\vskip.4pt + \hrulefill\\ + }% + \fi + \ifnum\@pageat>2 + \ifcase\@pageat\or\or\or\raggedright\or\centering\or\raggedleft\fi + \strut\pagemark + \else + \hfill + \fi + }% + }% + \let\@evenfoot\@oddfoot + } + \newcommand*{\ps@headings}{\let\@mkboth\markboth + \renewcommand*{\@oddhead}{% + \vbox{% + \vbox{\hsize=\textwidth\hbox to\textwidth{\headfont\@nexthead}}% + \if@hsl\kern1pt\rule{\textwidth}{.4pt}\fi% + }% + }% + \let\@evenhead\@oddhead + \renewcommand*{\@oddfoot}{% + \parbox[t]{\textwidth}{% + \if@fsl + {% + \raggedright% + \vskip-\baselineskip\vskip.4pt + \hrulefill\\ + }% + \fi + \vbox{\hsize=\textwidth\hbox to\textwidth{\headfont\@nextfoot}}% + }% + }% + \let\@evenfoot\@oddfoot + } + \newcommand*{\ps@myheadings}{% + \ps@headings + \let\@mkboth\@gobbletwo + } +\pagestyle{plain} +\pagenumbering{arabic} + \raggedbottom + \onecolumn +%%% From File: scrkfloa.dtx +\newcommand\marginline[1]{% + \marginpar[\raggedleft{#1}]{\raggedright #1}% +} +%%% From File: scrkftn.dtx +\renewcommand*\footnoterule{% + \kern-3\p@ + \ifx\@textbottom\relax\else\vskip \z@ \@plus.05fil\fi + \hrule\@width.4\columnwidth + \kern 2.6\p@} +\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} +\newcommand*{\thefootnotemark}{\@thefnmark} +\deffootnote[1em]{1.5em}{1em}{\textsuperscript{\thefootnotemark}} +\deffootnotemark{\textsuperscript{\thefootnotemark}} +%%% From File: scrklist.dtx + \setlength{\leftmargini}{2.5em} +\setlength{\leftmarginii}{2.2em} +\setlength{\leftmarginiii}{1.87em} +\setlength{\leftmarginiv}{1.7em} + \setlength{\leftmarginv}{1em} + \setlength{\leftmarginvi}{1em} +\setlength{\leftmargin}{\leftmargini} +\setlength{\labelsep}{.5em} +\setlength{\labelwidth}{\leftmargini} +\addtolength{\labelwidth}{-\labelsep} +\@beginparpenalty=-\@lowpenalty +\@endparpenalty =-\@lowpenalty +\@itempenalty =-\@lowpenalty +\setlength\arraycolsep{5\p@} +\setlength\tabcolsep{6\p@} +\setlength\arrayrulewidth{.4\p@} +\setlength\doublerulesep{2\p@} +\setlength\tabbingsep{\labelsep} +\renewcommand*\theenumi{\@arabic\c@enumi} +\renewcommand*\theenumii{\@alph\c@enumii} +\renewcommand*\theenumiii{\@roman\c@enumiii} +\renewcommand*\theenumiv{\@Alph\c@enumiv} +\newcommand*\labelenumi{\theenumi.} +\newcommand*\labelenumii{\theenumii)} +\newcommand*\labelenumiii{\theenumiii.} +\newcommand*\labelenumiv{\theenumiv.} +\renewcommand*\p@enumii{\theenumi} +\renewcommand*\p@enumiii{\p@enumii(\theenumii)} +\renewcommand*\p@enumiv{\p@enumiii\theenumiii} +\newcommand*\labelitemi{\textbullet} +\newcommand*\labelitemii{\normalfont\bfseries\textendash} +\newcommand*\labelitemiii{\textasteriskcentered} +\newcommand*\labelitemiv{\textperiodcentered} +\newenvironment{description}{% + \list{}{\labelwidth\z@ \itemindent-\leftmargin + \let\makelabel\descriptionlabel}% +}{% + \endlist +} +\newcommand*{\descriptionlabel}[1]{% + \hspace{\labelsep}\descfont #1% +} +\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{verse}{% + \let\\=\@centercr + \list{}{\itemsep=\z@ + \itemindent=-1.5em + \listparindent=\itemindent + \rightmargin=\leftmargin + \advance\leftmargin by1.5em + }% + \item\relax +}{% + \endlist +} +\newenvironment{quotation}{% + \list{}{\listparindent 1em% + \itemindent \listparindent + \rightmargin \leftmargin + \parsep \z@ \@plus\p@ + }% + \item\relax +}{% + \endlist +} +\newenvironment{quote}{% + \list{}{\rightmargin\leftmargin}% + \item\relax +}{% + \endlist +} +\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% +} +\newcommand*\descfont{\sffamily\bfseries} +\newcommand*{\scr@fnt@descriptionlabel}{\descfont} +%%% From File: scrknpap.dtx +\newcommand*{\@firsthead}{\noindent% + \parbox[b]{\useplength{firstheadwidth}}% + {\centering\usekomafont{fromaddress}{% + \ifkomavarempty{fromname}{}{% + {\usekomafont{fromname}% + {\ignorespaces\usekomavar{fromname}}}\\[-8pt] + \rule{\useplength{firstheadwidth}}{.4pt}\\ + }% + \ifkomavarempty{fromaddress}{}{% + \ignorespaces\usekomavar{fromaddress}% + }% + }% + }% +} +\newcommand*{\@gen@firsthead}{% + \ifcase\@alignfrom + \renewcommand*{\@firsthead}{\noindent + \parbox[b]{\textwidth}{\raggedright + {\usekomafont{fromname}\strut\ignorespaces + \usekomavar{fromname}% + {% + \ifnum\@rulefrom=1\\[-.5\baselineskip]% + \setlength{\@tempdima}{\useplength{fromrulewidth}}% + \ifdim\@tempdima=\z@ + \setlength{\@tempdima}{\textwidth}% + \if@logo + \settowidth{\@tempdimb}{\usekomavar{fromlogo}}% + \addtolength{\@tempdima}{-\@tempdimb}% + \fi + \fi + \expandafter\rule\expandafter{\the\@tempdima}{.4pt}% + \fi + }% + \\ + }% + {\usekomafont{fromaddress}\strut\ignorespaces + \usekomavar{fromaddress}% + \if@phone\\\usekomavar*{fromphone}\usekomavar{fromphone}\fi% + \if@fax\\\usekomavar*{fromfax}\usekomavar{fromfax}\fi% + \if@email\\\usekomavar*{fromemail}\usekomavar{fromemail}\fi% + \if@www\\\usekomavar*{fromurl}\usekomavar{fromurl}\fi% + \ifnum\@rulefrom=2\\[-.5\baselineskip]% + \setlength{\@tempdima}{\useplength{fromrulewidth}}% + \ifdim\@tempdima=\z@ + \setlength{\@tempdima}{\textwidth}% + \fi + \expandafter\rule\expandafter{\the\@tempdima}{.4pt}% + \fi + \\ + }% + }% + \if@logo + \llap{\usekomavar{fromlogo}}% + \fi + }% + \or + \renewcommand*{\@firsthead}{\noindent + \parbox[b]{\textwidth}{\centering + {\usekomafont{fromname}\strut\ignorespaces + \usekomavar{fromname}% + {% + \ifnum\@rulefrom=1\\[-.5\baselineskip]% + \setlength{\@tempdima}{\useplength{fromrulewidth}}% + \ifdim\@tempdima=\z@ + \setlength{\@tempdima}{\textwidth}% + \fi + \expandafter\rule\expandafter{\the\@tempdima}{.4pt}% + \fi + }% + \\ + }% + {\usekomafont{fromaddress}\strut\ignorespaces + \usekomavar{fromaddress}% + \if@phone\\\usekomavar*{fromphone}\usekomavar{fromphone}\fi% + \if@fax\\\usekomavar*{fromfax}\usekomavar{fromfax}\fi% + \if@email\\\usekomavar*{fromemail}\usekomavar{fromemail}\fi% + \if@www\\\usekomavar*{fromurl}\usekomavar{fromurl}\fi% + \ifnum\@rulefrom=2\\[-.5\baselineskip]% + \setlength{\@tempdima}{\useplength{fromrulewidth}}% + \ifdim\@tempdima=\z@ + \setlength{\@tempdima}{\textwidth}% + \fi + \expandafter\rule\expandafter{\the\@tempdima}{.4pt}% + \fi + \\ + }% + }% + }% + \or + \renewcommand*{\@firsthead}{\noindent + \if@logo + \rlap{\usekomavar{fromlogo}}% + \fi + \parbox[b]{\textwidth}{\raggedleft + {\usekomafont{fromname}\strut\ignorespaces + \usekomavar{fromname}% + {% + \ifnum\@rulefrom=1\\[-.5\baselineskip]% + \setlength{\@tempdima}{\useplength{fromrulewidth}}% + \ifdim\@tempdima=\z@ + \setlength{\@tempdima}{\textwidth}% + \if@logo + \settowidth{\@tempdimb}{\usekomavar{fromlogo}}% + \addtolength{\@tempdima}{-\@tempdimb}% + \fi + \fi + \expandafter\rule\expandafter{\the\@tempdima}{.4pt}% + \fi + }% + \\ + }% + {\usekomafont{fromaddress}\strut\ignorespaces + \usekomavar{fromaddress}% + \if@phone\\\usekomavar*{fromphone}\usekomavar{fromphone}\fi% + \if@fax\\\usekomavar*{fromfax}\usekomavar{fromfax}\fi% + \if@email\\\usekomavar*{fromemail}\usekomavar{fromemail}\fi% + \if@www\\\usekomavar*{fromurl}\usekomavar{fromurl}\fi% + \ifnum\@rulefrom=2\\[-.5\baselineskip]% + \setlength{\@tempdima}{\useplength{fromrulewidth}}% + \ifdim\@tempdima=\z@ + \setlength{\@tempdima}{\textwidth}% + \fi + \expandafter\rule\expandafter{\the\@tempdima}{.4pt}% + \fi + \\ + }% + }% + }% + \fi +} +\newcommand{\firsthead}[1]{% + \renewcommand*{\@alignfrom}{10000}% + \renewcommand*{\@firsthead}{\noindent#1}% +} +\newkomafont{fromname}{} +\newkomafont{fromaddress}{} +\newkomafont{backaddress}{\sffamily} +\newkomafont{title}{\normalcolor\sffamily\bfseries} +\newkomafont{subject}{\normalcolor\bfseries} \@newplength{foldmarkhpos} \@newplength{tfoldmarkvpos} \@newplength{bfoldmarkvpos} @@ -1929,160 +2043,54 @@ size% \@newplength{firstheadwidth} \@newplength{fromrulewidth} \@setplength{fromrulewidth}{0pt} -\newcommand*{\LoadLetterOption}[1]{% - \@ifundefined{@restore@catcode@level} - {\let\@restore@catcode@level=\z@}{} - \ifnum\@restore@catcode@level =\z@ - \ifnum\catcode`\@=11 - \let\@restore@catcode\relax - \else - \@tempcnta=\catcode`\@ - \edef\@restore@catcode{% - \noexpand\catcode`\noexpand\@=\the\@tempcnta}% - \makeatletter - \fi - \fi - \@tempcnta=\@restore@catcode@level\relax - \advance\@tempcnta by \@ne\relax - \edef\@restore@catcode@level{\the\@tempcnta} - \InputIfFileExists{#1.lco}{% - \ClassInfo{% - scrlttr2% - }{Letter-Class-Option `#1' loaded} - }{% - \ClassError{% - scrlttr2% - }{% - Letter-Class-Option file `#1.lco' not found% - }{% - You've told me to load the Letter-Class-Option `#1'. So I have - to load\MessageBreak - the file `#1.lco'. But the file isn't available.} - } - \@tempcnta=\@restore@catcode@level\relax - \advance\@tempcnta by \m@ne\relax - \edef\@restore@catcode@level{\the\@tempcnta} - \ifnum\@tempcnta =\z@ - \@restore@catcode - \fi - } -\newcommand*{\LOPNP@option}{} -\newcommand*{\LOPNP@size}{} -\newcommand*{\@PapersizeWarning}{ - \begingroup% - \edef\@tempc{\noexpand\@tempswatrue - \noexpand\ifdim\paperwidth=\the\paperwidth\noexpand\else - \noexpand\@tempswafalse\noexpand\fi - \noexpand\ifdim\paperheight=\the\paperheight\noexpand\else - \noexpand\@tempswafalse\noexpand\fi - \noexpand\@@PapersizeWarning - } - \def\@tempb{letter}\ifx\LOPNP@size\@tempb% - \setlength{\paperheight}{11in}\setlength{\paperwidth}{8.5in}% - \else\def\@tempb{legal}\ifx\LOPNP@size\@tempb% - \setlength{\paperheight}{14in}\setlength{\paperwidth}{8.5in}% - \else\def\@tempb{executive}\ifx\LOPNP@size\@tempb% - \setlength{\paperheight}{10.5in}\setlength{\paperwidth}{7.25in}% - \else% - \def\ta@opt@err{% - \ClassError{% - scrlttr2% - }{papersize `\LOPNP@size' undefined}{% - You've told me to check for paper size - `\LOPNP@size'\MessageBreak - at letter option file `\LOPNP@option.lco',\MessageBreak - but this paper size is not supported.\MessageBreak - See the KOMA-Script manual for informations about known - paper sizes.}% - } - \let\@headlines\ta@opt@err% - \expandafter\x@@paper\LOPNP@size paperpaper\x@@paper% - \fi\fi\fi - \@tempc - \endgroup% +\newcommand*{\@firstfoot}{} +\newcommand{\firstfoot}[1]{% + \renewcommand*{\@firstfoot}{\noindent#1}% } -\newcommand*{\@@PapersizeWarning}{% - \if@tempswa\else% - \ClassWarningNoLine{% - scrlttr2% - }{% - Letter option file `\LOPNP@option.lco'\MessageBreak - needs paper size `\LOPNP@size'.\MessageBreak - Current paper size is not `\LOPNP@size'!\MessageBreak - You should add `paper=\LOPNP@size' at the\MessageBreak - option list of \string\documentclass!\MessageBreak - Maybe you know what you are doing,\MessageBreak - so I do not change this myself} - \fi - } -\newcommand*{\LetterOptionNeedsPapersize}[2]{% - \edef\LOPNP@size{#2}\edef\LOPNP@option{#1}% - } -\LoadLetterOption{DIN} -\newcommand*{\adrentry}[7]{% - \addrentry{#1}{#2}{#3}{#4}{#5}{#6}{#7}{}} -\newcommand*{\adrchar}{\addrchar} -\newcommand*{\addrentry}[9]{\def\@tempa{#1}\ifx \@tempa\@empty \else - \def\@tempa{#2}\ifx \@tempa\@empty - \expandafter\def\csname #9\endcsname{#1\\#3} - \else - \expandafter\def\csname #9\endcsname{#2 #1\\#3} - \fi \fi} -\newcommand*{\addrchar}[1]{} -\newcommand*{\stopbreaks}{\interlinepenalty \@M - \def\par{\@@par\nobreak}\let\\=\@nobreakcr - \let\vspace\@nobreakvspace} -\newcommand*{\@nobreakvspace}{% - \@ifstar{\@nobreakvspacex}{\@nobreakvspacex}} -\newcommand*{\@nobreakvspacex}[1]{\ifvmode\nobreak\vskip #1\relax\else - \@bsphack\vadjust{\nobreak\vskip #1}\@esphack\fi} -\newcommand*{\@nobreakcr}{% - \vadjust{\penalty\@M}\@ifstar{\@xnewline}{\@xnewline}} -\newcommand*{\startbreaks}{\let\\=\@normalcr - \interlinepenalty 200\def\par{\@@par\penalty 200}} \newcommand*{\move@topt}{% \null\vskip -1in\vskip -\topmargin% \vskip -\headheight\vskip -\headsep% \vskip -\topskip% \ignorespaces% - } +} \newcommand*{\move@frompt}{% \vskip 1in\vskip \topmargin% \vskip \headheight\vskip \headsep% \vskip \topskip% \vskip -\baselineskip% \ignorespaces% - } +} \newcommand*{\move@topl}{% \null\hskip -1in% \ifodd\value{page}\hskip -\oddsidemargin\else\hskip -\evensidemargin\fi \ignorespaces% - } +} \newcommand*{\move@frompl}{% \hskip 1in% \ifodd\value{page}\hskip \oddsidemargin\else\hskip \evensidemargin\fi% \ignorespaces% - } +} \newcommand*{\vb@t@z}[1]{{% \setbox0\vbox to\z@{#1\vss}% - \setlength{\parskip}{\z@}\setlength{\baselineskip}{\z@}% - \setlength{\parfillskip}{\z@ \@plus 1fil}% + \setparsizes{\z@}{\z@}{\z@ plus 1fil}\par@updaterelative + \setlength{\baselineskip}{\z@}% \setlength{\@tempdima}{\ht0}\addtolength{\@tempdima}{\dp0}% \box0\vskip-\@tempdima% - }} + }% +} \newcommand*{\@foldmark}[2]{% - \vskip #1% - \vb@t@z{\rlap{\move@topl\hskip\useplength{foldmarkhpos}% - \rule{#2}{.2pt}}}% - \vskip -#1\ignorespaces% + \vb@t@z{\vskip #1% + \rlap{\move@topl\hskip\useplength{foldmarkhpos}% + \rule{#2}{.2pt}}}% + \ignorespaces% } \newcommand*{\@foldmarks}{% \if@fold% \typeout{Foldmarks: yes}% \move@topt - \@foldmark{\useplength{tfoldmarkvpos}}{2mm} - \@foldmark{.5\paperheight}{4mm} - \@foldmark{\useplength{bfoldmarkvpos}}{2mm} + \@foldmark{\useplength{tfoldmarkvpos}}{2mm}% + \@foldmark{.5\paperheight}{4mm}% + \@foldmark{\useplength{bfoldmarkvpos}}{2mm}% \move@frompt \else \typeout{Foldmarks: no}% @@ -2210,10 +2218,10 @@ size% \vbox{\hsize\@tempdima% \noindent\usekomavar{toname}\\\usekomavar{toaddress}}% \vfil\null}% - {address field}{toaddrheight} + {address field}{toaddrheight}% {\begin{letter} or you\MessageBreak have to define a smaller special purpose using\MessageBreak - \string\specialmail} + \string\specialmail}% }}}% \vskip-\useplength{toaddrvpos}\move@frompt \else @@ -2266,7 +2274,7 @@ size% \vskip\parskip}\noindent}% \fi \fi - \usekomavar{location}\vskip \z@ \@plus .00001fil} + \usekomavar{location}\vskip \z@ \@plus .00001fil}% {location field}{toaddrheight}{\setkomavar}% }}% }% @@ -2287,10 +2295,10 @@ size% \newcommand*{\@set@reffields}{}% \newcommand*{\addtoreffields}[1]{% \l@addto@macro{\@set@reffields}{\@set@reffield{#1}}% - } +} \newcommand*{\removereffields}{% \renewcommand*{\@set@reffields}{}% - } +} \newcommand*{\defaultreffields}{% \removereffields \addtoreffields{yourref}% @@ -2300,7 +2308,8 @@ size% \addtoreffields{invoice}% } \defaultreffields -\newcommand*{\@datefield}{{\@parskipfalse\@parskip@indent +\newcommand*{\@datefield}{{% + \setparsizes{\z@}{\z@}{\z@ plus 1fil}\par@updaterelative \ifdim\useplength{refwidth}=\z@ \if@refwide \@setplength{refwidth}{\paperwidth}% @@ -2353,7 +2362,7 @@ size% \ifdim \@tempdima<\wd0\setlength{\@tempdima}{\wd0}\fi \enskip\hfill \parbox[t]{\@tempdima}{\noindent\raggedright% - \strut\box0\\\strut\usekomavar{date}} + \strut\box0\\\strut\usekomavar{date}}% \else \typeout{Reference line: only place and date}% \enskip\hfill @@ -2372,17 +2381,18 @@ size% \newcommand*{\@maketitle}{% \ifkomavarempty{title}{% \typeout{Title: no}% - }{% + }{% \typeout{Title: yes}% - {\@parskipfalse\@parskip@indent% - \centering\LARGE\titlefont\usekomavar{title}\par}% + {\setparsizes{\z@}{\z@}{\z@ plus 1fil}\par@updaterelative + \centering\LARGE\usekomafont{title}\usekomavar{title}\par}% \vskip\baselineskip% - }% - } -\newcommand*{\@subjfield}{{\@parskipfalse\@parskip@indent% + }% +} +\newcommand*{\@subjfield}{{% + \setparsizes{\z@}{\z@}{\z@ plus 1fil}\par@updaterelative \ifkomavarempty{subject}{% \typeout{Subject: no}% - }{% + }{% \if@subjafter% \typeout{Subject: after opening}% \centering% @@ -2392,9 +2402,81 @@ size% \fi% {\usekomafont{subject}\if@subj\@hangfrom{\usekomavar*{subject}}\fi% {\usekomavar{subject}}\par}\vskip2\baselineskip% - }% }% - } + }% +} +\newcommand*{\@nexthead}{% + \rlap{\parbox[c]{\textwidth}{\raggedright\strut + \ifnum\@pageat=0\pagemark\else\leftmark\fi\strut}}% + \parbox[c]{\textwidth}{% + \centering\strut + \ifcase\@pageat + \rightmark + \or + \pagemark + \or + \rightmark + \fi\strut}% + \llap{\parbox[c]{\textwidth}{\raggedleft\strut + \ifcase\@pageat + \leftmark + \or + \rightmark + \or + \pagemark + \else + \rightmark + \fi\strut}}% +}% +\newcommand{\nexthead}[1]{% + \renewcommand*{\@nexthead}{\noindent#1}% +} +\newcommand*{\@nextfoot}{% + \ifnum\@pageat>2 + \parbox[c]{\textwidth}{% + \ifcase\@pageat\or\or\or\raggedright\or\centering\or\raggedleft\fi + \strut\pagemark% + }% + \fi +} +\newcommand{\nextfoot}[1]{% + \renewcommand*{\@nextfoot}{\noindent#1}% +} +\newenvironment{letter}[2][]{% + \newpage + \if@twoside\ifodd\c@page\else\thispagestyle{empty}\null\newpage\fi\fi + \setcounter{page}{\@ne}% + \setcounter{footnote}{0}% + \interlinepenalty=200\@processto{#2}% + \KOMAoptions{#1}% + \@beginletterhook +}{% + \stopletter\@@par\pagebreak\@@par% +} +\newcommand*{\stopletter}{} +\newcommand{\@processto}[1]{% + \ifx\relax#1\relax\else + \expandafter\@xproc#1\\\@nil\ifkomavarempty{toaddress}{}{% + \expandafter\@xproc#1\@nil}% + \fi +} +\newcommand*{\@xproc}{} +\long\def\@xproc#1\\#2\@nil{% + \setkomavar{toname}{#1}\setkomavar{toaddress}{#2}} +\newcommand{\AtBeginLetter}{\g@addto@macro\@beginletterhook} +\newcommand{\@beginletterhook}{} +\newcommand{\AtEndLetter}{\g@addto@macro\stopletter} +\newcommand*{\stopbreaks}{\interlinepenalty \@M + \def\par{\@@par\nobreak}\let\\=\@nobreakcr + \let\vspace\@nobreakvspace} +\newcommand*{\@nobreakvspace}{% + \@ifstar{\@nobreakvspacex}{\@nobreakvspacex}} +\newcommand*{\@nobreakvspacex}[1]{\ifvmode\nobreak\vskip #1\relax\else + \@bsphack\vadjust{\nobreak\vskip #1}\@esphack\fi} +\newcommand*{\@nobreakcr}{% + \vadjust{\penalty\@M}\@ifstar{\@xnewline}{\@xnewline}} +\newcommand*{\startbreaks}{\let\\=\@normalcr + \interlinepenalty 200\def\par{\@@par\penalty 200}} \newcommand{\opening}[1]{% \@PapersizeWarning \@gen@firsthead @@ -2403,14 +2485,13 @@ size% \@foldmarks\@firstheadfootfield\@addrfield\@locfield\@datefield \@maketitle \if@subjafter\else\@subjfield\fi - {\@parskipfalse\@parskip@indent\noindent#1\par}% + {\setparsizes{\z@}{\z@}{\z@ plus 1fil}\par@updaterelative#1\par}% {\setlength{\@tempdima}{\baselineskip}% - \addtolength{\@tempdima}{-\parskip} - \ifdim \@tempdima>\z@\vskip\@tempdima\fi} + \addtolength{\@tempdima}{-\parskip}% + \ifdim \@tempdima>\z@\vskip\@tempdima\fi}% \if@subjafter\@subjfield\fi% \@afterindentfalse\@afterheading - } -\newcommand*{\setpresigskip}{\@setplength{sigbeforevskip}} +} \newcommand*{\@xtrimtempa}{% \@ifnextchar [{\@@xtrimtempa}{\@@xtrimtempa[]}} \newcommand*{\@@xtrimtempa}{} @@ -2426,20 +2507,21 @@ size% \def\@tempb{\expandafter\@tempdimaismaxwidthof\@tempa\@nil}% \fi \@tempb - } -\newcommand*{\closing}[1]{{\@parskipfalse\@parskip@indent\nobreak\par% - \nobreak\vskip\baselineskip% - \stopbreaks\noindent% - \setlength{\@tempdima}{0pt}% - \expandafter\@tempdimaismaxwidthof\scr@signature@var\\\@nil - \expandafter\@tempdimaismaxwidthof\strut\ignorespaces#1\\\@nil - \setlength{\@tempdimb}{\hsize}% - \addtolength{\@tempdimb}{-\useplength{sigindent}}% - \ifdim\@tempdima>\@tempdimb\setlength{\@tempdima}{\@tempdimb}\fi% - \hspace{\useplength{sigindent}}% - \parbox{\@tempdima}{\raggedsignature\strut\ignorespaces% - #1\strut\\[\useplength{sigbeforevskip}] - \strut\usekomavar{signature}\strut}}\par +} +\newcommand*{\closing}[1]{{% + \setparsizes{\z@}{\z@}{\z@ plus 1fil}\par@updaterelative\nobreak\par% + \nobreak\vskip\baselineskip% + \stopbreaks\noindent% + \setlength{\@tempdima}{0pt}% + \expandafter\@tempdimaismaxwidthof\scr@signature@var\\\@nil + \expandafter\@tempdimaismaxwidthof\strut\ignorespaces#1\\\@nil + \setlength{\@tempdimb}{\hsize}% + \addtolength{\@tempdimb}{-\useplength{sigindent}}% + \ifdim\@tempdima>\@tempdimb\setlength{\@tempdima}{\@tempdimb}\fi% + \hspace{\useplength{sigindent}}% + \parbox{\@tempdima}{\raggedsignature\strut\ignorespaces% + #1\strut\\[\useplength{sigbeforevskip}] + \strut\usekomavar{signature}\strut}}\par \nobreak\vskip\baselineskip% } \newcommand\ps{\par% @@ -2475,9 +2557,73 @@ size% \setlength{\parfillskip}{\z@ \@plus 1fil}\par \endgroup } -\pagestyle{plain} -\pagenumbering{arabic} % Arabic page numbers - \raggedbottom +\newkomavar{signature} +\setkomavar{signature}{\usekomavar{fromname}} +\newkomavar{place} +\newkomavar{location} +\newkomavar{backaddress} +\setkomavar{backaddress}{% + \ifkomavarempty{fromname}{}{% + \strut\ignorespaces\usekomavar{fromname}% + \ifkomavarempty{fromaddress}{}{\\}}% + \ifkomavarempty{fromaddress}{}{% + \strut\ignorespaces\usekomavar{fromaddress}}% + } +\newkomavar{specialmail} +\newkomavar{title} +\newkomavar{fromlogo} +\newkomavar[\usekomavar{place}]{placeseparator} +\setkomavar{placeseparator}{,~} +\newkomavar[\subjectname]{subjectseparator} +\setkomavar{subjectseparator}{: } +\newkomavar[\ccname]{ccseparator} +\setkomavar{ccseparator}{: } +\newkomavar[\enclname]{enclseparator} +\setkomavar{enclseparator}{: } +\newkomavar{backaddressseparator} +\setkomavar{backaddressseparator}{,~} +\newkomavar[\phonename]{phoneseparator} +\setkomavar{phoneseparator}{:~} +\newkomavar[\faxname]{faxseparator} +\setkomavar{faxseparator}{:~} +\newkomavar[\emailname]{emailseparator} +\setkomavar{emailseparator}{:~} +\newkomavar[\wwwname]{urlseparator} +\setkomavar{urlseparator}{:~} +\newkomavar[\headfromname]{fromname} +\newkomavar[\usekomavar{fromname}]{fromaddress} +\newkomavar[\headtoname]{toname} +\newkomavar[\usekomavar{toname}]{toaddress} +\newkomavar[\usekomavar*{phoneseparator}% + \usekomavar{phoneseparator}]{fromphone} +\newkomavar[\usekomavar*{faxseparator}% + \usekomavar{faxseparator}]{fromfax} +\newkomavar[\usekomavar*{emailseparator}% + \usekomavar{emailseparator}]{fromemail} +\newkomavar[\usekomavar*{urlseparator}% + \usekomavar{urlseparator}]{fromurl} +\newkomavar[\bankname]{frombank} +\newkomavar[\yourrefname]{yourref} +\newkomavar[\yourmailname]{yourmail} +\newkomavar[\myrefname]{myref} +\newkomavar[\customername]{customer} +\newkomavar[\invoicename]{invoice} +\newkomavar[\usekomavar*{subjectseparator}% + \usekomavar{subjectseparator}]{subject} +\newkomavar[\datename]{date} +\setkomavar{date}{\@date} +%%% From File: scrkcile.dtx +\newcommand*{\adrentry}[7]{% + \addrentry{#1}{#2}{#3}{#4}{#5}{#6}{#7}{}} +\newcommand*{\adrchar}{\addrchar} +\newcommand*{\addrentry}[9]{\def\@tempa{#1}\ifx \@tempa\@empty \else + \def\@tempa{#2}\ifx \@tempa\@empty + \expandafter\def\csname #9\endcsname{#1\\#3}% + \else + \expandafter\def\csname #9\endcsname{#2 #1\\#3}% + \fi \fi} +\newcommand*{\addrchar}[1]{} +%%% From File: scrlogo.dtx \@ifundefined{KOMAScript}{% \DeclareRobustCommand{\KOMAScript}{\textsf{K\kern.05em O\kern.05em% M\kern.05em A\kern.1em-\kern.1em Script}}}{} diff --git a/Master/texmf-dist/tex/latex/koma-script/scrpage.sty b/Master/texmf-dist/tex/latex/koma-script/scrpage.sty index 0e6102832e8..9bc1e8c7466 100644 --- a/Master/texmf-dist/tex/latex/koma-script/scrpage.sty +++ b/Master/texmf-dist/tex/latex/koma-script/scrpage.sty @@ -5,46 +5,41 @@ %% The original source files were: %% %% scrpage.dtx (with options: `scrpage,v1') -%% scrlogo.dtx +%% scrlogo.dtx (with options: `logo') %% -%% Copyright 1994-2004 Markus Kohm. +%% Copyright (c) 1994-2006 +%% Markus Kohm and any individual authors listed elsewhere in this file. %% -%% All rights reserved. For further copyright information see the file -%% legal.txt, and any other copyright indicated in this file. +%% This file was generated from file(s) of the KOMA-Script bundle. +%% --------------------------------------------------------------- %% -%% This file is part of the LaTeX2e 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'. %% -%% The KOMA-Script-bundle (but not this file) bases on the -%% Script-family created by Frank Neukam 1993 and the standard -%% documents classes created by the LaTeX3-Team 1994-1996. -%% ------------------------------------------------------------- +%% 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. %% -%% This system is distributed in the hope that it will be useful, -%% but WITHOUT ANY WARRANTY; without even the implied warranty of -%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +%% 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. %% -%% IMPORTANT NOTICE: +%% English and German manuals are part of KOMA-Script bundle. +%% ---------------------------------------------------------- %% -%% For error reports in case of UNCHANGED versions see documentation. +%% See `README'. %% -%% Please do not request updates from us directly. Distribution is -%% done through Mail-Servers, Mailboxes and TeX organizations. -%% -%% You are not allowed to change this file. -%% -%% You are allowed to distribute this file under the condition that -%% it is distributed together with all files mentioned in readme.txt -%% and liesmich.txt. See LEGAL.TXT or LEGALDE.TXT for further -%% information. -%% -%% If you receive only some of these files from someone, complain! -%% -%% You are NOT ALLOWED to distribute this file alone. +%% 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: scrpage.dtx \NeedsTeXFormat{LaTeX2e}[1995/06/01] -\ProvidesPackage{scrpage}[2001/06/22 v1.3c KOMA +\ProvidesPackage{scrpage}[2006/03/29 v1.3d KOMA-Script package] \DeclareOption{headinclude}{\PassOptionsToPackage{headinclude}{typearea}} \DeclareOption{headexclude}{\PassOptionsToPackage{headexclude}{typearea}} @@ -426,6 +421,7 @@ headinclude,footinclude% * Local config file scrpage.cfg used^^J% *************************************}} {} +%%% From File: scrlogo.dtx \@ifundefined{KOMAScript}{% \DeclareRobustCommand{\KOMAScript}{\textsf{K\kern.05em O\kern.05em% M\kern.05em A\kern.1em-\kern.1em Script}}}{} diff --git a/Master/texmf-dist/tex/latex/koma-script/scrpage2.sty b/Master/texmf-dist/tex/latex/koma-script/scrpage2.sty index 3f89ffba3a8..57ded19152e 100644 --- a/Master/texmf-dist/tex/latex/koma-script/scrpage2.sty +++ b/Master/texmf-dist/tex/latex/koma-script/scrpage2.sty @@ -5,47 +5,42 @@ %% The original source files were: %% %% scrpage.dtx (with options: `scrpage,v2') -%% scrlogo.dtx +%% scrlogo.dtx (with options: `logo') %% -%% Copyright 1994-2004 Markus Kohm. +%% Copyright (c) 1994-2006 +%% Markus Kohm and any individual authors listed elsewhere in this file. %% -%% All rights reserved. For further copyright information see the file -%% legal.txt, and any other copyright indicated in this file. +%% This file was generated from file(s) of the KOMA-Script bundle. +%% --------------------------------------------------------------- %% -%% This file is part of the LaTeX2e 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'. %% -%% The KOMA-Script-bundle (but not this file) bases on the -%% Script-family created by Frank Neukam 1993 and the standard -%% documents classes created by the LaTeX3-Team 1994-1996. -%% ------------------------------------------------------------- +%% 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. %% -%% This system is distributed in the hope that it will be useful, -%% but WITHOUT ANY WARRANTY; without even the implied warranty of -%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +%% 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. %% -%% IMPORTANT NOTICE: +%% English and German manuals are part of KOMA-Script bundle. +%% ---------------------------------------------------------- %% -%% For error reports in case of UNCHANGED versions see documentation. +%% See `README'. %% -%% Please do not request updates from us directly. Distribution is -%% done through Mail-Servers, Mailboxes and TeX organizations. -%% -%% You are not allowed to change this file. -%% -%% You are allowed to distribute this file under the condition that -%% it is distributed together with all files mentioned in readme.txt -%% and liesmich.txt. See LEGAL.TXT or LEGALDE.TXT for further -%% information. -%% -%% If you receive only some of these files from someone, complain! -%% -%% You are NOT ALLOWED to distribute this file alone. +%% 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: scrpage.dtx \NeedsTeXFormat{LaTeX2e}[1995/06/01] \ProvidesPackage{scrpage2} - [2004/09/05 v2.2a LaTeX2e KOMA + [2006/03/29 v2.2c LaTeX2e KOMA-Script package] \DeclareOption{headinclude}{\PassOptionsToPackage{headinclude}{typearea}} \DeclareOption{headexclude}{\PassOptionsToPackage{headexclude}{typearea}} @@ -283,11 +278,15 @@ \setlength{\@tempdimb}{#1} \begingroup \csname scr@pre@#4@line\endcsname - \ifodd\c@page - \edef\@tempa{\hfline@adjust} + \if@twoside + \ifodd\c@page + \edef\@tempa{\hfline@adjust}% + \else + \@tempcnta=2\advance\@tempcnta -\hfline@adjust + \edef\@tempa{\the\@tempcnta}% + \fi \else - \@tempcnta=2\advance\@tempcnta -\hfline@adjust - \edef\@tempa{\the\@tempcnta} + \edef\@tempa{\hfline@adjust}% \fi \ifnum\@tempa=1 \setlength{\@tempdimb}{.5\@tempdimb} @@ -1073,6 +1072,7 @@ into the preamble of your document.\MessageBreak A better solution would be to use typearea package} \fi\fi} +%%% From File: scrlogo.dtx \@ifundefined{KOMAScript}{% \DeclareRobustCommand{\KOMAScript}{\textsf{K\kern.05em O\kern.05em% M\kern.05em A\kern.1em-\kern.1em Script}}}{} diff --git a/Master/texmf-dist/tex/latex/koma-script/scrreprt.cls b/Master/texmf-dist/tex/latex/koma-script/scrreprt.cls index 24c8d7d20b0..b98fa5ee2f8 100644 --- a/Master/texmf-dist/tex/latex/koma-script/scrreprt.cls +++ b/Master/texmf-dist/tex/latex/koma-script/scrreprt.cls @@ -4,277 +4,375 @@ %% %% The original source files were: %% -%% scrclass.dtx (with options: `class,scrreprt') -%% scrlogo.dtx +%% scrkvers.dtx (with options: `class,report') +%% scrkbase.dtx (with options: `load') +%% scrkmisc.dtx (with options: `class,report,option') +%% scrklang.dtx (with options: `class,report,option') +%% scrkfont.dtx (with options: `class,report,option') +%% scrktare.dtx (with options: `class,report,option') +%% scrkpar.dtx (with options: `class,report,option') +%% scrktitl.dtx (with options: `class,report,option') +%% scrksect.dtx (with options: `class,report,option') +%% scrkpage.dtx (with options: `class,report,option') +%% scrkfloa.dtx (with options: `class,report,option') +%% scrkftn.dtx (with options: `class,report,option') +%% scrkliof.dtx (with options: `class,report,option') +%% scrkbib.dtx (with options: `class,report,option') +%% scrkidx.dtx (with options: `class,report,option') +%% scrklist.dtx (with options: `class,report,option') +%% scrkmisc.dtx (with options: `class,report,execoption') +%% scrkfont.dtx (with options: `class,report,body') +%% scrklang.dtx (with options: `class,report,body') +%% scrktare.dtx (with options: `class,report,body') +%% scrkpar.dtx (with options: `class,report,body') +%% scrktitl.dtx (with options: `class,report,body') +%% scrksect.dtx (with options: `class,report,body') +%% scrkmisc.dtx (with options: `class,report,body') +%% scrkpage.dtx (with options: `class,report,body') +%% scrkfloa.dtx (with options: `class,report,body') +%% scrkftn.dtx (with options: `class,report,body') +%% scrkliof.dtx (with options: `class,report,body') +%% scrkbib.dtx (with options: `class,report,body') +%% scrkidx.dtx (with options: `class,report,body') +%% scrklist.dtx (with options: `class,report,body') +%% scrlogo.dtx (with options: `logo') %% -%% Copyright (C) 1994-2004 Markus Kohm and Frank Neukam. +%% Copyright (c) 1994-2006 +%% Markus Kohm and any individual authors listed elsewhere in this file. %% -%% All rights reserved. For further copyright information see the file -%% LEGAL.TXT or LEGALDE.TXT. +%% This file was generated from file(s) of the KOMA-Script bundle. +%% --------------------------------------------------------------- %% -%% This file is part of the LaTeX2e 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'. %% -%% The KOMA-Script bundle bases on the Script-family created by -%% Frank Neukam 1993 and the standard documents classes created -%% by the LaTeX3-Team 1994-1996. -%% ------------------------------------------------------------------------ +%% 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. %% -%% This system is distributed in the hope that it will be useful, -%% but WITHOUT ANY WARRANTY; without even the implied warranty of -%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +%% 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. %% -%% IMPORTANT NOTICE: +%% English and German manuals are part of KOMA-Script bundle. +%% ---------------------------------------------------------- %% -%% For error reports in case of UNCHANGED versions see documentation. +%% See `README'. %% -%% Please do not request updates from us directly. Distribution is -%% done through Mail-Servers, Mailboxes and TeX organizations. +%% 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. %% -%% You are not allowed to change this file. -%% -%% You are allowed to distribute this file under the condition that -%% it is distributed together with all files mentioned in readme.txt -%% and liesmich.txt. See LEGAL.TXT or LEGALDE.TXT for further -%% information. -%% -%% If you receive only some of these files from someone, complain! -%% -%% You are NOT ALLOWED to distribute this file alone. -%% -\NeedsTeXFormat{LaTeX2e}[1995/12/01] -\ProvidesClass{% +%%% 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{2006/07/30 v2.95b KOMA-Script}% +\endgroup +\newcommand*{\KOMAClassName}{% scrreprt% - } - [2004/09/16 v2.9t LaTeX2e KOMA - document class] -\newcommand\ifnumber[3]{ - \begingroup\@tempswafalse\let\scr@next\test@number - \expandafter\scr@next#1\scr@next - \if@tempswa\endgroup#2\else\endgroup#3\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\relax - \ifnum \@tempcnta<58\relax - \@tempswatrue - \else\@tempswafalse\fi - \else\@tempswafalse\fi - \if@tempswa\else\let\scr@next\gobble@till@next\fi\fi - \scr@next} -\newcommand*{\gobble@till@next}{} -\def\gobble@till@next#1\scr@next{} +} +\newcommand*{\ClassName}{% + report% +} +\ProvidesClass{\KOMAClassName}[% + \KOMAScriptVersion\space document class (\ClassName)% +] +%%% From File: scrkbase.dtx +\RequirePackage{scrkbase}[\KOMAScriptVersion] +%%% 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[\PackageInfo]{final}{draft=false} +\DeclareOption{leqno}{\input{leqno.clo}} +\DeclareOption{fleqn}{\input{fleqn.clo}} +%%% From File: scrklang.dtx +%%% From File: scrkfont.dtx +\newcommand*\@ptsize{% + 1% +} +\newcommand*{\@pt@scan}{% + \expandafter\@pt@@scan\CurrentOption pt\@pt@@scan% +} +\newcommand*{\@pt@@scan}{} +\def\@pt@@scan #1pt#2\@pt@@scan{% + \ifstr{#2}{pt}{% + \ifnumber{#1}{% + \KOMA@UseObsolete{option}{\PackageInfo}{#1#2}{fontsize=#1#2}% + }{\@headlines}% + }{\@headlines}% +} +\KOMA@key{fontsize}{% + \begingroup + \setlength{\@tempdima}{#1}% + \addtolength{\@tempdima}{-10\p@}% + \edef\@tempa{\endgroup\noexpand\renewcommand*\noexpand\@ptsize{% + \strip@pt\@tempdima}}% + \@tempa +} +\@onlypreamble\KV@KOMA@fontsize +%%% From File: scrktare.dtx \newcommand*{\@BCOR}{\expandafter\@@BCOR\CurrentOption BCORBCOR\@@BCOR} \newcommand*{\@@BCOR}{} -\def\@@BCOR #1BCOR#2BCOR#3\@@BCOR{ - \edef\@tempa{#1}\ifx\@tempa\@empty - \edef\@tempa{#3}\def\@tempb{BCOR}\ifx\@tempa\@tempb - \PassOptionsToPackage{BCOR#2}{typearea} - \else\OptionNotUsed\fi - \else\OptionNotUsed\fi} +\def\@@BCOR #1BCOR#2BCOR#3\@@BCOR{% + \ifstr{#1}{}{% + \ifstr{#3}{BCOR}{% + \PassOptionsToPackage{BCOR#2}{typearea}% + }{\scr@pti@nerr@r}% + }{\scr@pti@nerr@r}% +} \newcommand*{\@DIV}{\expandafter\@@DIV\CurrentOption DIVDIV\@@DIV} \newcommand*{\@@DIV}{} -\def\@@DIV #1DIV#2DIV#3\@@DIV{ - \edef\@tempa{#1}\ifx\@tempa\@empty - \edef\@tempa{#3}\def\@tempb{DIV}\ifx\@tempa\@tempb - \PassOptionsToPackage{DIV#2}{typearea} - \else\OptionNotUsed\fi - \else\@BCOR\fi} +\def\@@DIV #1DIV#2DIV#3\@@DIV{% + \edef\@tempa{#1}\ifx\@tempa\@empty + \edef\@tempa{#3}\def\@tempb{DIV}\ifx\@tempa\@tempb + \PassOptionsToPackage{DIV#2}{typearea}% + \else\scr@pti@nerr@r\fi + \else\@BCOR\fi +} \newcommand{\@headlines}{% - \expandafter\@@headlines\CurrentOption headlines\@@headlines} + \expandafter\@@headlines\CurrentOption headlines\@@headlines% +} \newcommand*{\@@headlines}{} \def\@@headlines #1headlines#2\@@headlines{ \edef\@tempa{#2}\edef\@tempb{headlines}\ifx\@tempa\@tempb \PassOptionsToPackage{#1headlines}{typearea} - \else\@DIV\fi} -\newcommand*{\@pt@scan}{\expandafter\@pt@@scan\CurrentOption pt\@pt@@scan} -\newcommand*{\@pt@@scan}{} -\def\@pt@@scan #1pt#2\@pt@@scan{ - \edef\@tempa{pt}\edef\@tempb{#2}\ifx\@tempa\@tempb - \ifnumber{#1} - {\@tempcnta=#1\relax - \advance \@tempcnta by-10\relax - \edef\@ptsize{\the\@tempcnta}} - {\@headlines} - \else\@headlines\fi} -\newcommand*{\x@paper}{\expandafter\x@@paper\CurrentOption paper\x@@paper} + \else\@DIV\fi +} +\newcommand*{\x@paper}{% + \expandafter\x@@paper\CurrentOption paper\x@@paper% +} \newcommand*{\x@@paper}{} -\def\x@@paper #1#2paper#3\x@@paper{ - \edef\@tempa{paper}\edef\@tempb{#3}\ifx\@tempa\@tempb - \ifx a#1\PassOptionsToPackage{a#2paper}{typearea} - \else\ifx b#1\PassOptionsToPackage{b#2paper}{typearea} - \else\ifx c#1\PassOptionsToPackage{c#2paper}{typearea} - \else\ifx d#1\PassOptionsToPackage{d#2paper}{typearea} - \else\OptionNotUsed\fi\fi\fi\fi - \else\@pt@scan\fi} -\newif\ifonelinecaptions\onelinecaptionstrue -\DeclareOption{onelinecaption}{\onelinecaptionstrue% - \PassOptionsToPackage{oneline}{caption2}} -\DeclareOption{noonelinecaption}{\onelinecaptionsfalse% - \PassOptionsToPackage{nooneline}{caption2}} -\newif\if@tablecaptionabove\@tablecaptionabovefalse -\DeclareOption{tablecaptionabove}{\@tablecaptionabovetrue} -\DeclareOption{tablecaptionbelow}{\@tablecaptionabovefalse} -\newif\if@komalongtable\@komalongtabletrue -\DeclareOption{origlongtable}{\@komalongtablefalse} -\newif\if@hsl -\DeclareOption{headsepline}{% - \PassOptionsToPackage{headinclude}{typearea}\@hsltrue} -\DeclareOption{headnosepline}{% - \@hslfalse% - } -\newif\if@fsl -\DeclareOption{footsepline}{\PassOptionsToPackage{footinclude}{typearea} - \@fsltrue} -\DeclareOption{footnosepline}{% - \@fslfalse% - } -\newif\if@mincl -\DeclareOption{mpinclude}{% - \@mincltrue - } -\DeclareOption{mpexclude}{ - \@minclfalse - } -\newcommand*\@ptsize{% - } -\DeclareOption{10pt}{% - \renewcommand*\@ptsize{0} - } -\DeclareOption{11pt}{% - \renewcommand*\@ptsize{1} - } -\DeclareOption{12pt}{% - \renewcommand*\@ptsize{2} - } -\DeclareOption{oneside}{% - \@twosidefalse \@mparswitchfalse - } -\DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue} -\DeclareOption{draft}{\setlength{\overfullrule}{5pt}} -\DeclareOption{final}{% - \setlength{\overfullrule}{\z@} - } +\def\x@@paper #1#2paper#3\x@@paper{% + \ifstr{#3}{paper}{% + \ifnumber{#2}{% + \ifstr{#1}{a}{% + \PassOptionsToPackage{#1#2#3}{typearea}% + }{% + \ifstr{#1}{b}{% + \PassOptionsToPackage{#1#2#3}{typearea}% + }{% + \ifstr{#1}{c}{% + \PassOptionsToPackage{#1#2#3}{typearea}% + }{% + \ifstr{#1}{d}{% + \PassOptionsToPackage{#1#2#3}{typearea}% + }{\scr@pti@nerr@r}% + }% + }% + }% + }{\scr@pti@nerr@r}% + }{% + \@pt@scan + }% +} +\newcommand*{\scr@pti@nerr@r}{ + \OptionNotUsed +} +\KOMA@key{twoside}[true]{% + \KOMA@set@ifkey{twoside}{@twoside}{#1}% + \if@twoside\@mparswitchtrue\else\@mparswitchfalse\fi% + \csname recalctypearea\endcsname +} +\KOMA@DeclareObsoleteOption[\PackageInfo]{oneside}{twoside=false} +%%% From File: scrkpar.dtx +\newcommand*{\setparsizes}[3]{% + \edef\f@parindent{\the\parindent}% + \edef\f@parskip{\the\parskip}% + \edef\f@parfillskip{\the\parfillskip}% + \def\scr@parindent{#1}% + \def\scr@parskip{#2}% + \def\scr@parfillskip{#3}% + \def\par@update{\let\par@update\default@par@update\par@updaterelative}% +} +\newcommand*{\f@parindent}{\the\parindent} +\newcommand*{\f@parskip}{\the\parskip} +\newcommand*{\f@parfillskip}{\the\parfillskip} +\AtEndOfClass{% + \edef\f@parindent{\the\parindent}% + \edef\f@parskip{\the\parskip}% + \edef\f@parfillskip{\the\parfillskip}% +} +\newcommand*{\par@update}{} +\let\par@update\relax +\newcommand*{\default@par@update}{} +\let\default@par@update\relax +\newcommand*{\scr@parindent}{1em} +\newcommand*{\scr@parskip}{\z@} +\newcommand*{\scr@parfillskip}{\z@ \@plus 1fil} +\KOMA@key{parskip}[true]{% + \begingroup + \KOMA@set@ncmdkey{parskip}{@tempa}{% + {false}{0},{off}{0},{no}{0},% + {full-}{1},% + {half-}{2},% + {full}{3},{true}{3},{on}{3},{yes}{3},% + {half}{4},% + {full+}{5},% + {half+}{6},% + {full*}{7},% + {half*}{8},% + {relative}{9},% + {absolute}{10},% + }{#1}% + \ifcase\number\@tempa% 0 + \endgroup + \setparsizes{1em}{\z@ \@plus \p@}{\z@ \@plus 1fil}% + \or% 1 + \endgroup + \setparsizes{\z@}{\baselineskip \@plus .1\baselineskip}{% + \z@ \@plus 1fil}% + \or% 2 + \endgroup + \setparsizes{\z@}{.5\baselineskip \@plus .5\baselineskip}{% + \z@ \@plus 1fil}% + \or%3 + \endgroup + \setparsizes{\z@}{\baselineskip \@plus .1\baselineskip}{% + 1em \@plus 1fil}% + \or%4 + \endgroup + \setparsizes{\z@}{.5\baselineskip \@plus .5\baselineskip}{% + 1em \@plus 1fil}% + \or%5 + \endgroup + \setparsizes{\z@}{\baselineskip \@plus .1\baselineskip}{% + .3333\linewidth\@plus 1fil}% + \or%6 + \endgroup + \setparsizes{\z@}{.5\baselineskip \@plus .5\baselineskip}{% + .3333\linewidth \@plus 1fil}% + \or%7 + \endgroup + \setparsizes{\z@}{\baselineskip \@plus .1\baselineskip}{% + .25\linewidth \@plus 1fil}% + \or%8 + \endgroup + \setparsizes{\z@}{.5\baselineskip \@plus .5\baselineskip}{% + .25\linewidth \@plus 1fil}% + \or%9 + \endgroup + \ifx\par@updaterelative\undefined + \expandafter\AtEndOfClass + \else + \expandafter\@firstofone + \fi + {% + \ifx\par@update\default@par@update + \let\par@update\par@updaterelative + \fi + \let\default@par@update=\par@updaterelative + }% + \or%10 + \endgroup + \ifx\par@updaterelative\undefined + \expandafter\AtEndOfClass + \else + \expandafter\@firstofone + \fi + {% + \ifx\par@update\default@par@update + \let\par@update\relax + \fi + \let\default@par@update=\relax + }% + \else% sonst + \endgroup + \fi +} +\KOMA@DeclareObsoleteOption[\PackageInfo]{parskip-}{parskip=full-} +\KOMA@DeclareObsoleteOption[\PackageInfo]{parskip+}{parskip=full+} +\KOMA@DeclareObsoleteOption[\PackageInfo]{parskip*}{parskip=full*} +\KOMA@DeclareObsoleteOption[\PackageInfo]{halfparskip}{parskip=half} +\KOMA@DeclareObsoleteOption[\PackageInfo]{halfparskip-}{parskip=half-} +\KOMA@DeclareObsoleteOption[\PackageInfo]{halfparskip+}{parskip=half+} +\KOMA@DeclareObsoleteOption[\PackageInfo]{halfparskip*}{parskip=half*} +\KOMA@DeclareObsoleteOption[\PackageInfo]{parindent}{parskip=false} +%%% From File: scrktitl.dtx \newif\if@titlepage \@titlepagetrue \DeclareOption{titlepage}{\@titlepagetrue} \DeclareOption{notitlepage}{\@titlepagefalse} +\newif\if@abstrt +\DeclareOption{abstracton}{\@abstrttrue} +\DeclareOption{abstractoff}{\@abstrtfalse} +%%% From File: scrksect.dtx \newif\if@openright \DeclareOption{openright}{\@openrighttrue} \DeclareOption{openany}{\@openrightfalse} -\DeclareOption{onecolumn}{\@twocolumnfalse} -\DeclareOption{twocolumn}{\@twocolumntrue} -\DeclareOption{leqno}{\input{leqno.clo}} -\DeclareOption{fleqn}{\input{fleqn.clo}} -\DeclareOption{openbib}{% - \AtEndOfPackage{% - \renewcommand*\@openbib@code{% - \advance\leftmargin\bibindent - \itemindent -\bibindent - \listparindent \itemindent - \parsep \z@ - }% - \renewcommand*\newblock{\par}}% +\DeclareOption{pointednumbers}{% + \AtEndOfClass{\@altsecnumformattrue + \global\let\@altsecnumformatfalse\@altsecnumformattrue}% } -\newif\if@abstrt -\DeclareOption{abstracton}{\@abstrttrue} -\DeclareOption{abstractoff}{\@abstrtfalse} -\newif\if@parskip -\newcommand*{\scr@parskip}{\setlength{\parskip}{\z@}} -\newcommand*{\scr@parfillskip}{\setlength{\parfillskip}{\z@}} -\DeclareOption{parskip}{\@parskiptrue% - \renewcommand*{\scr@parskip}{% - \setlength{\parskip}{\baselineskip}% - \addtolength{\parskip}{\z@ \@plus .1\baselineskip}} - \renewcommand*{\scr@parfillskip}{% - \setlength{\parfillskip}{1em \@plus 1fil}}} -\DeclareOption{parskip-}{\@parskiptrue% - \renewcommand*{\scr@parskip}{% - \setlength{\parskip}{\baselineskip}% - \addtolength{\parskip}{\z@ \@plus .1\baselineskip}} - \renewcommand*{\scr@parfillskip}{% - \setlength{\parfillskip}{\z@ \@plus 1fil}}} -\DeclareOption{parskip+}{\@parskiptrue% - \renewcommand*{\scr@parskip}{% - \setlength{\parskip}{\baselineskip}% - \addtolength{\parskip}{\z@ \@plus .1\baselineskip}} - \renewcommand*{\scr@parfillskip}{% - \setlength{\parfillskip}{.3333\linewidth} - \addtolength{\parfillskip}{\z@ \@plus 1fil}}} -\DeclareOption{parskip*}{\@parskiptrue% - \renewcommand*{\scr@parskip}{% - \setlength{\parskip}{\baselineskip}% - \addtolength{\parskip}{\z@ \@plus .1\baselineskip}} - \renewcommand*{\scr@parfillskip}{% - \setlength{\parfillskip}{.25\linewidth} - \addtolength{\parfillskip}{\z@ \@plus 1fil}}} -\DeclareOption{halfparskip}{\@parskiptrue% - \renewcommand*{\scr@parskip}{% - \setlength{\parskip}{.5\baselineskip}% - \addtolength{\parskip}{\z@ \@plus .5\baselineskip}} - \renewcommand*{\scr@parfillskip}{% - \setlength{\parfillskip}{1em \@plus 1fil}}} -\DeclareOption{halfparskip-}{\@parskiptrue% - \renewcommand*{\scr@parskip}{% - \setlength{\parskip}{.5\baselineskip}% - \addtolength{\parskip}{\z@ \@plus .5\baselineskip}} - \renewcommand*{\scr@parfillskip}{% - \setlength{\parfillskip}{\z@ \@plus 1fil}}} -\DeclareOption{halfparskip+}{\@parskiptrue% - \renewcommand*{\scr@parskip}{% - \setlength{\parskip}{.5\baselineskip}% - \addtolength{\parskip}{\z@ \@plus .5\baselineskip}} - \renewcommand*{\scr@parfillskip}{% - \setlength{\parfillskip}{.3333\linewidth} - \addtolength{\parfillskip}{\z@ \@plus 1fil}}} -\DeclareOption{halfparskip*}{\@parskiptrue% - \renewcommand*{\scr@parskip}{% - \setlength{\parskip}{.5\baselineskip}% - \addtolength{\parskip}{\z@ \@plus .5\baselineskip}} - \renewcommand*{\scr@parfillskip}{% - \setlength{\parfillskip}{.25\linewidth} - \addtolength{\parfillskip}{\z@ \@plus 1fil}}} -\DeclareOption{parindent}{\@parskipfalse} -\DeclareOption{pointednumbers} - {\AtEndOfClass{\@altsecnumformattrue - \global\let\@altsecnumformatfalse\@altsecnumformattrue}} -\DeclareOption{pointednumber} - {\AtEndOfClass{\@altsecnumformattrue - \global\let\@altsecnumformatfalse\@altsecnumformattrue} - \ClassError - {scrreprt} - {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} - \ClassError - {scrreprt} - {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\@bigheadings - {\AtEndOfClass{ - \renewcommand*{\chapterheadstartvskip}{\vspace*{2.3\baselineskip}} - \renewcommand*{\chapterheadendvskip}{\vspace{1.725\baselineskip - \@plus .115\baselineskip \@minus .192\baselineskip}} +\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}% + \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\@bigheadings{% + \AtEndOfClass{% + \renewcommand*{\chapterheadstartvskip}{% + \vspace*{2.3\baselineskip}% + }% + \renewcommand*{\chapterheadendvskip}{% + \vspace{1.725\baselineskip + \@plus .115\baselineskip \@minus .192\baselineskip}% + }% \let\size@part\Huge \let\size@partnumber\huge \let\size@chapter\huge @@ -282,23 +380,32 @@ \let\size@subsection\large \let\size@subsubsection\normalsize \let\size@paragraph\normalsize - \let\size@subparagraph\normalsize}} + \let\size@subparagraph\normalsize + }% +} \DeclareOption{bigheadings}{\@bigheadings} -\DeclareOption{bigheading}{\@bigheadings - \ClassError - {scrreprt} - {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*{\chapterheadstartvskip}{\vspace*{2\baselineskip}} - \renewcommand*{\chapterheadendvskip}{\vspace{1.5\baselineskip - \@plus .1\baselineskip \@minus .167\baselineskip}} +\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*{\chapterheadstartvskip}{% + \vspace*{2\baselineskip}% + }% + \renewcommand*{\chapterheadendvskip}{% + \vspace{1.5\baselineskip + \@plus .1\baselineskip \@minus .167\baselineskip}% + }% \let\size@part\huge \let\size@partnumber\huge \let\size@chapter\LARGE @@ -306,23 +413,32 @@ \let\size@subsection\large \let\size@subsubsection\normalsize \let\size@paragraph\normalsize - \let\size@subparagraph\normalsize}} + \let\size@subparagraph\normalsize + }% +} \DeclareOption{normalheadings}{\@normalheadings} -\DeclareOption{normalheading}{\@normalheadings - \ClassError - {scrreprt} - {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*{\chapterheadstartvskip}{\vspace*{1.8\baselineskip}} - \renewcommand*{\chapterheadendvskip}{\vspace{1.35\baselineskip - \@plus 0.09\baselineskip \@minus .15\baselineskip}} +\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*{\chapterheadstartvskip}{% + \vspace*{1.8\baselineskip}% + }% + \renewcommand*{\chapterheadendvskip}{% + \vspace{1.35\baselineskip + \@plus 0.09\baselineskip \@minus .15\baselineskip}% + }% \let\size@part\LARGE \let\size@partnumber\LARGE \let\size@chapter\Large @@ -330,138 +446,555 @@ \let\size@subsection\normalsize \let\size@subsubsection\normalsize \let\size@paragraph\normalsize - \let\size@subparagraph\normalsize}} + \let\size@subparagraph\normalsize + }% +} \DeclareOption{smallheadings}{\@smallheadings} -\DeclareOption{smallheading}{\@smallheadings - \ClassError - {scrreprt} - {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.}} +\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% + }% +} \newif\if@chapterprefix \DeclareOption{chapterprefix}{\@chapterprefixtrue} \DeclareOption{nochapterprefix}{\@chapterprefixfalse} -\DeclareOption{appendixprefix}{\def\appendixmore{\@chapterprefixtrue}} -\DeclareOption{noappendixprefix}{\def\appendixmore{\@chapterprefixfalse}} +\DeclareOption{appendixprefix}{% + \def\appendixmore{\@chapterprefixtrue}% +} +\DeclareOption{noappendixprefix}{% + \def\appendixmore{\@chapterprefixfalse}% +} +%%% From File: scrkpage.dtx +\newif\if@hsl +\KOMA@key{headsepline}[true]{% + \KOMA@set@ifkey{headsepline}{@hsl}{#1}% + \@ifpackageloaded{typearea}{% + \KOMAoptions{headinclude=#1}% + }{% + \PassOptionsToPackage{typearea}{headinclude=#1}% + }% +} +\KOMA@DeclareObsoleteOption[\PackageInfo]{headnosepline}{headsepline=false} +\newif\if@fsl +\KOMA@key{footsepline}[true]{% + \KOMA@set@ifkey{footsepline}{@fsl}{#1}% + \@ifpackageloaded{typearea}{% + \KOMAoptions{footinclude=#1}% + }{% + \PassOptionsToPackage{typearea}{footinclude=#1}% + }% +} +\KOMA@DeclareObsoleteOption[\PackageInfo]{footnosepline}{footsepline=false} +\KOMA@key{cleardoublepage}{% + \begingroup% + \def\@tempc{% + \endgroup% + \KOMA@unkown@keyval{cleardoublepage}{#1}{% + 'current' or any defined pagestyle e.g. 'empty','plain'}% + }% + \ifstr{#1}{current}{% + \let\cleardoublepage\cleardoublestandardpage + }{% + \ifnotundefined{ps@#1}{% + \def\@tempc{\endgroup% + \def\cleardoublepage{\cleardoublepageusingstyle{#1}}% + }% + }{}% + }% + \@tempc +} \newcommand*{\cleardoublestandardpage}{} \let\cleardoublestandardpage\cleardoublepage -\newcommand*{\cleardoubleemptypage}{\clearpage% - {\thispagestyle{empty}\cleardoublestandardpage}} -\newcommand*{\cleardoubleplainpage}{\clearpage% - {\thispagestyle{plain}\cleardoublestandardpage}} -\DeclareOption{cleardoubleempty}{% - \let\cleardoublepage\cleardoubleemptypage} -\DeclareOption{cleardoubleplain}{% - \let\cleardoublepage\cleardoubleplainpage} -\DeclareOption{cleardoublestandard}{% - \let\cleardoublepage\cleardoublestandardpage} +\newcommand*{\cleardoublepageusingstyle}[1]{\clearpage + {\thispagestyle{#1}\cleardoublestandardpage}} +\newcommand*{\cleardoubleemptypage}{\cleardoublepageusingstyle{empty}} +\newcommand*{\cleardoubleplainpage}{\cleardoublepageusingstyle{plain}} +\KOMA@DeclareObsoleteOption[\PackageInfo]{cleardoubleempty}{% + cleardoublepage=empty% +} +\KOMA@DeclareObsoleteOption[\PackageInfo]{cleardoubleplain}{% + cleardoublepage=plain% +} +\KOMA@DeclareObsoleteOption[\PackageInfo]{cleardoublestandard}{% + cleardoublepage=standard% +} +%%% 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}% +} +%%% 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% + \if@dynlist \newcommand*{\scr@starttoc}{}% - \let\scr@starttoc=\@starttoc% + \let\scr@starttoc=\@starttoc \renewcommand*{\@starttoc}[1]{% \before@starttoc{##1}\scr@starttoc{##1}\after@starttoc{##1}}% - \fi% - }} - } + \fi + }% + }% +} \DeclareOption{liststotocnumbered}{% \AtEndOfClass{% \renewcommand*{\float@listhead}[1]{% \chapter{#1} \@mkboth{\chaptermarkformat #1}{\chaptermarkformat #1}% - \if@dynlist% + \if@dynlist \newcommand*{\scr@starttoc}{}% - \let\scr@starttoc=\@starttoc% + \let\scr@starttoc=\@starttoc \renewcommand*{\@starttoc}[1]{% \before@starttoc{##1}\scr@starttoc{##1}\after@starttoc{##1}}% - \fi% - }} - } -\DeclareOption{bibtotoc} - {\AtEndOfClass{% - \renewcommand*\bib@heading{% - \addchap{\bibname} - \@mkboth{\bibname}{\bibname} - }}} -\DeclareOption{bibtotocnumbered} - {\AtEndOfClass{% - \renewcommand*\bib@heading{% - \chapter{\bibname} - \@mkboth{\chaptermarkformat \bibname}{\chaptermarkformat \bibname} - }}} -\DeclareOption{idxtotoc} - {\AtEndOfClass{% - \renewcommand*\idx@heading{% - \if@openright\cleardoublepage\else\clearpage\fi% - \twocolumn[\addchap{\indexname}] - \@mkboth{\indexname}{\indexname}% - }}} -\newif\if@tocleft -\DeclareOption{tocleft}{\@toclefttrue} -\DeclareOption{tocindent}{\@tocleftfalse} + \fi + }% + }% +} \newif\if@dynlist \DeclareOption{listsleft}{\@dynlisttrue} \DeclareOption{listsindent}{\@dynlistfalse} -\if@compatibility\else - \DeclareOption*{% - \x@paper - } -\fi +%%% From File: scrkbib.dtx +\DeclareOption{openbib}{% + \AtEndOfPackage{% + \renewcommand*\@openbib@code{% + \advance\leftmargin\bibindent + \itemindent -\bibindent + \listparindent \itemindent + \parsep \z@ + }% + \renewcommand*\newblock{\par}% + }% +} +\DeclareOption{bibtotoc}{% + \AtEndOfClass{% + \renewcommand*\bib@heading{% + \addchap{\bibname}% + \@mkboth{\bibname}{\bibname}% + }% + }% +} +\DeclareOption{bibtotocnumbered}{% + \AtEndOfClass{% + \renewcommand*\bib@heading{% + \chapter{\bibname}% + \@mkboth{\chaptermarkformat \bibname}{\chaptermarkformat \bibname}% + }% + }% +} +%%% From File: scrkidx.dtx +\DeclareOption{idxtotoc}{% + \AtEndOfClass{% + \renewcommand*\idx@heading{% + \if@openright\cleardoublepage\else\clearpage\fi + \twocolumn[\addchap{\indexname}]% + \@mkboth{\indexname}{\indexname}% + }% + }% +} +%%% From File: scrklist.dtx +%%% From File: scrkmisc.dtx +\DeclareKeyValOption[% + \let\scr@pti@nerr@r + \OptionNotUsed + \x@paper +]{KOMA} +\KOMAoptions{% + draft=false,headsepline=false,footsepline=false,parskip=false% + ,twoside=false% +} \ExecuteOptions{% - final,11pt,onecolumn% - ,headnosepline,footnosepline,bigheadings% - ,nochapterprefix,oneside,openany,abstractoff% + bigheadings% + ,nochapterprefix,openany,abstractoff% } \ProcessOptions\relax -\RequirePackage{scrlfile} -\newif\if@restonecol +%%% From File: scrkfont.dtx \@tempcnta=10 -\advance\@tempcnta by\@ptsize\relax +\advance\@tempcnta by\@ptsize \xdef\@tempa{% -size% -\the\@tempcnta.clo} + size% + \the\@tempcnta.clo} \InputIfFileExists{\@tempa}{}{% - \ClassError - {scrreprt} - {File `\@tempa' not found!\MessageBreak - This error is fatal!} - {To every fontsize you want to select by class option,\MessageBreak - you need a corresponding - size-class-option-file declaring all\MessageBreak - the macros based on fontsize.\MessageBreak - Ask a wizzard for more information or use another - fontsize.\MessageBreak - You cannot continue!} - \batchmode \csname @@end\endcsname \end -} -\let\test@number =\undefined -\let\gobble@till@next =\undefined -\let\@BCOR =\undefined -\let\@@BCOR =\undefined -\let\@DIV =\undefined -\let\@@DIV =\undefined -\let\@headlines =\undefined -\let\@@headlines =\undefined -\let\x@paper =\undefined -\let\x@@paper =\undefined -\newcommand*{\scr@file@date@version}{} -\def\scr@file@date@version#1/#2/#3 #4 #5\@nil{#1/#2/#3 #4} -\RequirePackage{typearea}[\expandafter\expandafter\expandafter% - \scr@file@date@version\csname ver@% - scrreprt% - .cls\endcsname\@nil] + \ClassError{\KOMAClassName}{% + File `\@tempa' not found!\MessageBreak + This error is fatal!% + }{% + To every fontsize you want to select by class + option,\MessageBreak + you need a corresponding + size-class-option-file declaring all\MessageBreak + the macros based on fontsize.\MessageBreak + Ask a wizzard for more information or use another + fontsize.\MessageBreak + You cannot continue!% + }% + \batchmode \csname @@end\endcsname \end +} +\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm} +\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf} +\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt} +\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf} +\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit} +\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl} +\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc} +\DeclareOldFontCommand{\sfb}{\normalfont\sffamily\bfseries}{% + \@nomath\sfb} +\DeclareRobustCommand*{\cal}{\@fontswitch\relax\mathcal} +\DeclareRobustCommand*{\mit}{\@fontswitch\relax\mathnormal} +\newcommand*{\setkomafont}[2]{% + \@ifundefined{scr@fnt@#1}{% + \@ifundefined{scr@fnt@instead@#1}{% + \ClassError{\KOMAClassName}{% + 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% + }% + }{% + \ClassInfo{\KOMAClassName}{% + 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}{}{% + \ClassWarning{\KOMAClassName}{% + \csname scr@fnt@wrn@#1\endcsname{#1}% + }% + }% +} +\ifundefined{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*{\addtokomafont}[2]{% + \@ifundefined{scr@fnt@#1}{% + \@ifundefined{scr@fnt@instead@#1}{% + \ClassError{\KOMAClassName}{% + 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% + }% + }{% + \ClassInfo{\KOMAClassName}{% + 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}{}{% + \ClassWarning{\KOMAClassName}{% + \csname scr@fnt@wrn@#1\endcsname{#1}% + }% + }% +} +\newcommand*{\usekomafont}[1]{% + \@ifundefined{scr@fnt@#1}{% + \@ifundefined{scr@fnt@instead@#1}{% + \ClassError{\KOMAClassName}{% + 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% + }% + }{% + \ClassInfo{\KOMAClassName}{% + 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 + }% + }% + \@nameuse{scr@fnt@instead@#1}% + }{% + \@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: 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 + \space\number\day, \number\year}% +%%% From File: scrktare.dtx +\let\@BCOR =\relax +\let\@@BCOR =\relax +\let\@DIV =\relax +\let\@@DIV =\relax +\let\@headlines =\relax +\let\@@headlines =\relax +\let\x@paper =\relax +\let\x@@paper =\relax +\let\scr@pti@nerr@r =\relax +\RequirePackage{typearea}[\KOMAScriptVersion] +%%% From File: scrkpar.dtx \setlength{\lineskip}{\p@} \setlength{\normallineskip}{\p@} \setlength{\columnsep}{10\p@} \setlength{\columnseprule}{\z@} +\newcommand*{\scr@selectfont}{}\let\scr@selectfont\selectfont +\BeforePackage{everysel}{% + \ifx\selectfont\scr@new@selectfont\else + \ClassWarningNoLine{\KOMAClassName}{discard change of \string\selectfont}% + \fi + \let\selectfont\scr@selectfont +} +\AfterPackage{everysel}{% + \g@addto@macro\selectfont{\par@update}% + \let\scr@new@selectfont\selectfont +} +\g@addto@macro\selectfont{\par@update} +\newcommand*{\scr@new@selectfont}{}\let\scr@new@selectfont\selectfont +\newcommand*{\par@updaterelative}{% + \begingroup + \edef\@tempa{\the\parindent}\ifx\@tempa\f@parindent + \aftergroup\parindent@update + \fi + \edef\@tempa{\the\parskip}\ifx\@tempa\f@parskip + \aftergroup\parskip@update + \fi + \edef\@tempa{\the\parfillskip}\ifx\@tempa\f@parfillskip + \aftergroup\parfillskip@update + \fi + \endgroup +} +\newcommand*{\parindent@update}{% + \scr@defaultunits\parindent\scr@parindent + \begingroup + \let\@tempb\endgroup + \edef\@tempa{\the\parindent}\ifx\@tempa\f@parindent\else + \def\@tempb{\endgroup\edef\f@parindent{\the\parindent}}% + \fi + \@tempb +} +\newcommand*{\parskip@update}{% + \scr@defaultunits\parskip\scr@parskip + \begingroup + \let\@tempb\endgroup + \edef\@tempa{\the\parskip}\ifx\@tempa\f@parskip\else + \def\@tempb{\endgroup\edef\f@parskip{\the\parskip}}% + \fi + \@tempb +} +\newcommand*{\parfillskip@update}{% + \scr@defaultunits\parfillskip\scr@parfillskip + \begingroup + \let\@tempb\endgroup + \edef\@tempa{\the\parfillskip}\ifx\@tempa\f@parfillskip\else + \def\@tempb{\endgroup\edef\f@parfillskip{\the\parfillskip}}% + \fi + \@tempb +} +\newcommand*{\scr@defaultunits}[2]{% + \begingroup + \edef\@tempa{#2}% + \expandafter\scr@@defaultunits\expandafter#1\@tempa plusplus\@nnil + \edef\@tempa{\noexpand\endgroup\noexpand\setlength{\noexpand#1}{\the#1}}% + \@tempa +} +\newcommand*{\scr@@defaultunits}{} +\def\scr@@defaultunits#1#2plus#3plus#4\@nnil{% + \ifx\relax#3\relax + \scr@@@defaultunits#1{}#2minusminus\@nnil + \else + \scr@@@defaultunits#1{#2}#3minusminus\@nnil + \fi +} +\newcommand*{\scr@@@defaultunits}{} +\def\scr@@@defaultunits#1#2#3minus#4minus#5\@nnil{% + \ifx\relax#2\relax + \@defaultunits\@tempskipa#3pt\relax\@nnil + \setlength{#1}{\@tempskipa}% + \else + \@defaultunits\@tempskipa\z@\@plus#3pt\relax\@nnil + \setlength{#1}{\@tempskipa}% + \@defaultunits\@tempskipa#2pt\relax\@nnil + \addtolength{#1}{\@tempskipa}% + \fi + \ifx\relax#4\relax\else + \@defaultunits\@tempskipa\z@\@minus #4pt\relax\@nnil + \addtolength{#1}{\@tempskipa}% + \fi +} \g@addto@macro{\@listi}{\@list@extra} \let\@listI=\@listi \g@addto@macro{\@listii}{\@list@extra} @@ -472,154 +1005,13 @@ size% } \g@addto@macro{\footnotesize}{\protect\add@extra@listi{ftns}} \g@addto@macro{\small}{\protect\add@extra@listi{sml}} -\newcommand*{\@list@extra}{} -\newcommand*{% - \@parskip@indent}{% - \if@parskip - \setlength{\parindent}{\z@}% - \scr@parskip - \scr@parfillskip - \renewcommand*{\@list@extra}{% - \topsep\z@ \parsep\parskip \itemsep\z@}% - \else - \setlength{\parindent}{1em}% - \setlength{\parskip}{\z@ \@plus \p@}% - \setlength{\parfillskip}{\z@ \@plus 1fil}% - \renewcommand*{\@list@extra}{}% - \fi -}% -\@parskip@indent -\AtBeginDocument{% - \if@parskip\ifdim\parfillskip=\z@ \scr@parfillskip\fi\fi +\newcommand*{\@list@extra}{% + \ifdim\parskip>\z@\topsep\z@\parskip\parskip\itemsep\z@\fi } \@lowpenalty = 51 \@medpenalty =151 \@highpenalty =301 -\setcounter{topnumber}{2} -\renewcommand*\topfraction{.7} -\setcounter{bottomnumber}{1} -\renewcommand*\bottomfraction{.3} -\setcounter{totalnumber}{3} -\renewcommand*\textfraction{.2} -\renewcommand*\floatpagefraction{.5} -\setcounter{dbltopnumber}{2} -\renewcommand*\dbltopfraction{.7} -\renewcommand*\dblfloatpagefraction{.5} -\if@compatibility - \newcommand*\headincludeon{\@hincltrue} - \newcommand*\headincludeoff{\@hinclfalse} - \newcommand*\headseplineon{\@hsltrue \@hincltrue} - \newcommand*\headseplineoff{\@hslfalse \@hinclfalse} - \newcommand*\footincludeon{\@fincltrue} - \newcommand*\footincludeoff{\@finclfalse} - \newcommand*\footseplineon{\@fsltrue \@fincltrue} - \newcommand*\footseplineoff{\@fslfalse \@finclfalse} -\fi -\newcommand*{\set@tempdima@hw}{% - \setlength{\@tempdima}{\textwidth}% - \if@mincl - \addtolength{\@tempdima}{\marginparsep}% - \addtolength{\@tempdima}{\marginparwidth}% - \fi - } -\if@twoside - \renewcommand*{\ps@plain}{\let\@mkboth\@gobbletwo - \renewcommand*{\@evenhead}{}% - \renewcommand*{\@oddhead}{}% - \renewcommand*{\@evenfoot}{% - \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% - \if@fsl \hrule \vskip 3\p@ \fi - \hb@xt@ \@tempdima{{\pnumfont\thepage\hfil}}}}}% - \renewcommand*{\@oddfoot}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \if@fsl \hrule \vskip 3\p@ \fi - \hb@xt@ \@tempdima{{\pnumfont\hfil\thepage}}}}\hss}}% - \newcommand*{\ps@headings}{\let\@mkboth\markboth - \renewcommand*{\@evenhead}{% - \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% - \hb@xt@ \@tempdima{{\headfont\strut\leftmark\hfil}}% - \if@hsl \vskip 1.5\p@ \hrule \fi}}} - \renewcommand*{\@oddhead}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \hb@xt@ \@tempdima{{\headfont\hfil\strut\rightmark}}% - \if@hsl \vskip 1.5\p@ \hrule \fi}}\hss} - \renewcommand*{\@evenfoot}{% - \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% - \if@fsl \hrule \vskip 3\p@ \fi - \hb@xt@ \@tempdima{{\pnumfont\thepage\hfil}}}}}% - \renewcommand*{\@oddfoot}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \if@fsl \hrule \vskip 3\p@ \fi - \hb@xt@ \@tempdima{{\pnumfont\hfil\thepage}}}}\hss}% - \renewcommand*{\chaptermark}[1]{% - \markboth {\ifnum \c@secnumdepth >\m@ne - \chaptermarkformat\fi - ##1}{}}% - \renewcommand*{\sectionmark}[1]{% - \markright {\ifnum \c@secnumdepth >\z@ - \sectionmarkformat\fi - ##1}}} - \newcommand*{\ps@myheadings}{\let\@mkboth\@gobbletwo - \renewcommand*{\@evenhead}{% - \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% - \hb@xt@ \@tempdima{{\headfont\strut\leftmark\hfil}}% - \if@hsl \vskip 1.5\p@ \hrule \fi}}} - \renewcommand*{\@oddhead}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \hb@xt@ \@tempdima{{\headfont\hfil\strut\rightmark}}% - \if@hsl \vskip 1.5\p@ \hrule \fi}}\hss} - \renewcommand*{\@evenfoot}{% - \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% - \if@fsl \hrule \vskip 3\p@ \fi - \hb@xt@ \@tempdima{{\pnumfont\thepage\hfil}}}}}% - \renewcommand*{\@oddfoot}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \if@fsl \hrule \vskip 3\p@ \fi - \hb@xt@ \@tempdima{{\pnumfont\hfil\thepage}}}}\hss}% - \renewcommand*{\chaptermark}[1]{} - \renewcommand*{\sectionmark}[1]{}} -\else - \renewcommand*{\ps@plain}{\let\@mkboth\@gobbletwo - \renewcommand*{\@evenhead}{}% - \renewcommand*{\@oddhead}{}% - \renewcommand*{\@evenfoot}{}% - \renewcommand*{\@oddfoot}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \if@fsl \hrule \vskip 3\p@ \fi - \hb@xt@ \@tempdima{{\pnumfont\hfil\thepage\hfil}}}}\hss}} - \newcommand*{\ps@headings}{\let\@mkboth\markboth - \renewcommand*{\@evenhead}{}% - \renewcommand*{\@oddhead}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \hb@xt@ \@tempdima{{\headfont\hfil\strut\rightmark\hfil}} - \if@hsl \vskip 1.5\p@ \hrule \fi}}\hss}% - \renewcommand*{\@evenfoot}{}% - \renewcommand*{\@oddfoot}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \if@fsl \hrule \vskip 3\p@ \fi - \hb@xt@ \@tempdima{{\pnumfont\hfil\thepage\hfil}}}\hss}}% - \renewcommand*{\sectionmark}[1]{} - \renewcommand*{\chaptermark}[1]{\markright {\ifnum \c@secnumdepth >\m@ne - \chaptermarkformat\fi - ##1}}} - \newcommand*{\ps@myheadings}{\let\@mkboth\@gobbletwo - \renewcommand*{\@evenhead}{}% - \renewcommand*{\@oddhead}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \hb@xt@ \@tempdima{{\headfont\hfil\strut\rightmark\hfil}} - \if@hsl \vskip 1.5\p@ \hrule \fi}}\hss}% - \renewcommand*{\@evenfoot}{}% - \renewcommand*{\@oddfoot}{% - \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% - \if@fsl \hrule \vskip 3\p@ \fi - \hb@xt@ \@tempdima{{\pnumfont\hfil\thepage\hfil}}}}\hss}% - \renewcommand*{\chaptermark}[1]{}% - \renewcommand*{\sectionmark}[1]{}} -\fi -\newcommand*{\titlepagestyle}{plain} -\newcommand*{\partpagestyle}{plain} -\newcommand*{\chapterpagestyle}{plain} -\newcommand*{\indexpagestyle}{plain} +%%% From File: scrktitl.dtx \newcommand*{\@extratitle}{} \newcommand{\extratitle}[1]{\gdef\@extratitle{#1}} \newcommand*{\@titlehead}{} @@ -636,58 +1028,60 @@ size% \newcommand{\dedication}[1]{\gdef\@dedication{#1}} \newcommand*{\next@tpage}{\clearpage\thispagestyle{empty}} \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 + \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\cleardoublepage - \thispagestyle{empty} - \fi - \ifx\@titlehead\@empty \else - \noindent\begin{minipage}[t]{\textwidth} + \thispagestyle{empty}% + \fi + \ifx\@titlehead\@empty \else + \noindent\begin{minipage}[t]{\textwidth}% \@titlehead \end{minipage}\par - \fi - \null\vfill - \begin{center} - \ifx\@subject\@empty \else - {\Large \@subject \par} + \fi + \null\vfill + \begin{center} + \ifx\@subject\@empty \else + {\subject@font \@subject \par}% + \vskip 3em + \fi + {\titlefont\huge \@title\par}% \vskip 3em - \fi - {\titlefont\huge \@title\par} - \vskip 3em - {\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 + {\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 \noindent\begin{minipage}[t]{\textwidth} - \@uppertitleback + \@uppertitleback \end{minipage}\par \vfill \noindent\begin{minipage}[b]{\textwidth} - \@lowertitleback + \@lowertitleback \end{minipage} - \fi - \ifx\@dedication\@empty \else + \fi + \ifx\@dedication\@empty \else \next@tpage\null\vfill - {\centering \Large \@dedication \par} + {\centering \Large \@dedication \par}% \vskip \z@ \@plus3fill \if@twoside \next@tpage\cleardoublepage \fi - \fi + \fi \end{titlepage} \setcounter{footnote}{0}% \global\let\thanks\relax @@ -713,153 +1107,297 @@ size% \global\let\lowertitleback\relax \global\let\dedication\relax \global\let\date\relax - \global\let\and\relax} + \global\let\and\relax + } \else - \newcommand*\maketitle[1][1]{\par - \@tempcnta=#1\relax\ifnum\@tempcnta=1\else - \ClassWarning{scrreprt} - {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\@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} + \newcommand*\maketitle[1][1]{\par + \@tempcnta=#1\relax\ifnum\@tempcnta=1\else + \ClassWarning{\KOMAClassName}{% + 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\@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 - \ifx\@titlehead\@empty \else - \noindent\begin{minipage}[t]{\textwidth} - \@titlehead - \end{minipage}\par - \fi - \null - \vskip 2em% - \begin{center}% + \clearpage + \let\footnote\thanks + \ifx\@extratitle\@empty \else + \noindent\@extratitle \next@tpage \if@twoside \null\next@tpage \fi + \fi + \ifx\@titlehead\@empty \else + \noindent\begin{minipage}[t]{\textwidth} + \@titlehead + \end{minipage}\par + \fi + \null + \vskip 2em% + \begin{center}% \ifx\@subject\@empty \else - {\Large \@subject \par} - \vskip 1.5em + {\subject@font \@subject \par} + \vskip 1.5em \fi {\titlefont\huge \@title \par}% \vskip 1.5em% {\Large \lineskip .5em% - \begin{tabular}[t]{c}% + \begin{tabular}[t]{c} \@author - \end{tabular}\par}% + \end{tabular}\par + }% \vskip 1em% {\Large \@date \par}% \vskip \z@ \@plus 1em {\Large \@publishers \par} \ifx\@dedication\@empty \else - \vskip 2em - {\Large \@dedication \par} + \vskip 2em + {\Large \@dedication \par} \fi \end{center}% \par - \vskip 2em} -\renewcommand*{\numberline}[1]{% - \hb@xt@\@tempdima{#1\autodot\hfil}} + \vskip 2em +} +\newcommand*\titlefont{\sectfont} +\newcommand*{\subject@font}{\normalfont\normalcolor\bfseries\Large} +\newcommand*{\scr@fnt@title}{\titlefont} +\newcommand*{\scr@fnt@subject}{\subject@font} +\if@titlepage + \newenvironment{abstract}{% + \titlepage + \null\vfil + \@beginparpenalty\@lowpenalty + \if@abstrt + \begin{center} + \normalfont\sectfont\nobreak\abstractname + \@endparpenalty\@M + \end{center} + \fi + }{% + \par\vfil\null\endtitlepage + } +\else + \newenvironment{abstract}{% + \if@twocolumn\if@abstrt + \addsec*{\abstractname} + \fi + \else + \if@abstrt + \small + \begin{center} + {\normalfont\sectfont\nobreak\abstractname + \vspace{-.5em}\vspace{\z@}}% + \end{center} + \fi + \quotation + \fi + }{% + \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}% + \setcounter{section}{0}% + \gdef\@chapapp{\appendixname}% + \gdef\thechapter{\@Alph\c@chapter}% + \csname appendixmore\endcsname +} \newcommand*\chaptermark[1]{} +\newif\if@altsecnumformat\@altsecnumformatfalse +\newif\if@autodot\@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 + \fi + \@@maybeautodot +} +\let\scr@sect\@sect +\renewcommand*{\@sect}[1]{\stepcounter{#1}% + \expandafter\@maybeautodot\csname the#1\endcsname + \addtocounter{#1}{-1}\scr@sect{#1}% +} +\BeforeClosingMainAux{% + \if@autodot\if@filesw\write\@mainaux{% + \string\global\string\@altsecnumformattrue}% + \fi\fi} +\newcommand*\autodot{\if@altsecnumformat.\fi} \setcounter{secnumdepth}{2} \newcounter{part} +\renewcommand*{\thepart}{\@Roman\c@part} +\newcommand*{\partformat}{\partname~\thepart\autodot} \newcounter{chapter} +\renewcommand*{\thechapter}{\@arabic\c@chapter} +\newcommand*{\chapterformat}{% + \chapappifchapterprefix{\ }\thechapter\autodot\enskip +} +\newcommand*\chaptermarkformat{\chapappifchapterprefix{\ }% + \thechapter\autodot\enskip} \newcounter{section}[chapter] +\renewcommand*\thesection{\thechapter.\@arabic\c@section} +\newcommand*\sectionmarkformat{\thesection\autodot\enskip} \newcounter{subsection}[section] +\renewcommand*{\thesubsection}{\thesection.\@arabic\c@subsection} \newcounter{subsubsection}[subsection] +\renewcommand*{\thesubsubsection}{% + \thesubsection.\@arabic\c@subsubsection +} \newcounter{paragraph}[subsubsection] +\renewcommand*{\theparagraph}{\thesubsubsection.\@arabic\c@paragraph} \newcounter{subparagraph}[paragraph] -\renewcommand*\thepart{\@Roman\c@part} -\renewcommand*\thechapter{\@arabic\c@chapter} -\renewcommand*\thesection{\thechapter.\@arabic\c@section} -\renewcommand*\thesubsection{\thesection.\@arabic\c@subsection} -\renewcommand*\thesubsubsection{\thesubsection.\@arabic\c@subsubsection} -\renewcommand*\theparagraph{\thesubsubsection.\@arabic\c@paragraph} -\renewcommand*\thesubparagraph{\theparagraph.\@arabic\c@subparagraph} +\renewcommand*{\thesubparagraph}{% + \theparagraph.\@arabic\c@subparagraph +} +\newcommand*{\othersectionlevelsformat}[1]{% + \csname the#1\endcsname\autodot\enskip} +\renewcommand*{\@seccntformat}{\protect\othersectionlevelsformat} +\newcommand*\partname{Part} +\newcommand*\chaptername{Chapter} +\newcommand*\abstractname{Abstract} +\newcommand*\appendixname{Appendix} +\newcommand*{\chapappifprefix}[1][]{% + \ClassWarning{\KOMAClassName}{% + Please don't use obsolete command + \string\chapappifprefix.\MessageBreak + The new command \string\chapappifchapterprefix\space has + an\MessageBreak + obligatory instead of an optional argument. Use that\MessageBreak + new command% + }% + \if@chapterprefix\chapapp#1\fi +} +\newcommand*{\chapappifchapterprefix}[1]{% + \if@chapterprefix\chapapp#1\fi +} +\newcommand*{\chapapp}{\@chapapp} \newcommand*\@chapapp{\chaptername} +\newcommand*{\partheadstartvskip}{% + \null\vfil +} +\newcommand*{\partheadmidvskip}{% + \par\nobreak + \vskip 20\p@ +} +\newcommand*{\partheadendvskip}{% + \vfil\newpage +} \newcommand\part{\if@openright\cleardoublepage\else\clearpage\fi - \thispagestyle{\partpagestyle}% - \if@twocolumn - \onecolumn - \@tempswatrue - \else - \@tempswafalse - \fi - \null\vfil% - \vbox to\z@{\vss\use@preamble{part@o}\strut\par}% - \vskip-\baselineskip\nobreak% - \secdef\@part\@spart} + \thispagestyle{\partpagestyle}% + \if@twocolumn + \onecolumn + \@tempswatrue + \else + \@tempswafalse + \fi + \partheadstartvskip + \vbox to\z@{\vss\use@preamble{part@o}\strut\par}% + \vskip-\baselineskip\nobreak% + \secdef\@part\@spart +} \newcommand*{\@part}{} \def\@part[#1]#2{% + \ifnum \c@secnumdepth >-2\relax + \refstepcounter{part}% + \@maybeautodot\thepart% + \addcontentsline{toc}{part}{\protect\numberline{\thepart}#1}% + \else + \addcontentsline{toc}{part}{#1}% + \fi + \begingroup + \setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative + \raggedpart + \interlinepenalty \@M + \normalfont\sectfont\nobreak \ifnum \c@secnumdepth >-2\relax - \refstepcounter{part}% - \@maybeautodot\thepart% - \addcontentsline{toc}{part}{\protect\numberline{\thepart}#1}% - \else - \addcontentsline{toc}{part}{#1}% + \size@partnumber\partformat + \partheadmidvskip \fi - \partmark{#1}% - {\@parskipfalse\@parskip@indent\centering - \interlinepenalty \@M - \normalfont\sectfont - \ifnum \c@secnumdepth >-2\relax - \size@partnumber\partformat - \par - \vskip 20\p@ - \fi - \size@part #2\strut\par}% - \@endpart} + \size@part #2\strut% + \partmark{#1}\par + \endgroup + \@endpart +} \newcommand*{\@spart}[1]{% - {\@parskipfalse\@parskip@indent\centering - \interlinepenalty \@M - \normalfont - \sectfont\size@part #1\strut\@mkboth{}{}\par}% - \@endpart} + \begingroup + \setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative + \raggedpart + \interlinepenalty \@M + \normalfont + \sectfont\nobreak\size@part #1\strut\@mkboth{}{}\par + \endgroup + \@endpart +} \newcommand*{\@endpart}{\vbox to\z@{\use@preamble{part@u}\vss}% - \vfil\newpage + \partheadendvskip \if@twoside\if@openright \null% \thispagestyle{empty}% @@ -867,9 +1405,10 @@ size% \fi\fi \if@tempswa \twocolumn - \fi} -\newcommand*{\partmark}[1]{\@mkboth{}{}} -\newcommand\addpart{\if@openright\cleardoublepage\else\clearpage\fi + \fi +} +\newcommand\addpart{% + \if@openright\cleardoublepage\else\clearpage\fi \thispagestyle{\partpagestyle}% \if@twocolumn \onecolumn @@ -877,59 +1416,23 @@ size% \else \@tempswafalse \fi - \null\vfil - \secdef\@addpart\@saddpart} + \partheadstartvskip + \vbox to\z@{\vss\use@preamble{part@o}\strut\par}% + \secdef\@addpart\@saddpart +} \newcommand*{\@addpart}{} -\def\@addpart[#1]#2{\addcontentsline{toc}{part}{#1}\@spart{#2}} -\newcommand*{\@saddpart}{} -\def\@saddpart#1{\@spart{#1}} +\def\@addpart[#1]#2{\addcontentsline{toc}{part}{#1}\@spart{#2}% + \ifx\partmark\@gobble\else\@mkboth{#1}{}\fi +} +\newcommand*{\@saddpart}{\@spart} +\newcommand*{\partmark}{} +\let\partmark\@gobble \newif\if@at@twocolumn \newcommand*\scr@topnewpage{} \let\scr@topnewpage\@topnewpage \long\def\@topnewpage[#1]{% - \@at@twocolumntrue\scr@topnewpage[{#1}]\@at@twocolumnfalse} -\newcommand\chapter{\if@openright\cleardoublepage\else\clearpage\fi - \thispagestyle{\chapterpagestyle}% - \global\@topnum\z@ - \@afterindentfalse - \secdef\@chapter\@schapter} -\newcommand*{\@chapter}{} -\def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne - \refstepcounter{chapter}% - \@maybeautodot\thechapter% - \typeout{\@chapapp\space\thechapter.}% - \addcontentsline{toc}{chapter}% - {\protect\numberline{\thechapter}#1}% - \else - \addcontentsline{toc}{chapter}{#1} - \fi - \chaptermark{#1}% - \addtocontents{lof}{\protect\addvspace{10\p@}}% - \addtocontents{lot}{\protect\addvspace{10\p@}}% - \@ifundefined{float@addtolists}{}{% - \float@addtolists{\protect\addvspace{10\p@}}} - \if@twocolumn - \if@at@twocolumn - \@makechapterhead{#2}% - \else - \@topnewpage[\@makechapterhead{#2}]% - \fi - \else - \@makechapterhead{#2}% - \@afterheading - \fi} -\newcommand*{\chapterheadstartvskip}{} -\newcommand*{\chapterheadendvskip}{} -\newcommand*{\@@makechapterhead}[1]{\chapterheadstartvskip% - {\normalfont\sectfont\size@chapter - \setlength{\parindent}{\z@}\setlength{\parfillskip}{\z@ \@plus 1fil}% - \if@chapterprefix\let\@tempa\raggedsection\else\let\@tempa\@hangfrom\fi% - \@tempa{\ifnum \c@secnumdepth >\m@ne% - \chapterformat\fi}% - \if@chapterprefix\par\nobreak\vskip.5\baselineskip\fi% - {\raggedsection \interlinepenalty \@M #1\par}}% - \nobreak\chapterheadendvskip% - } + \@at@twocolumntrue\scr@topnewpage[{#1}]\@at@twocolumnfalse +} \newcommand*{\use@chapter@o@preamble}{% {\settoheight{\@tempdima}{\vbox{\chapterheadstartvskip}}% \settodepth{\@tempdimb}{\vbox{\chapterheadstartvskip}}% @@ -944,9 +1447,7 @@ size% }% \ifdim \@tempdimb>\@tempdima% \addtolength{\@tempdimb}{-\@tempdima}% - \ClassWarning{% - scrreprt% - }{% + \ClassWarning{\KOMAClassName}{% preamble before chapter is \the\@tempdimb\space too high.\MessageBreak To avoid the overfull \string\vbox\space you may @@ -962,50 +1463,184 @@ size% \fi% } } +\newcommand*{\chapterheadstartvskip}{} +\newcommand*{\chapterheadendvskip}{} +\newcommand\chapter{\if@openright\cleardoublepage\else\clearpage\fi + \thispagestyle{\chapterpagestyle}% + \global\@topnum\z@ + \@afterindentfalse + \secdef\@chapter\@schapter +} +\newcommand*{\@chapter}{} +\def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne + \refstepcounter{chapter}% + \@maybeautodot\thechapter + \typeout{\@chapapp\space\thechapter.}% + \addcontentsline{toc}{chapter}% + {\protect\numberline{\thechapter}#1}% + \else + \addcontentsline{toc}{chapter}{#1}% + \fi + \chaptermark{#1}% + \addtocontents{lof}{\protect\addvspace{10\p@}}% + \addtocontents{lot}{\protect\addvspace{10\p@}}% + \@ifundefined{float@addtolists}{}{% + \float@addtolists{\protect\addvspace{10\p@}}% + }% + \if@twocolumn + \if@at@twocolumn + \@makechapterhead{#2}% + \else + \@topnewpage[\@makechapterhead{#2}]% + \fi + \else + \@makechapterhead{#2}% + \@afterheading + \fi +} \newcommand*{\@makechapterhead}[1]{% - \use@chapter@o@preamble% + \use@chapter@o@preamble \@@makechapterhead{#1}% - \use@preamble{chapter@u}\nobreak% - } -\newcommand*{\@schapter}[1]{\if@twocolumn - \if@at@twocolumn - \@makeschapterhead{#1}% - \else - \@topnewpage[\@makeschapterhead{#1}]% - \fi - \else - \@makeschapterhead{#1}% - \@afterheading - \fi} -\newcommand*{\@@makeschapterhead}[1]{\chapterheadstartvskip% + \use@preamble{chapter@u}\nobreak +} +\newcommand*{\@@makechapterhead}[1]{\chapterheadstartvskip {\normalfont\sectfont\size@chapter - \setlength{\parindent}{\z@}\setlength{\parfillskip}{\z@ \@plus 1fil}% + \setlength{\parindent}{\z@}\setlength{\parfillskip}{\fill}% + \if@chapterprefix + \let\@tempa\raggedsection + \else + \let\@tempa\@hangfrom + \fi + \@tempa{\ifnum \c@secnumdepth >\m@ne% + \chapterformat + \fi + }% + \if@chapterprefix\par\nobreak\vskip.5\baselineskip\fi + {\raggedsection \interlinepenalty \@M #1\par}}% + \nobreak\chapterheadendvskip +} +\newcommand*{\@schapter}[1]{% + \if@twocolumn + \if@at@twocolumn + \@makeschapterhead{#1}% + \else + \@topnewpage[\@makeschapterhead{#1}]% + \fi + \else + \@makeschapterhead{#1}% + \@afterheading + \fi +} +\newcommand*{\@@makeschapterhead}[1]{% + \chapterheadstartvskip% + {\normalfont\sectfont\size@chapter + \setlength{\parindent}{\z@}\setlength{\parfillskip}{\fill}% \raggedsection \interlinepenalty \@M #1\par}% \nobreak\chapterheadendvskip% } \newcommand*{\@makeschapterhead}[1]{% - \use@chapter@o@preamble% + \use@chapter@o@preamble \@@makeschapterhead{#1}% - \use@preamble{chapter@u}\nobreak% - } + \use@preamble{chapter@u}\nobreak +} +\newcommand\addchap{\if@openright\cleardoublepage\else\clearpage\fi + \thispagestyle{\chapterpagestyle}% + \global\@topnum\z@ + \@afterindentfalse + \secdef\@addchap\@saddchap% +} +\newcommand*{\@addchap}{} +\def\@addchap[#1]#2{\@schapter{#2}% + \addcontentsline{toc}{chapter}{#1}% + \if@twoside\@mkboth{#1}{}\else\@mkboth{}{#1}\fi +} +\newcommand*{\@saddchap}[1]{\@schapter{#1}\@mkboth{}{}} +\newcommand*\addsec{\secdef\@addsec\@saddsec} +\newcommand*{\@addsec}{} +\def\@addsec[#1]#2{\section*{#2}\addcontentsline{toc}{section}{#1} + \if@twoside\ifx\@mkboth\markboth\markright{#1}\fi\fi +} +\newcommand*{\@saddsec}[1]{\section*{#1}\@mkboth{}{}} +\newcommand\section{\@startsection{section}{1}{\z@}% + {-3.5ex \@plus -1ex \@minus -.2ex}% + {2.3ex \@plus.2ex}% + {\raggedsection\normalfont\sectfont\nobreak\size@section\nobreak}% +} +\newcommand\subsection{\@startsection{subsection}{2}{\z@}% + {-3.25ex\@plus -1ex \@minus -.2ex}% + {1.5ex \@plus .2ex}% + {\raggedsection\normalfont\sectfont\nobreak\size@subsection\nobreak + }% +} +\newcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}% + {-3.25ex\@plus -1ex \@minus -.2ex}% + {1.5ex \@plus .2ex}% + {\raggedsection\normalfont\sectfont\nobreak\size@subsubsection + \nobreak + }% +} +\newcommand\paragraph{\@startsection{paragraph}{4}{\z@}% + {3.25ex \@plus1ex \@minus.2ex}% + {-1em}% + {\raggedsection\normalfont\sectfont\nobreak\size@paragraph\nobreak}% +} +\newcommand\subparagraph{\@startsection{subparagraph}{5}{\parindent}% + {3.25ex \@plus1ex \@minus .2ex}% + {-1em}% + {\raggedsection\normalfont\sectfont\nobreak\size@subparagraph + \nobreak + }% +} +\newcommand\minisec[1]{\@afterindentfalse \vskip 1.5ex + {\parindent \z@ + \raggedsection\normalfont\sectfont\nobreak#1\par\nobreak}\nobreak% + \@afterheading +} +\newcommand*{\raggedsection}{} +\let\raggedsection\raggedright +\newcommand*{\raggedpart}{} +\let\raggedpart\centering +\newcommand*\sectfont{\normalcolor\sffamily\bfseries} +\newcommand*{\size@part}{} +\newcommand*{\size@partnumber}{} +\newcommand*{\size@chapter}{} +\newcommand*{\size@section}{} +\newcommand*{\size@subsection}{} +\newcommand*{\size@subsubsection}{} +\newcommand*{\size@paragraph}{} +\newcommand*{\size@subparagraph}{} +\newcommand*{\scr@fnt@disposition}{\sectfont} +\newcommand*{\scr@fnt@part}{\size@part} +\newcommand*{\scr@fnt@partnumber}{\size@partnumber} +\newcommand*{\scr@fnt@chapter}{\size@chapter} +\newcommand*{\scr@fnt@section}{\size@section} +\newcommand*{\scr@fnt@subsection}{\size@subsection} +\newcommand*{\scr@fnt@subsubsection}{\size@subsubsection} +\newcommand*{\scr@fnt@paragraph}{\size@paragraph} +\newcommand*{\scr@fnt@subparagraph}{\size@subparagraph} +\aliaskomafont{minisec}{disposition} +\aliaskomafont{sectioning}{disposition} \newcommand*{\use@preamble}[1]{% \@ifundefined{#1@preamble}{}{% \@nameuse{#1@preamble}% - \global\expandafter\let\csname#1@preamble\endcsname=\relax}% + \global\expandafter\let\csname#1@preamble\endcsname=\relax + }% } \newcommand*{\set@preamble}[1]{% - \@ifnextchar [ - {\set@@preamble{#1}}{\set@@@preamble{#1}[][\hsize]}} + \@ifnextchar [%] + {\set@@preamble{#1}}{\set@@@preamble{#1}[][\hsize]}% +} \newcommand*{\set@@preamble}{} \def\set@@preamble#1[#2]{% - \@ifnextchar [ - {\set@@@preamble{#1}[{#2}]}{\set@@@preamble{#1}[{#2}][\hsize]}} + \@ifnextchar [%] + {\set@@@preamble{#1}[{#2}]}{\set@@@preamble{#1}[{#2}][\hsize]}% +} \newcommand{\set@@@preamble}{} \long\def\set@@@preamble#1[#2][#3]#4{% - {% - \def\prmbl@pos{#2}\let\prmbl@hpos\relax\let\prmbl@vpos\relax% - \expandafter \@tfor \expandafter \@tempa% - \expandafter :\expandafter =\prmbl@pos% + \begingroup + \def\prmbl@pos{#2}\let\prmbl@hpos\relax\let\prmbl@vpos\relax + \expandafter \@tfor \expandafter \@tempa + \expandafter :\expandafter =\prmbl@pos \do{% \if \@tempa l% \set@preamble@hpos{0}{#2}% @@ -1022,67 +1657,130 @@ size% \if \@tempa o% \set@preamble@vpos{1}{#2}% \fi% - } + }% \@ifundefined{prmbl@hpos}{\def\prmbl@hpos{0}}{}% \@ifundefined{prmbl@vpos}{\def\prmbl@vpos{0}}{}% \ifcase\prmbl@hpos \ifcase\prmbl@vpos - \set@@@@preamble{#1@u}{t}{#3}{}{\hfil}{#4} + \set@@@@preamble{#1@u}{t}{#3}{}{\hfil}{#4}% \else - \set@@@@preamble{#1@o}{b}{#3}{}{\hfil}{#4} + \set@@@@preamble{#1@o}{b}{#3}{}{\hfil}{#4}% \fi \or \ifcase\prmbl@vpos - \set@@@@preamble{#1@u}{t}{#3}{\hfil}{\hfil}{#4} + \set@@@@preamble{#1@u}{t}{#3}{\hfil}{\hfil}{#4}% \else - \set@@@@preamble{#1@o}{b}{#3}{\hfil}{\hfil}{#4} + \set@@@@preamble{#1@o}{b}{#3}{\hfil}{\hfil}{#4}% \fi \else \ifcase\prmbl@vpos - \set@@@@preamble{#1@u}{t}{#3}{\hfil}{}{#4} + \set@@@@preamble{#1@u}{t}{#3}{\hfil}{}{#4}% \else - \set@@@@preamble{#1@o}{b}{#3}{\hfil}{}{#4} + \set@@@@preamble{#1@o}{b}{#3}{\hfil}{}{#4}% \fi \fi - } + \endgroup } \newcommand{\set@@@@preamble}[6]{% \expandafter\gdef\csname #1@preamble\endcsname{% - \hbox to\hsize{#4\parbox[{#2}]{#3}{#6\par}#5\par}}} + \hbox to\hsize{#4\parbox[{#2}]{#3}{#6\par}#5\par}% + }% +} \newcommand*{\set@preamble@hpos}[2]{% \@ifundefined{prbml@hpos}{% \def\prmbl@hpos{#1}% - }{% + }{% \ifnum \prmbl@hpos=0\relax\else% - \ClassError{% - scrreprt% - }{% + \ClassError{\KOMAClassName}{% inconsistent hpos options% - }{% + }{% You said `#2' as position option. But you have to\MessageBreak use only one from `l', `r' or `c' not two of these.\MessageBreak If you'll continue only first hpos option will be - used}% - \fi}} + used% + }% + \fi + }% +} \newcommand*{\set@preamble@vpos}[2]{% \@ifundefined{prbml@vpos}{% \def\prmbl@vpos{#1}% - }{% + }{% \ifnum \prmbl@vpos=0\relax\else% - \ClassError{% - scrreprt% - }{% + \ClassError{\KOMAClassName}{% inconsistent vpos options% - }{% + }{% You said `#2' as position option. But you have to\MessageBreak use only one from `o' or `u' not two of these.\MessageBreak If you'll continue only first vpos option will be - used}% - \fi}} + used% + }% + \fi + }% +} +\newcommand*{\setchapterpreamble}{\set@preamble{chapter}} +\newcommand*{\chapter@u@preamble}{} +\let\chapter@u@preamble\relax +\newcommand*{\chapter@o@preamble}{} +\let\chapter@o@preamble\relax +\newcommand*{\setpartpreamble}{\set@preamble{part}} +\newcommand*{\part@preamble@u}{} +\let\part@preamble@u\relax +\newcommand*{\part@preamble@o}{} +\let\part@preamble@o\relax +\newcommand*\l@part[2]{% + \ifnum \c@tocdepth >-2\relax + \addpenalty{-\@highpenalty}% + \addvspace{2.25em \@plus\p@}% + \setlength{\@tempdima}{2em}% + \if@tocleft + \ifx\toc@l@number\@empty\else + \setlength\@tempdima{0\toc@l@number}% + \fi + \fi + \begingroup + \parindent \z@ \rightskip \@pnumwidth + \parfillskip -\@pnumwidth + \leavevmode\sectfont\large + \advance\leftskip\@tempdima + \hskip -\leftskip + #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par + \penalty\@highpenalty + \endgroup + \fi +} +\newcommand*\l@chapter[2]{% + \ifnum \c@tocdepth >\m@ne + \addpenalty{-\@highpenalty}% + \vskip 1.0em \@plus\p@ + \setlength\@tempdima{1.5em}% + \if@tocleft + \ifx\toc@l@number\@empty\else + \setlength\@tempdima{0\toc@l@number}% + \fi + \fi + \begingroup + \parindent \z@ \rightskip \@pnumwidth + \parfillskip -\@pnumwidth + \leavevmode \sectfont + \advance\leftskip\@tempdima + \hskip -\leftskip + #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par + \penalty\@highpenalty + \endgroup + \fi +} +\newcommand*\l@section{\@dottedtocline{1}{1.5em}{2.3em}} +\newcommand*\l@subsection{\@dottedtocline{2}{3.8em}{3.2em}} +\newcommand*\l@subsubsection{\@dottedtocline{3}{7.0em}{4.1em}} +\newcommand*\l@paragraph{\@dottedtocline{4}{10em}{5em}} +\newcommand*\l@subparagraph{\@dottedtocline{5}{12em}{6em}} +%%% From File: scrkmisc.dtx +\newif\if@restonecol \newcommand{\dictum}[2][]{\par% \begingroup \raggeddictum\parbox{\dictumwidth}{% @@ -1101,291 +1799,43 @@ size% \newcommand*{\dictumauthorformat}[1]{(#1)} \newcommand*{\raggeddictumtext}{\raggedright} \newcommand*{\raggeddictumauthor}{\raggedleft} -\newcommand*{\@dictumfont}{\normalfont\normalcolor\sffamily\small} -\newcommand*{\@dictumauthorfont}{\itshape} -\newcommand*{\scr@fnt@dictumtext}{\@dictumfont} -\newcommand*{\scr@fnt@dictumauthor}{\@dictumauthorfont} -\newcommand*{\scr@fnt@instead@dictum}{dictumtext} -\newcommand*{\setchapterpreamble}{\set@preamble{chapter}} -\newcommand*{\chapter@u@preamble}{} -\let\chapter@u@preamble\relax -\newcommand*{\chapter@o@preamble}{} -\let\chapter@o@preamble\relax -\newcommand*{\setpartpreamble}{\set@preamble{part}} -\newcommand*{\part@preamble@u}{} -\let\part@preamble@u\relax -\newcommand*{\part@preamble@o}{} -\let\part@preamble@o\relax -\newcommand*\addsec{\secdef\@addsec\@saddsec} -\newcommand*{\@addsec}{} -\def\@addsec[#1]#2{\section*{#2}\addcontentsline{toc}{section}{#1} - \if@twoside\ifx\@mkboth\markboth\markright{#1}\fi\fi} -\newcommand*{\@saddsec}[1]{\section*{#1}\@mkboth{}{}} -\newcommand\addchap{\if@openright\cleardoublepage\else\clearpage\fi - \thispagestyle{\chapterpagestyle}% - \global\@topnum\z@ - \@afterindentfalse - \secdef\@addchap\@saddchap% -} -\newcommand*{\@addchap}{} -\def\@addchap[#1]#2{\@schapter{#2}% - \addcontentsline{toc}{chapter}{#1}% - \if@twoside\@mkboth{#1}{}\else\@mkboth{}{#1}\fi} -\newcommand*{\@saddchap}[1]{\@schapter{#1}\@mkboth{}{}} -\newcommand\section{\@startsection{section}{1}{\z@}% - {-3.5ex \@plus -1ex \@minus -.2ex}% - {2.3ex \@plus.2ex}% - {\setlength{\parfillskip}{\z@ \@plus 1fil}% - \raggedsection\normalfont\sectfont\nobreak\size@section\nobreak}} -\newcommand\subsection{\@startsection{subsection}{2}{\z@}% - {-3.25ex\@plus -1ex \@minus -.2ex}% - {1.5ex \@plus .2ex}% - {\setlength{\parfillskip}{\z@ \@plus 1fil}% - \raggedsection\normalfont\sectfont\nobreak\size@subsection\nobreak}} -\newcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}% - {-3.25ex\@plus -1ex \@minus -.2ex}% - {1.5ex \@plus .2ex}% - {\setlength{\parfillskip}{\z@ \@plus 1fil}% - \raggedsection\normalfont\sectfont\nobreak\size@subsubsection\nobreak}} -\newcommand\paragraph{\@startsection{paragraph}{4}{\z@}% - {3.25ex \@plus1ex \@minus.2ex}% - {-1em}% - {\setlength{\parfillskip}{\z@ \@plus 1fil}% - \raggedsection\normalfont\sectfont\nobreak\size@paragraph\nobreak}} -\newcommand\subparagraph{\@startsection{subparagraph}{5}{\parindent}% - {3.25ex \@plus1ex \@minus .2ex}% - {-1em}% - {\setlength{\parfillskip}{\z@ \@plus 1fil}% - \raggedsection\normalfont\sectfont\nobreak\size@subparagraph\nobreak}} -\newcommand\minisec[1]{\@afterindentfalse \vskip 1.5ex - {\parindent \z@ - \raggedsection\normalfont\sectfont\nobreak#1\par\nobreak}\nobreak - \@afterheading} -\let\raggedsection\raggedright -\setlength\arraycolsep{5\p@} -\setlength\tabcolsep{6\p@} -\setlength\arrayrulewidth{.4\p@} -\setlength\doublerulesep{2\p@} -\setlength\tabbingsep{\labelsep} +\newkomafont{dictum}{\normalfont\normalcolor\sffamily\small} +\newkomafont{dictumauthor}{\itshape} +\aliaskomafont{dictumtext}{dictum} \setlength{\skip\@mpfootins}{\skip\footins} \setlength\fboxsep{3\p@} \setlength\fboxrule{.4\p@} \@addtoreset{equation}{chapter} \renewcommand*\theequation{% \thechapter.% - \@arabic\c@equation} -\if@twocolumn - \setlength{\leftmargini}{2em} -\else - \setlength{\leftmargini}{2.5em} -\fi -\setlength{\leftmarginii}{2.2em} -\setlength{\leftmarginiii}{1.87em} -\setlength{\leftmarginiv}{1.7em} -\if@twocolumn - \setlength{\leftmarginv}{.5em} - \setlength{\leftmarginvi}{.5em} -\else - \setlength{\leftmarginv}{1em} - \setlength{\leftmarginvi}{1em} -\fi -\setlength{\leftmargin}{\leftmargini} -\setlength{\labelsep}{.5em} -\setlength{\labelwidth}{\leftmargini} -\addtolength{\labelwidth}{-\labelsep} -\@beginparpenalty=-\@lowpenalty -\@endparpenalty =-\@lowpenalty -\@itempenalty =-\@lowpenalty -\renewcommand*\theenumi{\@arabic\c@enumi} -\renewcommand*\theenumii{\@alph\c@enumii} -\renewcommand*\theenumiii{\@roman\c@enumiii} -\renewcommand*\theenumiv{\@Alph\c@enumiv} -\newcommand*\labelenumi{\theenumi.} -\newcommand*\labelenumii{\theenumii)} -\newcommand*\labelenumiii{\theenumiii.} -\newcommand*\labelenumiv{\theenumiv.} -\renewcommand*\p@enumii{\theenumi} -\renewcommand*\p@enumiii{\p@enumii(\theenumii)} -\renewcommand*\p@enumiv{\p@enumiii\theenumiii} -\newcommand*\labelitemi{\textbullet} -\newcommand*\labelitemii{\normalfont\bfseries\textendash} -\newcommand*\labelitemiii{\textasteriskcentered} -\newcommand*\labelitemiv{\textperiodcentered} -\newenvironment{description} - {\list{}{\labelwidth\z@ \itemindent-\leftmargin - \let\makelabel\descriptionlabel}} - {\endlist} -\newcommand*{\descriptionlabel}[1]{\hspace\labelsep - \descfont #1} -\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{verse} - {\let\\=\@centercr - \list{}{\itemsep \z@ - \itemindent -1.5em% - \listparindent\itemindent - \rightmargin \leftmargin - \advance\leftmargin 1.5em}% - \item\relax} - {\endlist} -\newenvironment{quotation} - {\list{}{\listparindent 1em% - \itemindent \listparindent - \rightmargin \leftmargin - \parsep \z@ \@plus\p@}% - \item\relax} - {\endlist} -\newenvironment{quote} - {\list{}{\rightmargin\leftmargin}% - \item\relax} - {\endlist} -\newenvironment{addmargin}{% - \@tempswafalse\@addmargin - }{\endlist} -\newenvironment{addmargin*}{% - \@tempswafalse - \if@twoside\ifthispageodd{}{\@tempswatrue}\fi - \@addmargin - }{\endlist} -\newcommand*{\@addmargin}[2][\@tempa]{% - \@tempcnta=\@listdepth - \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@} - \@listdepth=\@tempcnta% - }% - \item[]% - } -\if@titlepage - \newenvironment{abstract}{% - \titlepage - \null\vfil - \@beginparpenalty\@lowpenalty - \if@abstrt - \begin{center} - \normalfont\sectfont\nobreak\abstractname - \@endparpenalty\@M - \end{center}\fi} - {\par\vfil\null\endtitlepage} -\else - \newenvironment{abstract}{% - \if@twocolumn\if@abstrt - \addsec*{\abstractname}\fi% - \else - \if@abstrt - \small - \begin{center}% - {\normalfont\sectfont\nobreak\abstractname - \vspace{-.5em}\vspace{\z@}}% - \end{center}\fi% - \quotation - \fi} - {\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 - } -\newcommand\marginline[1]{\marginpar[\raggedleft{#1}]{\raggedright #1}} -\newcommand*\appendix{\par% - \setcounter{chapter}{0}% - \setcounter{section}{0}% - \renewcommand*\@chapapp{\appendixname}% - \renewcommand*\thechapter{\@Alph\c@chapter}% - \@ifundefined{appendixmore}{}{\appendixmore}} -\newcounter{figure}[chapter] -\renewcommand*\thefigure{% - \thechapter.% - \@arabic\c@figure} -\newcommand*{\fps@figure}{tbp} -\newcommand*{\ftype@figure}{1} -\newcommand*{\ext@figure}{lof} -\newcommand*{\fnum@figure}{\figureformat} -\newenvironment{figure} - {\let\caption\captionbelow\@float{figure}} - {\end@float} -\newenvironment{figure*} - {\let\caption\captionbelow\@dblfloat{figure}} - {\end@dblfloat} -\newcounter{table}[chapter] -\renewcommand*\thetable{% - \thechapter.% - \@arabic\c@table} -\newcommand*{\fps@table}{tbp} -\newcommand*{\ftype@table}{2} -\newcommand*{\ext@table}{lot} -\newcommand*{\fnum@table}{\tableformat} -\newenvironment{table} - {\if@tablecaptionabove\let\caption\captionabove% - \else\let\caption\captionbelow\fi\@float{table}} - {\end@float} -\newenvironment{table*} - {\if@tablecaptionabove\let\caption\captionabove% - \else\let\caption\captionbelow\fi\@dblfloat{table}} - {\end@dblfloat} -\newcommand*{\new@tpo@label}[2]{% - \expandafter\gdef\csname scr@tpo@#1\endcsname{#2}% - } -\newcommand*{\ref@tpo@label}[1]{% - \expandafter\ifx\csname scr@tpo@#1\endcsname\relax\value{page}% - \else\csname scr@tpo@#1\endcsname\fi} + \@arabic\c@equation +} +\newcommand*{\new@tpo@label}{\@newl@bel{tpo}} \newcommand*{\scr@tpo}{0} \newcommand*{\is@thispageodd}{% - \begingroup% - \@tempcnta=\scr@tpo% - \advance\@tempcnta by\@ne% + \@bsphack + \begingroup + \@tempcnta=\scr@tpo + \advance\@tempcnta by\@ne \xdef\scr@tpo{\the\@tempcnta}% - \@bsphack - \protected@write\@auxout{}{% - \string\new@tpo@label{\scr@tpo}{\noexpand\the\value{page}}}% - \@esphack - \count@\ref@tpo@label{\scr@tpo}\relax - \ifodd\count@ + \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 + \ClassWarning{\KOMAClassName}{% + 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 } -\AtEndDocument{% - \if@filesw\immediate\write\@auxout{% - \string\gdef\string\scr@tpo@lst{\scr@tpo}}\fi% - \ifx\scr@tpo@lst\scr@tpo\else\ifnum \scr@tpo>0 - \ClassWarningNoLine{% - scrreprt% - }{Rerun to get odd- an even-page-stuff right}% - \fi\fi - } \newif\ifthispagewasodd \newcommand{\ifthispageodd}{% \is@thispageodd @@ -1395,10 +1845,167 @@ size% \expandafter\@secondoftwo \fi } -\newlength\abovecaptionskip -\newlength\belowcaptionskip -\setlength\abovecaptionskip{10\p@} -\setlength\belowcaptionskip{0\p@} +\DeclareRobustCommand*\textsubscript[1]{% + \@textsubscript{\selectfont#1}% +} +\newcommand{\@textsubscript}[1]{% + {\m@th\ensuremath{_{\mbox{\fontsize\sf@size\z@#1}}}}% +} +%%% From File: scrkpage.dtx +\newcommand*{\set@tempdima@hw}{% + \setlength{\@tempdima}{\textwidth}% + \if@mincl + \addtolength{\@tempdima}{\marginparsep}% + \addtolength{\@tempdima}{\marginparwidth}% + \fi +} +\newcommand*\pnumfont{\normalfont\normalcolor} +\newcommand*\headfont{\normalfont\normalcolor\slshape} +\newcommand*{\scr@fnt@pagenumber}{\pnumfont} +\aliaskomafont{pagination}{pagenumber} +\newcommand*{\scr@fnt@pagehead}{\headfont} +\newcommand*{\scr@fnt@wrn@pagehead}[1]{% + font selection of elements `pagehead' and `pagefoot'\MessageBreak + changed, because they are same% +} +\aliaskomafont{pagefoot}{pagehead} +\newcommand*{\pagemark}{{\usekomafont{pagenumber}% + \thepage}} +\if@twoside + \renewcommand*{\ps@plain}{% + \renewcommand*{\@evenhead}{}% + \renewcommand*{\@oddhead}{}% + \renewcommand*{\@evenfoot}{% + \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\pagemark\hfil}}}}}% + \renewcommand*{\@oddfoot}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\hfil\pagemark}}}}\hss}% + }% + \newcommand*{\ps@headings}{\let\@mkboth\markboth + \renewcommand*{\@evenhead}{% + \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% + \hb@xt@ \@tempdima{{\headfont\strut\leftmark\hfil}}% + \if@hsl \vskip 1.5\p@ \hrule \fi}}}% + \renewcommand*{\@oddhead}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \hb@xt@ \@tempdima{{\headfont\hfil\strut\rightmark}}% + \if@hsl \vskip 1.5\p@ \hrule \fi}}\hss}% + \renewcommand*{\@evenfoot}{% + \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\pagemark\hfil}}}}}% + \renewcommand*{\@oddfoot}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\hfil\pagemark}}}}\hss}% + \renewcommand*{\chaptermark}[1]{% + \markboth{\ifnum \c@secnumdepth >\m@ne + \chaptermarkformat + \fi + ##1}{}% + }% + \renewcommand*{\sectionmark}[1]{% + \markright{\ifnum \c@secnumdepth >\z@ + \sectionmarkformat\fi + ##1}}% + }% + \newcommand*{\ps@myheadings}{\let\@mkboth\@gobbletwo + \renewcommand*{\@evenhead}{% + \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% + \hb@xt@ \@tempdima{{\headfont\strut\leftmark\hfil}}% + \if@hsl \vskip 1.5\p@ \hrule \fi}}}% + \renewcommand*{\@oddhead}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \hb@xt@ \@tempdima{{\headfont\hfil\strut\rightmark}}% + \if@hsl \vskip 1.5\p@ \hrule \fi}}\hss}% + \renewcommand*{\@evenfoot}{% + \set@tempdima@hw\hss\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\pagemark\hfil}}}}}% + \renewcommand*{\@oddfoot}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\hfil\pagemark}}}}\hss}% + \renewcommand*{\chaptermark}[1]{}% + \renewcommand*{\sectionmark}[1]{}% + } +\else + \renewcommand*{\ps@plain}{% + \renewcommand*{\@oddhead}{% + }% + \let\@evenhead\@oddhead% + \renewcommand*{\@oddfoot}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\hfil\pagemark\hfil}}}}\hss + }% + \let\@evenfoot\@oddfoot + } + \newcommand*{\ps@headings}{\let\@mkboth\markboth + \renewcommand*{\@oddhead}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \hb@xt@ \@tempdima{{\headfont\hfil\strut\rightmark\hfil}} + \if@hsl \vskip 1.5\p@ \hrule \fi}}\hss + }% + \let\@evenhead\@oddhead + \renewcommand*{\@oddfoot}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\hfil\pagemark\hfil}}}\hss}}% + \renewcommand*{\sectionmark}[1]{}% + \renewcommand*{\chaptermark}[1]{% + \markright{\ifnum \c@secnumdepth >\m@ne + \chaptermarkformat + \fi + ##1}}% + \let\@evenfoot\@oddfoot + } + \newcommand*{\ps@myheadings}{% + \let\@mkboth\@gobbletwo + \renewcommand*{\@evenhead}{}% + \renewcommand*{\@oddhead}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \hb@xt@ \@tempdima{{\headfont\hfil\strut\rightmark\hfil}}% + \if@hsl \vskip 1.5\p@ \hrule \fi}}\hss}% + \renewcommand*{\@evenfoot}{}% + \renewcommand*{\@oddfoot}{% + \set@tempdima@hw\hb@xt@ \@tempdima{\vbox{% + \if@fsl \hrule \vskip 3\p@ \fi + \hb@xt@ \@tempdima{{\hfil\pagemark\hfil}}}}\hss}% + \renewcommand*{\chaptermark}[1]{}% + \renewcommand*{\sectionmark}[1]{}% + } +\fi +\newcommand*{\titlepagestyle}{plain} +\newcommand*{\partpagestyle}{plain} +\newcommand*{\chapterpagestyle}{plain} +\newcommand*{\indexpagestyle}{plain} +\pagestyle{plain} +\pagenumbering{arabic} +\if@twoside + \flushbottom +\else + \raggedbottom +\fi +\if@twocolumn + \twocolumn + \sloppy + \flushbottom +\else + \onecolumn +\fi +%%% From File: scrkfloa.dtx +\newcommand\marginline[1]{% + \marginpar[\raggedleft{#1}]{\raggedright #1}% +} +\newlength{\abovecaptionskip} +\newlength{\belowcaptionskip} +\setlength{\abovecaptionskip}{10\p@} +\setlength{\belowcaptionskip}{0\p@} +\newcommand*{\captionformat}{:\ } \newif\if@captionabove\@captionabovefalse \newcommand{\scr@caption}{} \AtBeginDocument{\let\scr@caption\caption} @@ -1416,14 +2023,14 @@ size% \@ifnextchar [%] {\@@captionbeside[{#1}]{#2}} {\c@pti@nb@sid@[{#1}]{#2}}% - } +} \newcommand*{\@@captionbeside}{} \long\def\@@captionbeside[#1]#2[#3]{% \def\scap@pos{#3}% \@ifnextchar [%] {\@@@captionbeside[{#1}]{#2}} {\c@pti@nb@sid@[{#1}]{#2}}% - } +} \newcommand*{\@@@captionbeside}{} \long\def\@@@captionbeside[#1]#2[#3]{% \def\scap@width{#3}% @@ -1434,38 +2041,36 @@ size% \setlength{\@tempdima}{-.5\@tempdima}% \edef\scap@move{\the\@tempdima}% \c@pti@nb@sid@[{#1}]{#2}}% - } +} \newcommand*{\@@@@captionbeside}{} \long\def\@@@@captionbeside[#1]#2[#3]{% \def\scap@move{#3}% \@ifstar {\scap@alttrue\c@pti@nb@sid@[{#1}]{#2}} {\scap@altfalse\c@pti@nb@sid@[{#1}]{#2}}% - } +} \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}}% \begin{lrbox}{\c@pti@nb@sid@b@x}% - } +} \newenvironment*{captionbeside}{% \@dblarg\@captionbeside% - }{% +}{% \end{lrbox}% \settowidth{\@tempdima}{\usebox\c@pti@nb@sid@b@x}% \setlength{\@tempdimb}{\scap@width}% \addtolength{\@tempdimb}{-\@tempdima}% \addtolength{\@tempdimb}{-\columnsep}% \ifdim \@tempdimb<2em - \ClassWarning{% - scrreprt% - }{% + \ClassWarning{\KOMAClassName}{% caption beside will be very, very small.\MessageBreak In most cases this will result in overfull and underfull\MessageBreak \string\hbox\space messages% - }% - \fi% + }% + \fi \onelinecaptionsfalse \setcapwidth[r]{\@tempdimb}% \let\@tempa\scap@pos @@ -1484,69 +2089,87 @@ size% }% \fi \hspace*{\@tempdimc}% - \if l\@tempa% + \if l\@tempa \rlap{% \parbox[\scap@valign]{\@tempdimb}{\scap@caption \global\let\scap@currentlabel\@currentlabel}% - \nobreak\hskip\columnsep% + \nobreak\hskip\columnsep \parbox[\scap@valign]{\wd\c@pti@nb@sid@b@x}{\usebox\c@pti@nb@sid@b@x}% - }% + }% \else \rlap{% \parbox[\scap@valign]{\wd\c@pti@nb@sid@b@x}{\usebox\c@pti@nb@sid@b@x}% - \nobreak\hskip\columnsep% + \nobreak\hskip\columnsep \parbox[\scap@valign]{\@tempdimb}{\scap@caption \global\let\scap@currentlabel\@currentlabel}% - }% + }% \fi \par - \aftergroup\let\aftergroup\@currentlabel\aftergroup\scap@currentlabel - } + \aftergroup\let\aftergroup\@currentlabel + \aftergroup\scap@currentlabel +} +\newcommand*\capfont{\normalfont\normalcolor} +\newcommand*\caplabelfont{\normalfont\normalcolor} +\newcommand*{\scr@fnt@caption}{\capfont} +\newcommand*{\scr@fnt@captionlabel}{\caplabelfont} \newif\ifdofullc@p \dofullc@ptrue \newif\if@capbreak\@capbreakfalse \newcommand*{\setcapindent}{\@ifstar{\@@setcapindent}{\@setcapindent}} -\newcommand*{\@setcapindent}[1]{ +\newcommand*{\@setcapindent}[1]{% \setlength{\@tempdima}{#1}% - \ifdim\@tempdima>\hsize\addtolength{\@tempdima}{-\hsize}\@capbreaktrue - \else\@capbreakfalse\fi - \edef\cap@indent{\the\@tempdima} + \ifdim\@tempdima>\hsize + \addtolength{\@tempdima}{-\hsize}\@capbreaktrue + \else + \@capbreakfalse + \fi + \edef\cap@indent{\the\@tempdima}% \dofullc@pfalse } -\newcommand*{\@@setcapindent}[1]{ +\newcommand*{\@@setcapindent}[1]{% \setlength{\@tempdima}{#1}% - \edef\cap@indent{\the\@tempdima} + \edef\cap@indent{\the\@tempdima}% \dofullc@pfalse\@capbreaktrue } \AfterPackage{caption2}{% \renewcommand*{\setcapindent}{% - \ClassWarning{% - scrreprt% - }{% + \ClassWarning{\KOMAClassName}{% You're using package caption2.\MessageBreak Because of this you should also use \string\captionstyle\space and\MessageBreak set length \string\captionindent\space instead if using\MessageBreak \string\setcapindent - } + }% \captionstyle{indent}% - \@ifstar{\setlength{\captionindent}}{\setlength{\captionindent}}}} + \@ifstar{\setlength{\captionindent}}{\setlength{\captionindent}}% + }% +} \newcommand*{\setcaphanging}{\dofullc@ptrue\@capbreakfalse} \AfterPackage{caption2}{% \renewcommand*{\setcaphanging}{% - \ClassWarning{% - scrreprt% - }{% + \ClassWarning{\KOMAClassName}{% You're using package caption2.\MessageBreak - Because of this you should also use \string\captionstyle\MessageBreak + Because of this you should also use + \string\captionstyle\MessageBreak instead of \string\setcaphang - } - \captionstyle{hang}}} + } + \captionstyle{hang}% + }% +} \newcommand{\@makecaption}[2]{% - \if@captionabove\vskip\belowcaptionskip\else\vskip\abovecaptionskip\fi + \if@captionabove + \vskip\belowcaptionskip + \else + \vskip\abovecaptionskip + \fi \@@makecaption\@firstofone{#1}{#2}% - \if@captionabove\vskip\abovecaptionskip\else\vskip\belowcaptionskip\fi} + \if@captionabove + \vskip\abovecaptionskip + \else + \vskip\belowcaptionskip + \fi +} \newcommand*{\cap@width}{\hsize} \newcommand*{\cap@left}{\hfill} \newcommand*{\cap@right}{\hfill} @@ -1554,19 +2177,19 @@ size% \begingroup% \setlength{\@tempdima}{#2}% \edef\@tempa{\endgroup\def\noexpand\cap@width{\the\@tempdima}}% - \@tempa% + \@tempa \begingroup - \expandafter\def\expandafter\@tempa\expandafter{#1}% + \edef\@tempa{#1}% \def\@tempb{c}\ifx\@tempa\@tempb - \endgroup% + \endgroup \def\cap@margin{\let\cap@left=\hfill\let\cap@right=\hfill}% \else \def\@tempb{l}\ifx\@tempa\@tempb - \endgroup% + \endgroup \def\cap@margin{\let\cap@left=\relax\let\cap@right\hfill}% \else \def\@tempb{r}\ifx\@tempa\@tempb - \endgroup% + \endgroup \def\cap@margin{\let\cap@left=\hfill\let\cap@right=\relax}% \else \def\@tempb{i}\ifx\@tempa\@tempb @@ -1596,48 +2219,46 @@ size% }% \else \ifx \@tempa\@empty\else - \ClassError{% - scrreprt% - }{% + \ClassError{\KOMAClassName}{% unknown optional position argument% - }{% + }{% You've used `#1' as position argument at \string\setcaptionwidth,\MessageBreak but only ONE of `c', `l', `r', `i`, `o` ist allowed.\MessageBreak Argument will be ignored, if you'll continue.% - }% - \fi% - \endgroup% - \fi\fi\fi\fi\fi% - } + }% + \fi + \endgroup + \fi\fi\fi\fi\fi +} \AfterPackage{caption2}{% \renewcommand*{\setcapwidth}[2][]{% - \ClassWarning{% - scrbook% - }{% + \ClassWarning{\KOMAClassName}{% 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 - } - \setcaptionwidth{#2}}}% + }% + \setcaptionwidth{#2}% + }% +}% \newcommand*{\cap@margin}{} \let\cap@margin=\relax% \newcommand*{\setcapmargin}{\@ifstar{\@setcapmargin}{\@@setcapmargin}} \newcommand*{\@setcapmargin}[2][\@tempdimb]{% \def\cap@margin{% - \onelinecaptionsfalse% - \begingroup% + \onelinecaptionsfalse + \begingroup \setlength{\@tempdima}{\hsize}% \setlength{\@tempdimb}{#2}% \addtolength{\@tempdima}{-\@tempdimb}% \setlength{\@tempdimc}{#1}% \addtolength{\@tempdima}{-\@tempdimc}% - \edef\@tempa{\endgroup% + \edef\@tempa{\endgroup \def\noexpand\cap@width{\the\@tempdima}% - \noexpand\if@twoside% + \noexpand\if@twoside \noexpand\ifthispageodd{% \def\noexpand\cap@left{\noexpand\hspace*{\the\@tempdimc}}% \def\noexpand\cap@right{\noexpand\hspace*{\the\@tempdimb}}% @@ -1645,99 +2266,116 @@ size% \def\noexpand\cap@right{\noexpand\hspace*{\the\@tempdimc}}% \def\noexpand\cap@left{\noexpand\hspace*{\the\@tempdimb}}% }% - \noexpand\else% + \noexpand\else \def\noexpand\cap@left{\noexpand\hspace*{\the\@tempdimc}}% \def\noexpand\cap@right{\noexpand\hspace*{\the\@tempdimb}}% - \noexpand\fi} - \@tempa}% - } + \noexpand\fi + }% + \@tempa + }% +} \newcommand*{\@@setcapmargin}[2][\@tempdimb]{% \def\cap@margin{% - \onelinecaptionsfalse% - \begingroup% + \onelinecaptionsfalse + \begingroup \setlength{\@tempdima}{\hsize}% \setlength{\@tempdimb}{#2}% \addtolength{\@tempdima}{-\@tempdimb}% \setlength{\@tempdimc}{#1}% \addtolength{\@tempdima}{-\@tempdimc}% - \edef\@tempa{\endgroup% + \edef\@tempa{\endgroup \def\noexpand\cap@width{\the\@tempdima}% \def\noexpand\cap@left{\noexpand\hspace*{\the\@tempdimc}}% - \def\noexpand\cap@right{\noexpand\hspace*{\the\@tempdimb}}}% - \@tempa}% - } + \def\noexpand\cap@right{\noexpand\hspace*{\the\@tempdimb}}% + }% + \@tempa + }% +} \AfterPackage{caption2}{% \renewcommand*{\@setcapmargin}[2][\@tempdimb]{% \setlength{\@tempdimb}{#2}% \setlength{\@tempdima}{#1}% \ifdim\@tempdima\@tempdimb\else - \ClassWarning{% - scrbook% - }{% + \ClassWarning{\KOMAClassName}{% Can set only centered caption!\MessageBreak You're using package caption2.\MessageBreak Because of this you should also use \string\setcaptionmargin\MessageBreak instead of \string\setcapmargin - } + }% \fi \addtolength{\@tempdimb}{\@tempdimb}% - \setcaptionmargin{.5\@tempdimb}} + \setcaptionmargin{.5\@tempdimb}}% \let\@@setcapmargin=\@setcapmargin - } +} \newcommand{\@@makecaption}[3]{% - \cap@margin% - \ifonelinecaptions% + \cap@margin + \ifonelinecaptions \@tempcnta=\value{mpfootnote}\@tempcntb=\value{footnote}% \let\scr@tmp@footnotetext=\@footnotetext \let\@footnotetext=\@gobble \sbox\@tempboxa{% - {\capfont#1{{\caplabelfont#2\captionformat}}% + {\capfont\strut\ignorespaces + #1{{\caplabelfont#2\captionformat}}% #3}% - }% + }% \let\@footnotetext=\scr@tmp@footnotetext \let\scr@tmp@footnotetext=\undefined - \setcounter{footnote}{\@tempcntb}\setcounter{mpfootnote}{\@tempcnta}% + \setcounter{footnote}{\@tempcntb}% + \setcounter{mpfootnote}{\@tempcnta}% \else \sbox\@tempboxa{\hspace*{2\cap@width}}% \fi \begingroup% - \setlength{\@tempdima}{\wd\@tempboxa}% \setlength{\@tempdima}{\cap@width}% - \ifdim \wd\@tempboxa >\@tempdima% - \strut\cap@left% - \vtop{\hsize=\cap@width% - \ifdofullc@p - {\capfont\@hangfrom{#1{{\caplabelfont#2\captionformat}}}{#3\par}} - \else% - \ifdim\cap@indent<\z@% - {\capfont#1{{\caplabelfont #2\captionformat\par}}\noindent% - \hspace*{-\cap@indent}#3\par} + \ifdim \wd\@tempboxa >\@tempdima + \hb@xt@\hsize{% + \setbox\@tempboxa\vbox{\hsize=\cap@width + \ifdofullc@p + {\capfont\@hangfrom{\strut\ignorespaces + #1{{\caplabelfont#2\captionformat}}}% + {#3\par}}% \else% - \if@capbreak - {\capfont#1{{\caplabelfont #2\captionformat\par}}\noindent% - \@hangfrom{\hspace*{\cap@indent}}{#3\par}} - \else - {\capfont\@hangfrom{\hspace*{\cap@indent}}% - {\hspace{-\cap@indent}#1% - {{\caplabelfont#2\captionformat}}#3\par}} + \ifdim\cap@indent<\z@ + {\capfont\strut\ignorespaces + #1{{\caplabelfont #2\captionformat\par}}% + \noindent\hspace*{-\cap@indent}#3\par}% + \else% + \if@capbreak + {\capfont\strut\ignorespaces + #1{{\caplabelfont #2\captionformat\par}}% + \noindent\@hangfrom{\hspace*{\cap@indent}}{#3\par}}% + \else + {\capfont\@hangfrom{\strut\hspace*{\cap@indent}}% + {\hspace{-\cap@indent}\ignorespaces#1% + {{\caplabelfont#2\captionformat}}#3\par}}% + \fi \fi \fi - \fi}% - \cap@right\strut% + }% + \setlength{\@tempdima}{\ht\@tempboxa}% + \addtolength{\@tempdima}{\dp\@tempboxa}% + \addtolength{\@tempdima}{-\ht\strutbox}% + \ht\@tempboxa\ht\strutbox + \dp\@tempboxa\@tempdima + \strut\cap@left + \box\@tempboxa + \cap@right\strut + }% \else \global \@minipagefalse \sbox\@tempboxa{% - {\capfont#1{{\caplabelfont#2\captionformat}}% + {\capfont\strut\ignorespaces + #1{{\caplabelfont#2\captionformat}}% #3}% }% - \hb@xt@\hsize{\cap@left\box\@tempboxa\cap@right}% - \fi% - \endgroup} + \hb@xt@\hsize{\strut\cap@left\box\@tempboxa\cap@right\strut}% + \fi + \endgroup +} \AfterPackage{longtable}{% - \@ifpackageloaded{caption2}{\@komalongtablefalse% - \ClassWarning{% - scrreprt}{% + \@ifpackageloaded{caption2}{\@komalongtablefalse + \ClassWarning{\KOMAClassName}{% you've loaded package caption2 before package\MessageBreak longtable!\MessageBreak Because of this package caption2 isn't able to @@ -1745,10 +2383,11 @@ size% \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 caption2 after + I think, you should load package caption after package\MessageBreak - longtable% - }}{} + longtable and use the new interface% + }% + }{}% \if@komalongtable \renewcommand{\LT@makecaption}[3]{% \noalign{% @@ -1773,7 +2412,7 @@ size% }% }% \newcommand*{\scr@LT@array}{}% - \let\scr@LT@array=\LT@array% + \let\scr@LT@array=\LT@array \renewcommand*{\LT@array}{% \let\scr@caption=\LT@caption \def\captionabove{\noalign{\global\@captionabovetrue}% @@ -1785,200 +2424,184 @@ size% \else \let\LT@caption=\captionbelow \fi - \scr@LT@array} - \ClassInfo{% - scrreprt}{% - longtable captions redefined} + \scr@LT@array + }% + \ClassInfo{\KOMAClassName}{% + longtable captions redefined% + }% \fi - } +} \newcommand*{\fs@komaabove}{% \let\@fs@capt\floatc@komascript \let\@fs@pre\@empty - \def\@fs@mid{\vskip\abovecaptionskip} + \def\@fs@mid{\vskip\abovecaptionskip}% \let\@fs@post\@empty \let\@fs@iftopcapt\iftrue} \newcommand*{\fs@komabelow}{% \let\@fs@capt\floatc@komascript \let\@fs@pre\@empty - \def\@fs@mid{\vskip\abovecaptionskip} + \def\@fs@mid{\vskip\abovecaptionskip}% \let\@fs@post\@empty \let\@fs@iftopcapt\iffalse} \newcommand{\floatc@komascript}{\@@makecaption\@firstofone} -\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm} -\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf} -\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt} -\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf} -\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit} -\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl} -\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc} -\DeclareOldFontCommand{\sfb}{\normalfont\sffamily\bfseries}{\@nomath\sfb} -\DeclareRobustCommand*{\cal}{\@fontswitch\relax\mathcal} -\DeclareRobustCommand*{\mit}{\@fontswitch\relax\mathnormal} -\newcommand*\descfont{\sffamily\bfseries} -\newcommand*\sectfont{\normalcolor\sffamily\bfseries} -\newcommand*\pnumfont{\normalfont\normalcolor} -\newcommand*\headfont{\normalfont\normalcolor\slshape} -\newcommand*\capfont{\normalfont\normalcolor} -\newcommand*\caplabelfont{\normalfont\normalcolor} -\newcommand*\titlefont{\sectfont} -\newcommand*{\setkomafont}[2]{% - \@ifundefined{scr@fnt@#1}{% - \@ifundefined{scr@fnt@instead@#1}{% - \ClassError{% - scrreprt% - }{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} - }{% - \ClassError{% - scrreprt% - }{font of element `#1' can't be set}{% - You've told me to redefine the font selection of the element,% - \MessageBreak% - but the element does not use a special font - selection. The\MessageBreak - The font of `#1' may be changed with element `\csname - scr@fnt@instead@#1\endcsname'} - }% - }{% - \expandafter\expandafter\expandafter\renewcommand% - \csname scr@fnt@#1\endcsname{#2}% - \@ifundefined{scr@fnt@wrn@#1}{}{% - \ClassWarning{% - scrreprt% - }{\csname scr@fnt@wrn@#1\endcsname{#1}} - } - } +\setcounter{topnumber}{2} +\renewcommand*\topfraction{.7} +\setcounter{bottomnumber}{1} +\renewcommand*\bottomfraction{.3} +\setcounter{totalnumber}{3} +\renewcommand*\textfraction{.2} +\renewcommand*\floatpagefraction{.5} +\setcounter{dbltopnumber}{2} +\renewcommand*\dbltopfraction{.7} +\renewcommand*\dblfloatpagefraction{.5} +\newcommand*\figurename{Figure} +\newcommand*\tablename{Table} +\newcounter{figure}[chapter] +\renewcommand*\thefigure{% + \thechapter.% + \@arabic\c@figure } -\newcommand{\l@addto@macro}[2]{% - \begingroup% - \toks@\expandafter{#1#2}% - \edef\@tempa{\endgroup\def\noexpand#1{\the\toks@}}% - \@tempa} -\newcommand*{\addtokomafont}[2]{% - \@ifundefined{scr@fnt@#1}{% - \@ifundefined{scr@fnt@instead@#1}{% - \ClassError{% - scrreprt% - }{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} - }{% - \ClassError{% - scrreprt% - }{font of element `#1' can't be extended}{% - You've told me to extend the font selection of the element,% - \MessageBreak% - but the element does not use a special font - selection. The\MessageBreak - The font of `#1' may be changed with element `\csname - scr@fnt@instead@#1\endcsname'} - }% - }{% - \expandafter\expandafter\expandafter\l@addto@macro% - \csname scr@fnt@#1\endcsname{#2}% - \@ifundefined{scr@fnt@wrn@#1}{}{% - \ClassWarning{% - scrreprt% - }{\csname scr@fnt@wrn@#1\endcsname{#1}} - } - } +\newcommand*{\figureformat}{% + \figurename~\thefigure% + \autodot% } -\newcommand*{\usekomafont}[1]{% - \@ifundefined{scr@fnt@#1}{% - \@ifundefined{scr@fnt@instead@#1}{% - \ClassError{% - scrreprt% - }{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} - }{% - \ClassWarning{% - scrreprt% - }{% - You've told me to use the font selection of the element,% - \MessageBreak% - but the element does not use a special font - selection. The\MessageBreak - The font of `#1' may be selected with element `\csname - scr@fnt@instead@#1\endcsname'.\MessageBreak - I fix this using font of `\csname - scr@fnt@instead@#1\endcsname'}% +\newcommand*{\fps@figure}{tbp} +\newcommand*{\ftype@figure}{1} +\newcommand*{\ext@figure}{lof} +\newcommand*{\fnum@figure}{\figureformat} +\newenvironment{figure}{% + \let\caption\captionbelow\@float{figure}% +}{% + \end@float +} +\newenvironment{figure*}{% + \let\caption\captionbelow\@dblfloat{figure}% +}{% + \end@dblfloat +} +\newcounter{table}[chapter] +\renewcommand*\thetable{% + \thechapter.% + \@arabic\c@table +} +\newcommand*{\tableformat}{% + \tablename~\thetable% + \autodot% +} +\newcommand*{\fps@table}{tbp} +\newcommand*{\ftype@table}{2} +\newcommand*{\ext@table}{lot} +\newcommand*{\fnum@table}{\tableformat} +\newenvironment{table}{% + \if@tablecaptionabove\let\caption\captionabove + \else\let\caption\captionbelow\fi + \@float{table}% +}{% + \end@float +} +\newenvironment{table*}{% + \if@tablecaptionabove\let\caption\captionabove + \else\let\caption\captionbelow\fi + \@dblfloat{table}% +}{% + \end@dblfloat +} +%%% From File: scrkftn.dtx +\renewcommand*\footnoterule{% + \kern-3\p@ + \ifx\@textbottom\relax\else\vskip \z@ \@plus.05fil\fi + \hrule\@width.4\columnwidth + \kern 2.6\p@} +\@addtoreset{footnote}{chapter} +\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 }% - \@nameuse{scr@fnt@instead@#1}% - }{% - \@nameuse{scr@fnt@#1}% - }% - } -\newcommand*{\scr@fnt@descriptionlabel}{\descfont} -\newcommand*{\scr@fnt@title}{\titlefont} -\newcommand*{\scr@fnt@sectioning}{\sectfont} -\newcommand*{\scr@fnt@part}{\size@part} -\newcommand*{\scr@fnt@partnumber}{\size@partnumber} -\newcommand*{\scr@fnt@chapter}{\size@chapter} -\newcommand*{\scr@fnt@section}{\size@section} -\newcommand*{\scr@fnt@subsection}{\size@subsection} -\newcommand*{\scr@fnt@subsubsection}{\size@subsubsection} -\newcommand*{\scr@fnt@paragraph}{\size@paragraph} -\newcommand*{\scr@fnt@subparagraph}{\size@subparagraph} -\newcommand*{\scr@fnt@instead@minisec}{sectioning} -\newcommand*{\scr@fnt@pagenumber}{\pnumfont} -\let\scr@fnt@pagination=\scr@fnt@pagenumber -\newcommand*{\scr@fnt@pagehead}{\headfont} -\newcommand*{\scr@fnt@wrn@pagehead}[1]{% - font selection of elements `pagehead' and `pagefoot'\MessageBreak - changed, because you wanted to change font selection\MessageBreak - of element `#1'% + \fi + \par + \parindent\@tempdimc\noindent + \ftn@font\hbox to \z@{\hss\@@makefnmark}##1% + }% + \def\@@makefnmark{\hbox{\ftnm@font{#4}}}% } -\let\scr@fnt@pagefoot=\scr@fnt@pagehead -\let\scr@fnt@wrn@pagefoot=\scr@fnt@wrn@pagehead -\newcommand*{\scr@fnt@caption}{\capfont} -\newcommand*{\scr@fnt@captionlabel}{\caplabelfont} +\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} +\newcommand*{\thefootnotemark}{\@thefnmark} +\deffootnote[1em]{1.5em}{1em}{\textsuperscript{\thefootnotemark}} +\deffootnotemark{\textsuperscript{\thefootnotemark}} +%%% From File: scrkliof.dtx +\renewcommand*{\numberline}[1]{% + \hb@xt@\@tempdima{#1\autodot\hfil}} \newcommand*\@pnumwidth{1.55em} \newcommand*\@tocrmarg {2.55em} \newcommand*\@dotsep{4.5} -\setcounter{tocdepth}{2} -\newcommand*\toc@heading{\section*{\contentsname - \@mkboth{\contentsname}{\contentsname}}} -\newcommand*{\scr@dottedtocline}{}% -\newcommand*{\scr@numberline}{}% -\newcommand*{\last@l@number}{}% +\newcommand*{\scr@dottedtocline}{} +\newcommand*{\scr@numberline}{} +\newcommand*{\last@l@number}{} \newcommand*{\@l@number}{} \newcommand*{\set@l@number}[1]{% \settowidth{\@tempdima}{#1\enskip}% - \ifdim\@tempdima >\@l@number\relax% + \ifdim\@tempdima >\@l@number \xdef\@l@number{\the\@tempdima}% \fi% - \ifdim\@tempdima >\last@l@number \else% + \ifdim\@tempdima >\last@l@number \else \setlength{\@tempdima}{\last@l@number}% \fi% } \newcommand*{\before@starttoc}[1]{ - \let\scr@dottedtocline=\@dottedtocline% + \let\scr@dottedtocline=\@dottedtocline \renewcommand*{\@dottedtocline}[3]{% \scr@dottedtocline{##1}{\z@}{\last@l@number}}% - \let\scr@numberline=\numberline% + \let\scr@numberline=\numberline \renewcommand*{\numberline}[1]{% \set@l@number{##1}\scr@numberline{##1}}% \gdef\@l@number{\z@}% \@ifundefined{#1@l@number}{% \def\last@l@number{2em}% - }{% - \expandafter\let\expandafter\last@l@number - \expandafter=\csname#1@l@number\endcsname% - }% - } + }{% + \expandafter\ifx\csname #1@l@number\endcsname\@empty + \let\last@l@number\z@ + \else + \expandafter\let\expandafter\last@l@number + \expandafter=\csname#1@l@number\endcsname + \fi + }% +} \newcommand*{\after@starttoc}[1]{% \protected@write\@auxout{}{% \string\gdef\expandafter\string\csname#1@l@number\endcsname{% \@l@number}}% } +\newcommand*\contentsname{Contents} +\setcounter{tocdepth}{2} +\newcommand*\toc@heading{% + \chapter*{\contentsname}% + \@mkboth{\contentsname}{\contentsname}% +} \newcommand*{\toc@l@number}{} \newcommand*{\tableofcontents}{% \begingroup @@ -1987,70 +2610,27 @@ size% \else \@restonecolfalse \fi - \chapter*{\contentsname - \@mkboth{\contentsname}{\contentsname}}% - \@parskipfalse\@parskip@indent% - \if@tocleft\before@starttoc{toc}\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@tocleft\after@starttoc{toc}\fi \if@restonecol\twocolumn\fi \endgroup } -\newcommand*\l@part[2]{% - \ifnum \c@tocdepth >-2\relax - \addpenalty{-\@highpenalty}% - \addvspace{2.25em \@plus\p@}% - \setlength\@tempdima{2em}% - \if@tocleft - \ifx\toc@l@number\@empty\else - \setlength\@tempdima{0\toc@l@number}% - \fi - \fi - \begingroup - \parindent \z@ \rightskip \@pnumwidth - \parfillskip -\@pnumwidth - \leavevmode\sectfont\large - \advance\leftskip\@tempdima - \hskip -\leftskip - #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par - \penalty\@highpenalty - \endgroup - \fi} -\newcommand*\l@chapter[2]{% - \ifnum \c@tocdepth >\m@ne - \addpenalty{-\@highpenalty}% - \vskip 1.0em \@plus\p@ - \setlength\@tempdima{1.5em}% - \if@tocleft - \ifx\toc@l@number\@empty\else - \setlength\@tempdima{0\toc@l@number}% - \fi - \fi - \begingroup - \parindent \z@ \rightskip \@pnumwidth - \parfillskip -\@pnumwidth - \leavevmode \sectfont - \advance\leftskip\@tempdima - \hskip -\leftskip - #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par - \penalty\@highpenalty - \endgroup - \fi} -\newcommand*\l@section{\@dottedtocline{1}{1.5em}{2.3em}} -\newcommand*\l@subsection{\@dottedtocline{2}{3.8em}{3.2em}} -\newcommand*\l@subsubsection{\@dottedtocline{3}{7.0em}{4.1em}} -\newcommand*\l@paragraph{\@dottedtocline{4}{10em}{5em}} -\newcommand*\l@subparagraph{\@dottedtocline{5}{12em}{6em}} \newcommand*{\float@listhead}[1]{% \chapter*{#1}% \@mkboth{#1}{#1}% \if@dynlist% \newcommand*{\scr@starttoc}{}% - \let\scr@starttoc=\@starttoc% + \let\scr@starttoc=\@starttoc \renewcommand*{\@starttoc}[1]{% - \before@starttoc{##1}\scr@starttoc{##1}\after@starttoc{##1}}% - \fi% + \before@starttoc{##1}\scr@starttoc{##1}\after@starttoc{##1}% + }% + \fi } +\newcommand*\listfigurename{List of Figures} +\newcommand*\listtablename{List of Tables} \newcommand*\lof@heading{\float@listhead{\listfigurename}} \newcommand*\listoffigures{% \begingroup% @@ -2060,7 +2640,7 @@ size% \@restonecolfalse \fi \lof@heading% - \@parskipfalse\@parskip@indent% + \setparsizes{0}{0}{\z@\@plus 1fil}\par@updaterelative \@starttoc{lof}% \if@restonecol\twocolumn\fi \endgroup @@ -2074,316 +2654,212 @@ size% \else \@restonecolfalse \fi - \lot@heading% - \@parskipfalse\@parskip@indent% + \lot@heading + \setparsizes{0}{0}{\z@\@plus 1fil}\par@updaterelative \@starttoc{lot}% \if@restonecol\twocolumn\fi \endgroup } \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} + \chapter*{\bibname}% + \@mkboth{\bibname}{\bibname}% } \newdimen\bibindent \bibindent=1.5em \newenvironment{thebibliography}[1]{% \ifx\bibpreamble\relax\else\ifx\bibpreamble\@empty\else - \setchapterpreamble{\bibpreamble}% + \setchapterpreamble{\bibpreamble}% \fi\fi - \bib@heading% - \list{\@biblabel{\@arabic\c@enumiv}}% - {\settowidth\labelwidth{\@biblabel{#1}}% + \bib@heading + \list{% + \@biblabel{\@arabic\c@enumiv}% + }{% + \settowidth\labelwidth{\@biblabel{#1}}% \leftmargin\labelwidth \advance\leftmargin\labelsep \@openbib@code \usecounter{enumiv}% \let\p@enumiv\@empty - \renewcommand*\theenumiv{\@arabic\c@enumiv}}% - \sloppy\clubpenalty4000\widowpenalty4000% - \sfcode`\.=\@m} -{\def\@noitemerr - {\@latex@warning{Empty `thebibliography' environment}}% - \endlist} + \renewcommand*\theenumiv{\@arabic\c@enumiv}% + }% + \sloppy\clubpenalty4000 \widowpenalty4000 + \sfcode`\.=\@m +}{% + \def\@noitemerr{% + \@latex@warning{Empty `thebibliography' environment}% + }% + \endlist +} \newcommand*\newblock{\hskip .11em\@plus.33em\@minus.07em} \let\@openbib@code\@empty -\newcommand*{\index@preamble}{\relax} -\newcommand{\setindexpreamble}[1]{\renewcommand*{\index@preamble}{#1}} +%%% 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[\chapter*{\indexname}]% \@mkboth{\indexname}{\indexname}% } -\newenvironment{theindex} - {\if@twocolumn +\newenvironment{theindex}{% + \if@twocolumn \@restonecolfalse - \else + \else \@restonecoltrue - \fi - \columnseprule \z@ - \columnsep 35\p@ - \setchapterpreamble{\index@preamble} - \idx@heading% - \thispagestyle{\indexpagestyle}\parindent\z@ - \setlength{\parskip}{\z@ \@plus .3\p@} - \setlength{\parfillskip}{\z@ \@plus 1fil} - \let\item\@idxitem} - {\if@restonecol\onecolumn\else\clearpage\fi} -\newcommand*\@idxitem {\par\hangindent 40\p@} -\newcommand*\subitem {\@idxitem \hspace*{20\p@}} + \fi + \columnseprule \z@ + \columnsep 35\p@ + \setchapterpreamble{\index@preamble}% + \idx@heading% + \thispagestyle{\indexpagestyle}\parindent\z@ + \setlength{\parskip}{\z@ \@plus .3\p@}% + \setlength{\parfillskip}{\z@ \@plus 1fil}% + \let\item\@idxitem +}{% + \if@restonecol\onecolumn\else\clearpage\fi +} +\newcommand*\@idxitem{\par\hangindent 40\p@} +\newcommand*\subitem{\@idxitem \hspace*{20\p@}} \newcommand*\subsubitem{\@idxitem \hspace*{30\p@}} -\newcommand*\indexspace{\par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax} -\renewcommand*\footnoterule{% - \kern-3\p@ - \ifx\@textbottom\relax\else\vskip \z@ \@plus.0005fil\fi - \hrule\@width.4\columnwidth - \kern 2.6\p@} -\@addtoreset{footnote}{chapter} -\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*\indexspace{% + \par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax } -\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} -\newcommand*{\thefootnotemark}{\@thefnmark} -\deffootnote[1em]{1.5em}{1em} - {\textsuperscript{\thefootnotemark}} -\deffootnotemark{\textsuperscript{\thefootnotemark}} -\DeclareRobustCommand*\textsubscript[1]{% - \@textsubscript{\selectfont#1}} -\newcommand{\@textsubscript}[1]{% - {\m@th\ensuremath{_{\mbox{\fontsize\sf@size\z@#1}}}}} -\newcommand*\contentsname{Contents} -\newcommand*\listfigurename{List of Figures} -\newcommand*\listtablename{List of Tables} -\newcommand*\bibname{Bibliography} \newcommand*\indexname{Index} -\newcommand*\figurename{Figure} -\newcommand*\tablename{Table} -\newcommand*\partname{Part} -\newcommand*\chaptername{Chapter} -\newcommand*\appendixname{Appendix} -\newcommand*\abstractname{Abstract} -\newcommand*\today{\ifcase\month\or - January\or February\or March\or April\or May\or June\or - July\or August\or September\or October\or November\or December\fi - \space\number\day, \number\year} -\newcommand*{\providecaptionname}[3]{% - \@ifundefined{captions#1}{% - \@ifundefined{cap@info@#1@done}{% - \ClassInfo{% - scrlttr2% - }{% - 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% - \def\@tempb{#1}% - \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{% - scrlttr2% - }{% - `\string#2' at language `#1' already - defined\MessageBreak - --> skipped% - }% - \fi - \@tempa +%%% From File: scrklist.dtx +\if@twocolumn + \setlength{\leftmargini}{2em} +\else + \setlength{\leftmargini}{2.5em} +\fi +\setlength{\leftmarginii}{2.2em} +\setlength{\leftmarginiii}{1.87em} +\setlength{\leftmarginiv}{1.7em} +\if@twocolumn + \setlength{\leftmarginv}{.5em} + \setlength{\leftmarginvi}{.5em} +\else + \setlength{\leftmarginv}{1em} + \setlength{\leftmarginvi}{1em} +\fi +\setlength{\leftmargin}{\leftmargini} +\setlength{\labelsep}{.5em} +\setlength{\labelwidth}{\leftmargini} +\addtolength{\labelwidth}{-\labelsep} +\@beginparpenalty=-\@lowpenalty +\@endparpenalty =-\@lowpenalty +\@itempenalty =-\@lowpenalty +\setlength\arraycolsep{5\p@} +\setlength\tabcolsep{6\p@} +\setlength\arrayrulewidth{.4\p@} +\setlength\doublerulesep{2\p@} +\setlength\tabbingsep{\labelsep} +\renewcommand*\theenumi{\@arabic\c@enumi} +\renewcommand*\theenumii{\@alph\c@enumii} +\renewcommand*\theenumiii{\@roman\c@enumiii} +\renewcommand*\theenumiv{\@Alph\c@enumiv} +\newcommand*\labelenumi{\theenumi.} +\newcommand*\labelenumii{\theenumii)} +\newcommand*\labelenumiii{\theenumiii.} +\newcommand*\labelenumiv{\theenumiv.} +\renewcommand*\p@enumii{\theenumi} +\renewcommand*\p@enumiii{\p@enumii(\theenumii)} +\renewcommand*\p@enumiv{\p@enumiii\theenumiii} +\newcommand*\labelitemi{\textbullet} +\newcommand*\labelitemii{\normalfont\bfseries\textendash} +\newcommand*\labelitemiii{\textasteriskcentered} +\newcommand*\labelitemiv{\textperiodcentered} +\newenvironment{description}{% + \list{}{\labelwidth\z@ \itemindent-\leftmargin + \let\makelabel\descriptionlabel}% +}{% + \endlist +} +\newcommand*{\descriptionlabel}[1]{% + \hspace{\labelsep}\descfont #1% +} +\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{verse}{% + \let\\=\@centercr + \list{}{\itemsep=\z@ + \itemindent=-1.5em + \listparindent=\itemindent + \rightmargin=\leftmargin + \advance\leftmargin by1.5em }% + \item\relax +}{% + \endlist } -\newcommand*{\newcaptionname}[3]{% - \@ifundefined{captions#1}{% - \ClassInfo{% - scrlttr2% - }{% - No captions found for `#1' --> defining% - }% - \@namedef{captions#1}{}% - }{}% - \begingroup% - \csname captions#1\endcsname% - \ifx #2\undefined\else% - \ClassError{% - scrlttr2% - }{% - `\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 - \def\@tempb{#1}% - \ifx\@tempb\languagename - \def\@tempa{\endgroup\csname captions#1\endcsname}% - \else - \let\@tempa\endgroup - \fi - \@tempa +\newenvironment{quotation}{% + \list{}{\listparindent 1em% + \itemindent \listparindent + \rightmargin \leftmargin + \parsep \z@ \@plus\p@ + }% + \item\relax +}{% + \endlist } -\newcommand*{\renewcaptionname}[3]{% - \@ifundefined{captions#1}{% - \ClassError{% - scrlttr2% - }{% - 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{% - scrlttr2% - }{% - `\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 - \def\@tempb{#1}% - \ifx\@tempb\languagename - \def\@tempa{\endgroup\csname captions#1\endcsname}% - \else - \let\@tempa\endgroup - \fi - \@tempa +\newenvironment{quote}{% + \list{}{\rightmargin\leftmargin}% + \item\relax +}{% + \endlist } -\newif\if@altsecnumformat\@altsecnumformatfalse -\newif\if@autodot\@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% - \fi% - \@@maybeautodot} -\let\scr@sect\@sect -\renewcommand*{\@sect}[1]{\stepcounter{#1}% - \expandafter\@maybeautodot\csname the#1\endcsname% - \addtocounter{#1}{-1}\scr@sect{#1}} -\AtEndDocument{% - \if@autodot\if@filesw\immediate\write\@mainaux{% - \string\global\string\@altsecnumformattrue} - \fi\fi} -\newcommand*\autodot{\if@altsecnumformat.\fi} -\newcommand*\chaptermarkformat {\chapappifchapterprefix{\ }% - \thechapter\autodot\enskip} -\newcommand*\sectionmarkformat {\thesection\autodot\enskip} -\newcommand*{\partformat}{\partname~\thepart\autodot} -\newcommand*{\chapterformat}{% - \chapappifchapterprefix{\ }\thechapter\autodot\enskip} -\newcommand*{\figureformat}{\figurename~\thefigure% - \autodot% - } -\newcommand*{\tableformat}{\tablename~\thetable% - \autodot% +\newenvironment{addmargin}{% + \@tempswafalse\@addmargin +}{% + \advance\@listdepth\@ne + \endlist } -\newcommand*{\captionformat}{:\ } -\newcommand*{\chapappifprefix}[1][]{% - \ClassWarning{% - scrreprt% - }{% - Please don't use obsolete command - \string\chapappifprefix.\MessageBreak - The new command \string\chapappifchapterprefix\space has - an\MessageBreak - obligatory instead of an optional argument. Use that\MessageBreak - new command% +\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 }% - \if@chapterprefix\chapapp#1\fi} -\newcommand*{\chapappifchapterprefix}[1]{\if@chapterprefix\chapapp#1\fi} -\newcommand*{\chapapp}{\@chapapp} -\newcommand*{\othersectionlevelsformat}[1]{% - \csname the#1\endcsname\autodot\enskip} -\renewcommand*{\@seccntformat}{\protect\othersectionlevelsformat} -\pagestyle{plain} -\pagenumbering{arabic} % Arabic page numbers -\if@twoside -\else - \raggedbottom -\fi -\if@twocolumn - \twocolumn - \sloppy - \flushbottom -\else - \onecolumn -\fi + \item\relax% +} +\newcommand*\descfont{\sffamily\bfseries} +\newcommand*{\scr@fnt@descriptionlabel}{\descfont} +%%% From File: scrlogo.dtx \@ifundefined{KOMAScript}{% \DeclareRobustCommand{\KOMAScript}{\textsf{K\kern.05em O\kern.05em% M\kern.05em A\kern.1em-\kern.1em Script}}}{} diff --git a/Master/texmf-dist/tex/latex/koma-script/scrtime.sty b/Master/texmf-dist/tex/latex/koma-script/scrtime.sty index b55d373fd07..b22295559a9 100644 --- a/Master/texmf-dist/tex/latex/koma-script/scrtime.sty +++ b/Master/texmf-dist/tex/latex/koma-script/scrtime.sty @@ -5,47 +5,42 @@ %% The original source files were: %% %% scrtime.dtx (with options: `scrtime') -%% scrlogo.dtx +%% scrlogo.dtx (with options: `logo') %% -%% Copyright (C) 1994-2004 by Markus Kohm. +%% Copyright (c) 1994-2006 +%% Markus Kohm and any individual authors listed elsewhere in this file. %% -%% All rights reserved. For further copyright information see the file -%% legal.txt, and any other copyright indicated in this file. +%% This file was generated from file(s) of the KOMA-Script bundle. +%% --------------------------------------------------------------- %% -%% This file is part of the LaTeX2e 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'. %% -%% The KOMA-Script-bundle (but not this file) bases on the -%% Script-family created by Frank Neukam 1993 and the standard -%% documents classes created by the LaTeX3-Team 1994-1996. -%% ------------------------------------------------------------- +%% 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. %% -%% This system is distributed in the hope that it will be useful, -%% but WITHOUT ANY WARRANTY; without even the implied warranty of -%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +%% 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. %% -%% IMPORTANT NOTICE: +%% English and German manuals are part of KOMA-Script bundle. +%% ---------------------------------------------------------- %% -%% For error reports in case of UNCHANGED versions see documentation. +%% See `README'. %% -%% Please do not request updates from us directly. Distribution is -%% done through Mail-Servers, Mailboxes and TeX organizations. -%% -%% You are not allowed to change this file. -%% -%% You are allowed to distribute this file under the condition that -%% it is distributed together with all files mentioned in readme.txt -%% and liesmich.txt. See LEGAL.TXT or LEGALDE.TXT for further -%% information. -%% -%% If you receive only some of these files from someone, complain! -%% -%% You are NOT ALLOWED to distribute this file alone. +%% 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: scrtime.dtx \NeedsTeXFormat{LaTeX2e}[1995/12/01] \ProvidesPackage{scrtime} - [2002/02/02 v1.1m LaTeX2e KOMA + [2006/03/30 v1.1o LaTeX2e KOMA-Script package] \newif\if@Hxii \DeclareOption{12h}{\@Hxiitrue} @@ -65,6 +60,7 @@ \the\@tempcnta{#1}\@tempif\ifnum\@tempcntb<10 0\fi\fi\the\@tempcntb% \endgroup} \newcommand*{\settime}[1]{\renewcommand*{\@thistime}[1][]{#1}} +%%% From File: scrlogo.dtx \@ifundefined{KOMAScript}{% \DeclareRobustCommand{\KOMAScript}{\textsf{K\kern.05em O\kern.05em% M\kern.05em A\kern.1em-\kern.1em Script}}}{} diff --git a/Master/texmf-dist/tex/latex/koma-script/typearea.sty b/Master/texmf-dist/tex/latex/koma-script/typearea.sty index dcd3046bed2..72c50031e09 100644 --- a/Master/texmf-dist/tex/latex/koma-script/typearea.sty +++ b/Master/texmf-dist/tex/latex/koma-script/typearea.sty @@ -4,633 +4,833 @@ %% %% The original source files were: %% -%% scrclass.dtx (with options: `package,typearea') -%% scrlogo.dtx +%% scrkvers.dtx (with options: `package,typearea') +%% scrktare.dtx (with options: `package,identify') +%% scrkbase.dtx (with options: `load') +%% scrktare.dtx (with options: `package,option,body') +%% scrlogo.dtx (with options: `logo') %% -%% Copyright (C) 1994-2004 Markus Kohm and Frank Neukam. +%% Copyright (c) 1994-2006 +%% Markus Kohm and any individual authors listed elsewhere in this file. %% -%% All rights reserved. For further copyright information see the file -%% LEGAL.TXT or LEGALDE.TXT. +%% This file was generated from file(s) of the KOMA-Script bundle. +%% --------------------------------------------------------------- %% -%% This file is part of the LaTeX2e 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'. %% -%% The KOMA-Script bundle bases on the Script-family created by -%% Frank Neukam 1993 and the standard documents classes created -%% by the LaTeX3-Team 1994-1996. -%% ------------------------------------------------------------------------ +%% 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. %% -%% This system is distributed in the hope that it will be useful, -%% but WITHOUT ANY WARRANTY; without even the implied warranty of -%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +%% 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. %% -%% IMPORTANT NOTICE: +%% English and German manuals are part of KOMA-Script bundle. +%% ---------------------------------------------------------- %% -%% For error reports in case of UNCHANGED versions see documentation. +%% See `README'. %% -%% Please do not request updates from us directly. Distribution is -%% done through Mail-Servers, Mailboxes and TeX organizations. +%% 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. %% -%% You are not allowed to change this file. -%% -%% You are allowed to distribute this file under the condition that -%% it is distributed together with all files mentioned in readme.txt -%% and liesmich.txt. See LEGAL.TXT or LEGALDE.TXT for further -%% information. -%% -%% If you receive only some of these files from someone, complain! -%% -%% You are NOT ALLOWED to distribute this file alone. -%% -\NeedsTeXFormat{LaTeX2e}[1995/12/01] -\ProvidesPackage{% - typearea% - } - [2004/09/16 v2.9t LaTeX2e KOMA - package] -\typeout{Package typearea, \csname ver@typearea.sty\endcsname% - ^^J\@spaces\@spaces\@spaces\@spaces\space\space - Copyright (C) Frank Neukam, 1992-1994% - ^^J\@spaces\@spaces\@spaces\@spaces\space\space - Copyright (C) Markus Kohm, 1994-2002^^J} +%%% 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{2006/07/30 v2.95b KOMA-Script}% +\endgroup +%%% From File: scrktare.dtx +\ProvidesPackage{typearea}[% + \KOMAScriptVersion\space package (type area)] +\typeout{% + Package typearea, \csname ver@typearea.sty\endcsname^^J% + \@spaces\@spaces\@spaces\@spaces\space\space + Copyright (C) Frank Neukam, 1992-1994^^J% + \@spaces\@spaces\@spaces\@spaces\space\space + Copyright (C) Markus Kohm, 1994-2002^^J% +} +%%% From File: scrkbase.dtx +\RequirePackage{scrkbase}[\KOMAScriptVersion] +%%% From File: scrktare.dtx \newcommand*\SetDIVList[1]{\def\ta@divlist{{}{}{}{}{}{}{}{}{}#1}} \newcommand*\SetXDIVList[1]{\def\ta@divlist{#1}} \newlength{\ta@bcor} -\providecommand\ifnumber[3]{ - \begingroup\@tempswafalse\let\scr@next\test@number - \expandafter\scr@next#1\scr@next - \if@tempswa\endgroup#2\else\endgroup#3\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\relax - \ifnum \@tempcnta<58\relax - \@tempswatrue - \else\@tempswafalse\fi - \else\@tempswafalse\fi - \if@tempswa\else\let\scr@next\gobble@till@next\fi\fi - \scr@next} -\newcommand*{\gobble@till@next}{} -\def\gobble@till@next#1\scr@next{} -\newcommand{\ifdimen}[3]{ - \begingroup\@tempswatrue\let\scr@next\test@posdimen - \expandafter\test@dimen#1\scr@next - \if@tempswa\endgroup#2\else\endgroup#3\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\relax - \ifnum \@tempcnta<58\relax - \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\ifstr[4]{ - \begingroup\edef\@tempa{#1}\edef\@tempb{#2} - \ifx\@tempa\@tempb\endgroup#3\else\endgroup#4\fi} +\newcount\ta@div \newcommand*{\@BCOR}{\expandafter\@@BCOR\CurrentOption BCORBCOR\@@BCOR} \newcommand*{\@@BCOR}{} -\def\@@BCOR #1BCOR#2BCOR#3\@@BCOR{ - \edef\@tempa{#1}\ifx\@tempa\@empty - \edef\@tempa{#3}\def\@tempb{BCOR}\ifx\@tempa\@tempb - \ifdimen{#2}{\setlength{\ta@bcor}{#2}}{\ta@opt@err} - \else\ta@opt@err\fi - \else\ta@opt@err\fi} -\newcount\ta@div +\def\@@BCOR #1BCOR#2BCOR#3\@@BCOR{% + \ifstr{#1}{}{% + \ifstr{#3}{BCOR}{% + \ifdimen{#2}{\setlength{\ta@bcor}{#2}}{\scr@pti@nerr@r}% + }{\scr@pti@nerr@r}% + }{\scr@pti@nerr@r}% +} \newcommand*{\@DIV}{\expandafter\@@DIV\CurrentOption DIVDIV\@@DIV} \newcommand*{\@@DIV}{} -\def\@@DIV #1DIV#2DIV#3\@@DIV{ - \edef\@tempa{#1}\ifx\@tempa\@empty - \edef\@tempa{#3}\def\@tempb{DIV}\ifx\@tempa\@tempb - \ifnumber{#2}{\ta@div=#2\relax}{\ta@opt@err} - \else\ta@opt@err\fi - \else\@BCOR\fi} +\def\@@DIV #1DIV#2DIV#3\@@DIV{% + \edef\@tempa{#1}\ifx\@tempa\@empty + \edef\@tempa{#3}\def\@tempb{DIV}\ifx\@tempa\@tempb + \ifnumber{#2}{\ta@div=#2\relax}{\scr@pti@nerr@r}% + \else\scr@pti@nerr@r\fi + \else\@BCOR\fi +} \newcommand{\@headlines}{% - \expandafter\@@headlines\CurrentOption headlines\@@headlines} + \expandafter\@@headlines\CurrentOption headlines\@@headlines% +} \newcommand*{\@@headlines}{} \def\@@headlines #1headlines#2\@@headlines{ \edef\@tempa{#2}\edef\@tempb{headlines}\ifx\@tempa\@tempb - \setlength{\@tempdima}{#1\baselineskip} - \def\ta@hh{#1\baselineskip} - \else\@DIV\fi} + \setlength{\@tempdima}{#1\baselineskip}% + \def\ta@hh{#1\baselineskip}% + \else\@DIV\fi +} \newcommand\isopaper[2][a]{% - \ifx a#1 - \setlength{\paperwidth}{841sp}\setlength{\paperheight}{1189sp} - \else\ifx b#1 - \setlength{\paperwidth}{1000sp}\setlength{\paperheight}{1414sp} - \else\ifx c#1 - \setlength{\paperwidth}{917sp}\setlength{\paperheight}{1297sp} - \else\ifx d#1 - \setlength{\paperwidth}{771sp}\setlength{\paperheight}{1090sp} - \else - \PackageError{typearea} - {Unknown ISO/DIN-papersize-letter #1} - {There are only four defined paperscalings:\MessageBreak - a = ISO/DIN-A, b = ISO/DIN-B, c = ISO/DIN-C, d = ISO/DIN-D\MessageBreak - Read KOMA-Script-documentation for further information.} - \setlength{\paperwidth}{841sp}\setlength{\paperheight}{1189sp} - \fi\fi\fi\fi - \@tempcnta=#2\relax - \@whilenum\@tempcnta>0 + \ifx a#1 + \setlength{\paperwidth}{841sp}% + \setlength{\paperheight}{1189sp}% + \else\ifx A#1 + \setlength{\paperwidth}{841sp}% + \setlength{\paperheight}{1189sp}% + \else\ifx b#1 + \setlength{\paperwidth}{1000sp}% + \setlength{\paperheight}{1414sp}% + \else\ifx B#1 + \setlength{\paperwidth}{1000sp}% + \setlength{\paperheight}{1414sp}% + \else\ifx c#1 + \setlength{\paperwidth}{917sp}% + \setlength{\paperheight}{1297sp}% + \else\ifx C#1 + \setlength{\paperwidth}{917sp}% + \setlength{\paperheight}{1297sp}% + \else\ifx d#1 + \setlength{\paperwidth}{771sp}% + \setlength{\paperheight}{1090sp}% + \else\ifx D#1 + \setlength{\paperwidth}{771sp}% + \setlength{\paperheight}{1090sp}% + \else + \PackageError{typearea}{% + Unknown ISO/DIN-papersize-letter #1% + }{% + There are only four defined paper scalings:\MessageBreak + a = ISO/DIN-A, b = ISO/DIN-B, c = ISO/DIN-C, + d = ISO/DIN-D\MessageBreak + Read KOMA-Script-documentation for further information.% + }% + \setlength{\paperwidth}{841sp}% + \setlength{\paperheight}{1189sp}% + \fi + \fi + \fi + \fi + \fi + \fi + \fi + \fi + \@tempcnta=#2\relax + \@whilenum\@tempcnta>0 \do{\setlength{\@tempdima}{\paperwidth} - \setlength{\paperwidth}{.5\paperheight} - \setlength{\paperheight}{\@tempdima} - \advance\@tempcnta by\m@ne} - \multiply\paperwidth by186468\relax - \multiply\paperheight by186468\relax} -\newcommand*{\x@paper}{\expandafter\x@@paper\CurrentOption paper\x@@paper} + \setlength{\paperwidth}{.5\paperheight} + \setlength{\paperheight}{\@tempdima} + \advance\@tempcnta by\m@ne + } + \multiply\paperwidth by186468 + \multiply\paperheight by186468 +} +\newcommand*{\iso@paper}[1]{\expandafter\iso@@paper#1\@nil} +\newcommand*{\iso@@paper}{} +\def\iso@@paper#1#2\@nil{% + \@tempswafalse + \if #1a\@tempswatrue + \else\if #1A\@tempswatrue + \else\if #1b\@tempswatrue + \else\if #1B\@tempswatrue + \else\if #1c\@tempswatrue + \else\if #1C\@tempswatrue + \else\if #1d\@tempswatrue + \else\if #1D\@tempswatrue + \fi\fi\fi\fi\fi\fi\fi\fi + \if@tempswa + \ifnumber{#2}{\isopaper[#1]{#2}}{\@tempswafalse}% + \fi +} +\newcommand*{\x@paper}{% + \expandafter\x@@paper\CurrentOption paper\x@@paper% +} \newcommand*{\x@@paper}{} -\def\x@@paper #1#2paper#3\x@@paper{ - \edef\@tempa{paper}\edef\@tempb{#3}\ifx\@tempa\@tempb - \ifnumber{#2}{ - \ifx a#1\isopaper[a]{#2} - \else\ifx b#1\isopaper[b]{#2} - \else\ifx c#1\isopaper[c]{#2} - \else\ifx d#1\isopaper[d]{#2} - \else\ta@opt@err\fi\fi\fi\fi - }{\ta@opt@err} - \else\@headlines\fi} -\newcommand*{\ta@opt@err}{ - \PackageError{typearea} - {Unknown option \CurrentOption} - {You've used an unknown option.\MessageBreak - Read the KOMA-Script-documentation for further - information.}} -\newif\if@hincl -\DeclareOption{headinclude}{\@hincltrue} -\DeclareOption{headexclude}{\@hinclfalse} -\newif\if@fincl -\DeclareOption{footinclude}{\@fincltrue} -\DeclareOption{footexclude}{\@finclfalse} -\@ifundefined{mincltrue}{\newif\if@mincl}{} -\DeclareOption{mpinclude}{\@mincltrue} -\DeclareOption{mpexclude}{\@minclfalse} -\DeclareOption{dvips}{\AtBeginDocument{\AtBeginDvi{% - \special{papersize=\the\paperwidth,\the\paperheight}}}} -\DeclareOption{pdftex}{\AtBeginDocument{% - \pdfpagewidth=\paperwidth \pdfpageheight=\paperheight}} -\newcommand{\scr@ifpdfoutput}[2]{% - \begingroup\@ifundefined{pdfoutput}{\endgroup #2}{\endgroup% - \ifnum\pdfoutput>0\relax #1\else #2\fi}}% -\@ifundefined{ifpdfoutput}{% - \let\ifpdfoutput\scr@ifpdfoutput% +\def\x@@paper #1#2paper#3\x@@paper{% + \ifstr{#3}{paper}{% + \ifnumber{#2}{% + \ifstr{#1}{a}{% + \isopaper[a]{#2}% + }{% + \ifstr{#1}{b}{% + \isopaper[b]{#2}% + }{% + \ifstr{#1}{c}{% + \isopaper[c]{#2}% + }{% + \ifstr{#1}{d}{% + \isopaper[d]{#2}% + }{\scr@pti@nerr@r}% + }% + }% + }% + }{\scr@pti@nerr@r}% }{% - \PackageInfo{typearea}{% - \string\ifpdfoutput\space already defined.\MessageBreak - If \string\ifpdfoutput\space does not behave like\MessageBreak - is is described at the KOMA-Script manual, try to\MessageBreak - load `typearea.sty' earlier or find out at which\MessageBreak - package or class \string\ifpdfoutput\space was defined.}} -\DeclareOption{pagesize}{\AtBeginDocument{% - \scr@ifpdfoutput - {\pdfpagewidth=\paperwidth\pdfpageheight=\paperheight} - {\AtBeginDvi{\special{papersize=\the\paperwidth,\the\paperheight}}}}} -\DeclareOption{a4paper}{\isopaper{4}} -\DeclareOption{a5paper}{\isopaper{5}} -\DeclareOption{letterpaper} - {\setlength\paperheight {11in}% - \setlength\paperwidth {8.5in}} -\DeclareOption{legalpaper} - {\setlength\paperheight {14in}% - \setlength\paperwidth {8.5in}} -\DeclareOption{executivepaper} - {\setlength\paperheight {10.5in}% - \setlength\paperwidth {7.25in}} + \@headlines + }% +} +\newcommand*{\scr@pti@nerr@r}{ + \@unknownoptionerror +} +\KOMA@key{headlines}{% + \begingroup + \setlength{\@tempdima}{#1\baselineskip}% + \endgroup + \def\ta@hh{#1\baselineskip}% +} +\KOMA@ifkey{headinclude}{@hincl} +\KOMA@DeclareObsoleteOption[\PackageInfo]{headexclude}{% + headinclude=false% +} +\KOMA@ifkey{footinclude}{@fincl} +\KOMA@DeclareObsoleteOption[\PackageInfo]{footexclude}{% + footinclude=false% +} +\KOMA@ifkey{mpinclude}{@mincl} +\KOMA@DeclareObsoleteOption[\PackageInfo]{mpexclude}{% + mpinclude=false% +} +\KOMA@key{BCOR}{% + \edef\@tempa{#1}\edef\@tempb{current}\ifx\@tempa\@tempb\else + \setlength{\ta@bcor}{#1}% + \fi +} +\AtEndOfPackage{\KOMA@key{BCOR}{\typearea[{#1}]{last}}} +\KOMA@key{DIV}[calc]{% + \edef\@tempa{#1}% + \def\@tempb{last}\ifx\@tempa\@tempb\let\@tempa=\@lastdiv\fi + \def\@tempb{current}\ifx\@tempa\@tempb\else + \def\@tempb{default}\ifx\@tempa\@tempb\ta@div=0 \else + \def\@tempb{calc}\ifx\@tempa\@tempb\ta@div=2 \else + \def\@tempb{classic}\ifx\@tempa\@tempb\ta@div=3 \else + \ta@div=\@tempa + \fi + \fi + \fi + \fi +} +\AtEndOfPackage{\KOMA@key{DIV}{\typearea[current]{#1}}} +\KOMA@DeclareObsoleteOption[\PackageInfo]{DIVcalc}{DIV=calc} +\KOMA@DeclareObsoleteOption[\PackageInfo]{DIVclassic}{DIV=classic} +\KOMA@key{twocolumn}[true]{% + \KOMA@set@ifkey{twocolumn}{@twocolumn}{#1}% + \csname recalctypearea\endcsname +} +\KOMA@DeclareObsoleteOption[\PackageInfo]{onecolumn}{twocolumn=false} +\KOMA@key{pagesize}[auto]{% + \begingroup + \KOMA@set@ncmdkey{pagesize}{@tempa}{% + {auto}{0},{automedia}{1},{dvips}{2},{pdftex}{3}% + }{#1}% + \ifcase\number\@tempa\relax + \endgroup + \set@pdftexpagesize + \set@dvipspagesize + \or + \endgroup + \set@pdftexpagesize + \set@vtexpagesize + \set@dvipspagesize + \or + \endgroup + \set@dvipspagesize + \or + \endgroup + \set@pdftexpagesize + \fi + \edef\@pagesizelast{#1}% +} +\newcommand{\set@pdftexpagesize}{% + \AtBeginDocument{% + \ifnotundefined{pdfpagewidth}{\pdfpagewidth=\paperwidth}{}% + \ifnotundefined{pdfpageheight}{\pdfpageheight=\paperheight}{}% + }% + \let\set@pdftexpagesize=\@empty +} +\newcommand{\set@dvipspagesize}{% + \begingroup + \@tempswafalse + \scr@ifdvioutput{\@tempswatrue}{% + \ifnotundefined{if@dvips}{\let\if@tempswa\if@dvips}{}% + }% + \if@tempswa + \endgroup + \AtBeginDocument{\AtBeginDvi{% + \special{papersize=\the\paperwidth,\the\paperheight}% + }% + }% + \let\set@dvipspagesize=\setnot@dvipspagesize + \else + \endgroup + \fi +} +\newcommand{\setnot@dvipspagesize}{% + \scr@ifdvioutput{% + \PackageWarning{% + typearea% + }{% + With dvi output option `pagesize=auto',\MessageBreak + `pagesize=automedia' or `pagesize=dvips'\MessageBreak + may be used only once at preamble.\MessageBreak + Option ignored% + }% + }{}% +} +\newcommand{\set@vtexpagesize}{% + \AtBeginDocument{% + \ifnotundefined{mediawith}{\mediawidth=\paperwidth}{}% + \ifnotundefined{mediaheight}{\mediaheight=\paperheight}{}% + }% + \let\set@vtexpagesize=\@empty +} +\AtBeginDocument{ + \renewcommand*{\set@pdftexpagesize}{% + \ifnotundefined{pdfpagewidth}{\pdfpagewidth=\paperwidth}{}% + \ifnotundefined{pdfpageheight}{\pdfpageheight=\paperheight}{}% + }% + \let\set@dvipspagesize=\setnot@dvipspagesize + \renewcommand*{\set@vtexpagesize}{% + \ifnotundefined{mediawith}{\mediawidth=\paperwidth}{}% + \ifnotundefined{mediaheight}{\mediaheight=\paperheight}{}% + }% +} +\KOMA@DeclareObsoleteOption[\PackageWarning]{dvips}{% + pagesize=dvips% +} +\KOMA@DeclareObsoleteOption[\PackageInfo]{pdftex}{% + pagesize=pdftex% +} +\KOMA@DeclareObsoleteOption[\PackageInfo]{a4paper}{paper=a4} +\KOMA@DeclareObsoleteOption[\PackageInfo]{a5paper}{paper=a5} +\KOMA@DeclareObsoleteOption[\PackageInfo]{b5paper}{paper=b5} +\KOMA@DeclareObsoleteOption[\PackageInfo]{letterpaper}{paper=letter} +\KOMA@DeclareObsoleteOption[\PackageInfo]{legalpaper}{paper=legal} +\KOMA@DeclareObsoleteOption[\PackageInfo]{executivepaper}{paper=executive} +\KOMA@DeclareObsoleteOption[\PackageInfo]{landscape}{paper=landscape} +\KOMA@DeclareObsoleteOption[\PackageInfo]{portrait}{paper=portrait} +\KOMA@key{paper}{% + \ifstr{#1}{landscape}{% + \if@landscape\else + \setlength{\@tempdima}{\paperwidth}% + \setlength{\paperwidth}{\paperheight}% + \setlength{\paperheight}{\@tempdima}% + \@landscapetrue + \fi + }{% + \ifstr{#1}{portrait}{% + \if@landscape + \setlength{\@tempdima}{\paperwidth}% + \setlength{\paperwidth}{\paperheight}% + \setlength{\paperheight}{\@tempdima}% + \@landscapefalse + \fi + }{% + \ifstr{#1}{letter}{% + \setlength\paperheight{11in}% + \setlength\paperwidth {8.5in}% + }{% + \ifstr{#1}{legal}{% + \setlength\paperheight{14in}% + \setlength\paperwidth {8.5in}% + }{% + \ifstr{#1}{executive}{% + \setlength\paperheight{10.5in}% + \setlength\paperwidth {7.25in}% + }{% + \iso@paper{#1}% + \if@tempswa\else + \expandafter\maybe@pair#1\scr@next + \if@tempswa + \setlength\paperheight{\@tempa}% + \setlength\paperwidth{\@tempb}% + \else + \KOMA@unknown@keyval{paper}{#1}{% + `letter', `legal', `executive', `a'<nr>, `b'<nr>, + `c'<nr>, `d'<nr>,\MessageBreak + `('<width>`,'<height>`)', `landscape' and `portrait'% + }% + \fi + \fi + }% + }% + }% + \if@landscape + \setlength{\@tempdima}{\paperwidth}% + \setlength{\paperwidth}{\paperheight}% + \setlength{\paperheight}{\@tempdima}% + \fi + }% + }% +} \newif\if@landscape -\DeclareOption{landscape}{\@landscapetrue} -\DeclareOption{DIVcalc}{\ta@div=1\relax} -\DeclareOption{DIVclassic}{\ta@div=3\relax} -\DeclareOption*{\x@paper} -\InputIfFileExists{typearea.cfg} - {\typeout{***************************************^^J% - * Local config file typearea.cfg used^^J% - ***************************************}} - {} -\ExecuteOptions{headexclude,footexclude,a4paper} -\ProcessOptions\relax -\if@landscape - \setlength\@tempdima {\paperheight} - \setlength\paperheight {\paperwidth} - \setlength\paperwidth {\@tempdima} -\fi +\newcommand*{\maybe@pair}{% + \@ifnextchar (% + {\@tempswatrue\maybe@@pair}{\@tempswafalse\gobble@till@scr@next}% +} +\newcommand*{\maybe@@pair}{} +\def\@maybepair(#1,#2)\scr@next{\def\@tempa{#1}\def\@tempb{#2}}% +\InputIfFileExists{typearea.cfg}{% + \typeout{% + ***************************************^^J% + * Local config file typearea.cfg used^^J% + ***************************************% + } +}{} +\DeclareKeyValOption[\x@paper]{KOMA} +\KOMAoptions{headinclude=false,footinclude=false,paper=A4} +\ProcessAllOptions{KOMA} \providecommand\ta@divlist{{}{}{}{}{}{}{}{}{}{8}{10}{12}} \providecommand\ta@divlistelse{1} \newlength{\ta@hblk} \newlength{\ta@vblk} \newlength{\ta@temp} -\newcommand*\@typearea{ - \ta@hblk \paperwidth - \advance \ta@hblk by -\ta@bcor - \divide\ta@hblk by \ta@div - \if@mincl - \marginparwidth \ta@hblk - \advance\marginparwidth -\marginparsep - \else +\newcommand*\@typearea{% + \selectfont + \ta@hblk=\paperwidth + \advance \ta@hblk by-\ta@bcor + \divide\ta@hblk by\ta@div + \if@mincl + \marginparwidth=\ta@hblk + \advance\marginparwidth by-\marginparsep + \else + \if@twoside + \marginparwidth=1.5\ta@hblk + \else + \marginparwidth=\ta@hblk + \fi + \fi + \oddsidemargin=-1in + \evensidemargin=-1in \if@twoside - \marginparwidth 1.5\ta@hblk + \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 \else - \marginparwidth \ta@hblk + \advance\oddsidemargin by1.5\ta@hblk + \advance\oddsidemargin by\ta@bcor + \evensidemargin=\oddsidemargin \fi - \fi - \oddsidemargin -1in - \evensidemargin -1in - \if@twoside - \advance\oddsidemargin by \ta@hblk - \advance\oddsidemargin by \ta@bcor - \advance\evensidemargin by 2\ta@hblk + \textwidth=\paperwidth + \advance\textwidth by-\ta@bcor + \advance\textwidth by-3\ta@hblk \if@mincl - \advance\evensidemargin by \marginparwidth - \advance\evensidemargin by \marginparsep + \advance\textwidth by-\marginparwidth + \advance\textwidth by-\marginparsep + \ifdim\textwidth <\marginparwidth + \PackageWarningNoLine{typearea}{% + Width of text (\the\textwidth) less than width of\MessageBreak + marginpar (\the\marginparwidth) while using option\MessageBreak + `mpinclude'.\MessageBreak + Because of this, I'm exchanging the values.\MessageBreak + You should increase DIV to avoid such problems.\MessageBreak + }% + \@tempskipa=\marginparwidth + \marginparwidth=\textwidth + \textwidth=\@tempskipa + \fi \fi - \else - \advance\oddsidemargin by 1.5\ta@hblk - \advance\oddsidemargin by \ta@bcor - \evensidemargin\oddsidemargin - \fi - \textwidth \paperwidth - \advance\textwidth by -\ta@bcor - \advance\textwidth by -3\ta@hblk - \if@mincl - \advance\textwidth by -\marginparwidth - \advance\textwidth by -\marginparsep - \ifdim\textwidth <\marginparwidth - \PackageWarningNoLine{typearea}{% - Width of text (\the\textwidth) less than width of\MessageBreak - marginpar (\the\marginparwidth) while using option\MessageBreak - `mpinclude'.\MessageBreak - Because of this, I'm exchanging the values.\MessageBreak - You should increase DIV to avoid such problems.\MessageBreak - } - \@tempdima \marginparwidth - \marginparwidth \textwidth - \textwidth \@tempdima + \ta@vblk=\paperheight + \divide\ta@vblk by\ta@div + \topmargin=-1in + \advance\topmargin by\ta@vblk + \if@hincl \else + \advance\topmargin by-\headheight + \advance\topmargin by-\headsep + \fi + \ta@temp=\paperheight + \advance\ta@temp by-3\ta@vblk + \if@hincl + \advance\ta@temp by-\headheight + \advance\ta@temp by-\headsep + \fi + \if@fincl + \advance\ta@temp by-\footskip \fi - \fi - \ta@vblk \paperheight - \divide\ta@vblk by \ta@div - \topmargin -1in - \advance\topmargin by \ta@vblk - \if@hincl \else - \advance\topmargin by -\headheight - \advance\topmargin by -\headsep - \fi - \ta@temp \paperheight - \advance\ta@temp by -3\ta@vblk - \if@hincl - \advance\ta@temp by -\headheight - \advance\ta@temp by -\headsep - \fi - \if@fincl - \advance\ta@temp by -\footskip - \fi - \textheight \topskip - \@whiledim\textheight<\ta@temp - \do{\advance\textheight by \baselineskip} + \textheight=\topskip + \@whiledim\textheight <\ta@temp + \do{\advance\textheight by\baselineskip}% } \newcommand*\ta@modiv[2]{ - \setlength{\@tempdima}{#1} - \divide\@tempdima by#2\relax - \ta@div\@tempdima - \ifnum \ta@div<4\relax - \ta@div=4\relax - \else - \setlength{\@tempdimb}{#1} - \divide\@tempdimb\ta@div - \addtolength{\@tempdima}{\@tempdima} - \addtolength{\@tempdima}{-\@tempdimb} - \advance\ta@div\@ne - \setlength{\@tempdimb}{#1} - \divide\@tempdimb\ta@div - \ifdim \@tempdima<\@tempdimb - \advance\ta@div by\m@ne + \setlength{\@tempdima}{#1} + \divide\@tempdima by#2 + \ta@div\@tempdima + \ifnum \ta@div<4 + \ta@div=4 + \else + \setlength{\@tempdimb}{#1}% + \divide\@tempdimb by\ta@div + \addtolength{\@tempdima}{\@tempdima}% + \addtolength{\@tempdima}{-\@tempdimb}% + \advance\ta@div by\@ne + \setlength{\@tempdimb}{#1}% + \divide\@tempdimb by\ta@div + \ifdim \@tempdima<\@tempdimb + \advance\ta@div by\m@ne + \fi \fi - \fi } -\newcommand*\ta@temp@goodwidth{ +\newcommand*\ta@temp@goodwidth{% \settowidth{\ta@temp}{\normalfont\normalsize - abcdefghijklmnopqrstuvwxyz} + abcdefghijklmnopqrstuvwxyz}% \ifdim\ta@temp >200\p@ - \divide\ta@temp by 26 - \multiply\ta@temp by 3 + \setlength{\ta@temp}{2.53846\ta@temp}% \settowidth{\@tempdima}{\normalfont\normalsize - ABCDEFGHIJKLMNOPQRSTUVWXYZ} - \divide\@tempdima by 26 - \multiply\@tempdima by 3 - \addtolength{\ta@temp}{\@tempdima} + ABCDEFGHIJKLMNOPQRSTUVWXYZ}% + \setlength{\@tempdima}{.11538\@tempdima}% + \addtolength{\ta@temp}{\@tempdima}% \else - \multiply\ta@temp by 66 + \multiply\ta@temp by66 \settowidth{\@tempdima}{\normalfont\normalsize - ABCDEFGHIJKLMNOPQRSTUVWXYZ} - \multiply\@tempdima by 3 - \addtolength{\ta@temp}{\@tempdima} - \divide\ta@temp by 26 + ABCDEFGHIJKLMNOPQRSTUVWXYZ}% + \multiply\@tempdima by3 + \addtolength{\ta@temp}{\@tempdima}% + \divide\ta@temp by26 \fi } -\newcommand*\typearea[2][\z@]{ - \edef\@tempa{#1}\edef\@tempb{current}\ifx\@tempa\@tempb\else - \setlength{\ta@bcor}{#1} - \fi - \edef\@tempa{#2} - \def\@tempb{last}\ifx\@tempa\@tempb\let\@tempa=\@lastdiv\fi - \def\@tempb{current}\ifx\@tempa\@tempb\else - \def\@tempb{default}\ifx\@tempa\@tempb\ta@div=0\relax\else - \def\@tempb{calc}\ifx\@tempa\@tempb\ta@div=2\relax\else - \def\@tempb{classic}\ifx\@tempa\@tempb\ta@div=3\relax\else - \ta@div=\@tempa\relax - \fi - \fi +\AtBeginDocument{% + \newcommand\@typearea@end{% + \PackageWarning{typearea}{% + Typearea changed!\MessageBreak + You should do this only at preamble, because only\MessageBreak + \protect\begin{document} calculates output dimensions!\MessageBreak + Trying to calculate new output dimensions, but\MessageBreak + this is only a dirty hack}% + \@colht=\textheight + \@colroom=\textheight + \vsize=\textheight + \columnwidth=\textwidth + \if@twocolumn + \advance\columnwidth by-\columnsep + \divide\columnwidth by\tw@ + \hsize=\columnwidth + \@firstcolumntrue \fi - \fi - \edef\@lastdiv{\the\ta@div} - \@ifundefined{ta@hh}{\headheight 1.25\baselineskip}{\headheight\ta@hh} - \headsep 1.5\baselineskip - \footskip 3.5\baselineskip - \marginparsep 1cc - \marginparpush 0.45\baselineskip - \ifnum\ta@div=\z@ - \@ifundefined{@ptsize}{% - \@tempdima=\f@size pt\relax - \advance\@tempdima by.5pt - \ta@div=\@tempdima - \divide\ta@div by65536\relax - \advance\ta@div by-10\relax - \xdef\@ptsize{\the\ta@div}% - \PackageWarningNoLine{typearea}{% - \string\@ptsize\space not defined! - \MessageBreak - Fontsize ist \f@size.\MessageBreak - Defining \string\@ptsize\space to \@ptsize}% - }{} - \ta@divfor{\@ptsize}% - \fi - \ifnum\ta@div=3 - \typeout{DIV calculation for classic typearea.} - \setlength{\ta@temp}{\paperwidth} - \addtolength{\ta@temp}{-\ta@bcor} - \if@hincl\else - \addtolength{\ta@temp}{\headheight} - \addtolength{\ta@temp}{\headsep} - \fi - \if@fincl\else - \addtolength{\ta@temp}{\footskip} - \fi - \ifdim \ta@temp>\paperheight - \PackageWarningNoLine{typearea} - {No classic typearea with this papersize!\MessageBreak - Using calculated DIV} - \ta@div=\@ne + \hsize=\columnwidth + \linewidth\hsize + \ifundefined{@pagesizelast}{}{\KOMAoptions{pagesize=\@pagesizelast}}% + }% +} +\newcommand*{\ta@divfor}[1]{% + \if@mincl + \PackageInfo{typearea}{% + With option `mpinclude' there are no predefined\MessageBreak + DIV-values. Using DIV calculation for good line\MessageBreak + width% + }% + \ta@div=2 \else - \setlength{\ta@temp}{\paperheight} - \addtolength{\ta@temp}{-\paperwidth} - \addtolength{\ta@temp}{\ta@bcor} - \divide\ta@temp 3\relax - \ta@modiv{\paperheight}{\ta@temp} - \fi - \fi - \ifnum\ta@div<4 - \typeout{DIV calculation for typearea with good linewidth.} - \setlength{\textwidth}{\paperwidth} - \addtolength{\textwidth}{-\ta@bcor} - \ta@temp@goodwidth - \if@twocolumn - \addtolength{\ta@temp}{\ta@temp} - \addtolength{\ta@temp}{\columnsep} + \xdef\@tempa{\ta@divlist{}}% + \ta@div=#1\relax + \@whilenum \ta@div >-9 \do {% + \ifx\@tempa\empty + \else \xdef\@tempa{\expandafter\@cdr\@tempa\@nil}\fi + \advance\ta@div by-1 + }% + \ifx\@tempa\empty + \ta@div=10 \advance\ta@div by#1 + \PackageWarningNoLine{typearea}{% + DIV for \the\ta@div pt and used papersize\MessageBreak + not defined!\MessageBreak + Using DIV=\ta@divlistelse + }% + \ta@div=\ta@divlistelse\relax + \else + \xdef\@tempa{\expandafter\@car\@tempa\@nil}% + \ifx\@tempa\empty + \ta@div=\ta@divlistelse\relax + \else + \ta@div=\@tempa\relax + \fi + \fi \fi - \setlength{\ta@hblk}{\paperwidth} - \addtolength{\ta@hblk}{-\ta@temp} - \divide\ta@hblk by 3 - \ifdim \ta@hblk<\z@\relax - \setlength{\ta@hblk}{5mm} +} +\newcommand*\typearea[2][\z@]{% + \edef\@tempa{#1}\edef\@tempb{current}\ifx\@tempa\@tempb\else + \setlength{\ta@bcor}{#1}% \fi - \if@mincl - \setlength{\ta@temp}{.75\ta@hblk} - \else - \setlength{\ta@temp}{\ta@hblk} - \fi - \ta@modiv{\paperwidth}{\ta@temp} - \@typearea - \setlength{\ta@temp}{-1in} - \addtolength{\ta@temp}{5mm} - \ifdim\topmargin<\ta@temp - \setlength{\ta@temp}{15mm} - \if@hincl\else - \addtolength{\ta@temp}{\headheight} - \addtolength{\ta@temp}{\headsep} - \fi - \if@fincl\else - \addtolength{\ta@temp}{\footskip} - \fi - \divide\ta@temp by3\relax - \ta@modiv{\paperheight}{\ta@temp} + \edef\@tempa{#2}% + \def\@tempb{last}\ifx\@tempa\@tempb\let\@tempa=\@lastdiv + \ifx\csname @tempa\endcsname\relax + \def\@tempa{current}% + \fi \fi - \fi - \@typearea - \ta@temp@goodwidth - \if@twocolumn - \addtolength{\ta@temp}{\ta@temp}% - \addtolength{\ta@temp}{\columnsep}% - \fi - \setlength{\@tempdima}{\ta@temp}% - \addtolength{\ta@temp}{-\textwidth}% - \divide\@tempdima 100\relax - \divide\ta@temp\@tempdima - \@tempcnta\ta@temp - \ifnum\@tempcnta<5\relax - \ifnum\@tempcnta>-5\relax - \@tempcnta=0 + \def\@tempb{areaset}\ifx\@tempa\@tempb + \areaset[current]{\textwidth}{\textheight}% \else - \advance\@tempcnta 4 - \fi - \else - \advance\@tempcnta -4 - \fi - \ifnum\@tempcnta<-15\relax - \PackageWarningNoLine{typearea} - {Bad DIV-value!\MessageBreak - You should decrease DIV, increase fontsize or\MessageBreak - change papersize} - \else\ifnum\@tempcnta>15\relax - \PackageWarningNoLine{typearea} - {Bad DIV-value!\MessageBreak - You should increase DIV, decrease fontsize or\MessageBreak - change papersize} - \fi\fi - \ifnum\ta@div<6\relax - \PackageWarningNoLine{typearea} - {Very low DIV-value!\MessageBreak - DIV-values less than 6 result in textwidth/-height\MessageBreak - smaller than total marginwidth/-height.\MessageBreak - You should 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\string\columnwidth\space\space\space\space=% - \space\the\columnwidth\MessageBreak - \space\string\columnsep\space\space\space\space\space\space=% - \space\the\columnsep\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 - } - \@typearea@end} -\newcommand\@typearea@end{} -\AtBeginDocument{% - \renewcommand\@typearea@end{% - \PackageWarning{typearea} - {Typearea changed!\MessageBreak - You should do this only at preamble, because only\MessageBreak - \protect\begin{document} calculates output dimensions!\MessageBreak - Trying to calculate new output dimensions, but\MessageBreak - this is only a dirty hack} - \clearpage - \@colht\textheight - \@colroom\textheight \vsize\textheight - \columnwidth\textwidth - \if@twocolumn - \advance\columnwidth -\columnsep - \divide\columnwidth\tw@ \hsize\columnwidth \@firstcolumntrue + \def\@tempb{current}\ifx\@tempa\@tempb\else + \def\@tempb{default}\ifx\@tempa\@tempb\ta@div=0 \else + \def\@tempb{calc}\ifx\@tempa\@tempb\ta@div=2 \else + \def\@tempb{classic}\ifx\@tempa\@tempb\ta@div=3 \else + \ta@div=\@tempa + \fi + \fi + \fi + \fi + \edef\@lastdiv{\the\ta@div}% + \if@atdocument\newpage\fi + \normalsize + \@ifundefined{ta@hh}{% + \headheight=1.25\baselineskip + }{% + \headheight=\ta@hh + }% + \headsep=1.5\baselineskip + \footskip=3.5\baselineskip + \marginparsep=1cc + \marginparpush=0.45\baselineskip + \ifnum\ta@div=\z@ + \@ifundefined{@ptsize}{% + \@tempdima=\f@size pt + \advance\@tempdima by.5pt + \ta@div=\@tempdima + \divide\ta@div by65536 + \advance\ta@div by-10 + \xdef\@ptsize{\the\ta@div}% + \PackageWarningNoLine{typearea}{% + \string\@ptsize\space not defined!\MessageBreak + Fontsize ist \f@size.\MessageBreak + Defining \string\@ptsize\space to \@ptsize% + }% + }{}% + \ta@divfor{\@ptsize}% + \fi + \ifnum\ta@div=3 + \typeout{DIV calculation for classic typearea.}% + \setlength{\ta@temp}{\paperwidth}% + \addtolength{\ta@temp}{-\ta@bcor}% + \if@hincl\else + \addtolength{\ta@temp}{\headheight}% + \addtolength{\ta@temp}{\headsep}% + \fi + \if@fincl\else + \addtolength{\ta@temp}{\footskip}% + \fi + \ifdim \ta@temp >\paperheight + \PackageWarningNoLine{typearea}{% + No classic typearea with this papersize!\MessageBreak + Using calculated DIV% + }% + \ta@div=\@ne + \else + \setlength{\ta@temp}{\paperheight}% + \addtolength{\ta@temp}{-\paperwidth}% + \addtolength{\ta@temp}{\ta@bcor}% + \divide\ta@temp by3 + \ta@modiv{\paperheight}{\ta@temp}% + \fi + \fi + \ifnum\ta@div <4 + \typeout{DIV calculation for typearea with good linewidth.}% + \setlength{\textwidth}{\paperwidth}% + \addtolength{\textwidth}{-\ta@bcor}% + \ta@temp@goodwidth + \if@twocolumn + \addtolength{\ta@temp}{\ta@temp}% + \addtolength{\ta@temp}{\columnsep}% + \fi + \setlength{\ta@hblk}{\paperwidth}% + \addtolength{\ta@hblk}{-\ta@temp}% + \divide\ta@hblk by3 + \ifdim \ta@hblk <\z@ + \setlength{\ta@hblk}{5mm}% + \fi + \if@mincl + \setlength{\ta@temp}{.75\ta@hblk}% + \else + \setlength{\ta@temp}{\ta@hblk}% + \fi + \ta@modiv{\paperwidth}{\ta@temp}% + \@typearea + \setlength{\ta@temp}{-1in}% + \addtolength{\ta@temp}{5mm}% + \ifdim\topmargin <\ta@temp + \setlength{\ta@temp}{15mm}% + \if@hincl\else + \addtolength{\ta@temp}{\headheight}% + \addtolength{\ta@temp}{\headsep}% + \fi + \if@fincl\else + \addtolength{\ta@temp}{\footskip}% + \fi + \divide\ta@temp by3 + \ta@modiv{\paperheight}{\ta@temp}% + \fi + \fi + \@typearea + \ta@temp@goodwidth + \if@twocolumn + \addtolength{\ta@temp}{\ta@temp}% + \addtolength{\ta@temp}{\columnsep}% + \fi + \setlength{\@tempdima}{\ta@temp}% + \addtolength{\ta@temp}{-\textwidth}% + \divide\@tempdima by100 + \divide\ta@temp by\@tempdima + \@tempcnta=\ta@temp + \ifnum\@tempcnta <5 + \ifnum\@tempcnta >-5 + \@tempcnta=0 + \else + \advance\@tempcnta by4 + \fi + \else + \advance\@tempcnta by-4 + \fi + \ifnum\@tempcnta <-15 + \PackageWarningNoLine{typearea}{% + 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 + 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 + 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 + }% + \if@atdocument\@typearea@end\fi \fi - \hsize\columnwidth \linewidth\hsize - }} -\newcommand*\areaset[3][\z@]{ +} +\AtEndOfPackage{\newcommand*{\recalctypearea}{\typearea[current]{last}}} +\newcommand*\areaset[3][\z@]{% \edef\@tempa{#1}\edef\@tempb{current}\ifx\@tempa\@tempb\else - \setlength{\ta@bcor}{#1} + \setlength{\ta@bcor}{#1}% \fi - \textwidth #2 - \textheight #3 - \ta@hblk \paperwidth - \advance\ta@hblk by -\ta@bcor - \advance\ta@hblk by -\textwidth - \divide\ta@hblk by 3 - \oddsidemargin -1in - \evensidemargin -1in + \if@atdocument\newpage\fi + \setlength{\textwidth}{#2}% + \setlength{\textheight}{#3}% + \def\@lastdiv{areaset}% + \ta@hblk=\paperwidth + \advance\ta@hblk by-\ta@bcor + \advance\ta@hblk by-\textwidth + \divide\ta@hblk by3 + \oddsidemargin=-1in + \evensidemargin=-1in \if@twoside - \advance\oddsidemargin by \ta@hblk - \advance\oddsidemargin by \ta@bcor - \advance\evensidemargin by 2\ta@hblk + \advance\oddsidemargin by\ta@hblk + \advance\oddsidemargin by\ta@bcor + \advance\evensidemargin by2\ta@hblk \else - \advance\oddsidemargin by 1.5\ta@hblk - \advance\oddsidemargin by \ta@bcor + \advance\oddsidemargin by1.5\ta@hblk + \advance\oddsidemargin by\ta@bcor \evensidemargin\oddsidemargin \fi - \headheight 15\p@ + \headheight=15\p@ \advance\headheight by\f@size\p@ \advance\headheight by-10\p@ - \headsep 1.5\baselineskip - \footskip 3.5\baselineskip - \ta@vblk \paperheight - \advance\ta@vblk by -\textheight - \divide\ta@vblk by 3 + \headsep=1.5\baselineskip + \footskip=3.5\baselineskip + \ta@vblk=\paperheight + \advance\ta@vblk by-\textheight + \divide\ta@vblk by3 \if@hincl - \advance\textheight by -\headheight - \advance\textheight by -\headsep + \advance\textheight by-\headheight + \advance\textheight by-\headsep \fi \if@fincl - \advance\textheight by -\footskip + \advance\textheight by-\footskip \fi \topmargin \ta@vblk - \advance\topmargin by -1in + \advance\topmargin by-1in \if@hincl \else - \advance\topmargin by -\headheight - \advance\topmargin by -\headsep + \advance\topmargin by-\headheight + \advance\topmargin by-\headsep \fi \if@twoside - \marginparwidth 1.5\ta@hblk + \marginparwidth=1.5\ta@hblk \else - \marginparwidth \ta@hblk + \marginparwidth=\ta@hblk \fi - \marginparsep 1cc - \marginparpush 0.45\baselineskip - \@areaset@end} -\newcommand\@areaset@end{\@typearea@end} -\newcommand*{\ta@divfor}[1]{ - \if@mincl - \PackageInfo{typearea}{% - With option `mpinclude' there are no predefined\MessageBreak - DIV-values. Using DIV calculation for good line\MessageBreak - width} - \ta@div=2 - \else - \xdef\@tempa{\ta@divlist{}} - \ta@div=#1\relax - \@whilenum \ta@div >-9 \do {% - \ifx\@tempa\empty \relax% - \else \xdef\@tempa{\expandafter\@cdr\@tempa\@nil}% - \fi - \advance\ta@div by -1 - } - \ifx\@tempa\empty - \ta@div=10\advance\ta@div by#1\relax - \PackageWarningNoLine{typearea}{% - DIV for \the\ta@div pt and used papersize\MessageBreak - not defined!\MessageBreak - Using DIV=\ta@divlistelse} - \ta@div=\ta@divlistelse\relax - \else - \xdef\@tempa{\expandafter\@car\@tempa\@nil} - \ifx\@tempa\empty - \ta@div=\ta@divlistelse\relax - \else - \ta@div=\@tempa\relax - \fi - \fi - \fi} + \marginparsep=1cc + \marginparpush=0.45\baselineskip + \if@atdocument\@typearea@end\fi +} \typearea[current]{current} +%%% From File: scrlogo.dtx \@ifundefined{KOMAScript}{% \DeclareRobustCommand{\KOMAScript}{\textsf{K\kern.05em O\kern.05em% M\kern.05em A\kern.1em-\kern.1em Script}}}{} |