diff options
author | Karl Berry <karl@freefriends.org> | 2007-10-11 23:46:49 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2007-10-11 23:46:49 +0000 |
commit | 82dc50c595ce8268fd46c4af7ce77bf20af120d0 (patch) | |
tree | 6c051b86aedada971bc69a4cd18495683df13e8b /Master/texmf-dist/tex/latex/koma-script/scrlttr2.cls | |
parent | bc91a8ed9ae14ad4f0805df6c244b55063d69414 (diff) |
koma-script 2.97c (10oct07)
git-svn-id: svn://tug.org/texlive/trunk@5160 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/koma-script/scrlttr2.cls')
-rw-r--r-- | Master/texmf-dist/tex/latex/koma-script/scrlttr2.cls | 859 |
1 files changed, 454 insertions, 405 deletions
diff --git a/Master/texmf-dist/tex/latex/koma-script/scrlttr2.cls b/Master/texmf-dist/tex/latex/koma-script/scrlttr2.cls index 5d7e1758a34..6049ff40a0d 100644 --- a/Master/texmf-dist/tex/latex/koma-script/scrlttr2.cls +++ b/Master/texmf-dist/tex/latex/koma-script/scrlttr2.cls @@ -91,7 +91,7 @@ \fi } \fi - \@CheckKOMAScriptVersion{2007/03/07 v2.97a KOMA-Script}% + \@CheckKOMAScriptVersion{2007/09/28 v2.97c KOMA-Script}% \endgroup \newcommand*{\KOMAClassName}{% scrlttr2% @@ -107,7 +107,7 @@ %%% From File: scrkcomp.dtx \newcommand*{\scr@compatibility}{0} \KOMA@key{version}[last]{% - \scr@ifundefined{scr@v@#1}{% + \scr@ifundefinedorrelax{scr@v@#1}{% \def\scr@compatibility{0}% \ClassWarningNoLine{\KOMAClassName}{% You have set option `version' to value `#1', but\MessageBreak @@ -139,6 +139,8 @@ \@namedef{scr@v@2.96a}{3} \@namedef{scr@v@2.97}{3} \@namedef{scr@v@2.97a}{3} +\@namedef{scr@v@2.97b}{3} +\@namedef{scr@v@2.97c}{3} \@namedef{scr@v@last}{3} %%% From File: scrkmisc.dtx \KOMA@key{draft}[true]{% @@ -153,10 +155,15 @@ %%% From File: scrklco.dtx \newcommand*{\lco@test}{% \IfFileExists{\CurrentOption.lco}{% - \let\scr@pti@nerr@r\@gobble - \expandafter\AtEndOfClass\expandafter{\expandafter\LoadLetterOption - \expandafter{\CurrentOption}}% - }% + \expandafter\AtEndOfClass\expandafter{% + \expandafter\LoadLetterOption\expandafter{\CurrentOption}% + }% + \expandafter\def\expandafter\scr@pti@nerr@r\expandafter{% + \expandafter\def\expandafter\scr@pti@nerr@r\expandafter{% + \scr@pti@nerr@r + }% + }% + }{}% } \AtEndOfClass{\LoadLetterOption{DIN}} %%% From File: scrklang.dtx @@ -179,12 +186,12 @@ \def\@pt@@scan #1pt#2\@pt@@scan{% \ifstr{#2}{pt}{% \ifnumber{#1}{% - \KOMA@UseObsolete{option}{\PackageInfo}{#1#2}{fontsize=#1#2}% + \KOMA@UseObsoleteOption{\PackageInfo}{#1#2}{fontsize=#1#2}% }{\@headlines}% }{\@headlines}% } \KOMA@key{fontsize}{% - \scr@ifundefined{changefontsizes}{% + \scr@ifundefinedorrelax{changefontsizes}{% \@defaultunits\@tempdima#1pt\relax\@nnil \edef\@ptsize{#1}% }{% @@ -251,31 +258,9 @@ \newcommand*{\scr@pti@nerr@r}{ \OptionNotUsed } -\KOMA@key{headlines}{% - \PassOptionsToPackage{headlines=#1}{typearea}% -} -\KOMA@key{headinclude}[true]{\PassOptionsToPackage{headinclude=#1}{typearea}} -\KOMA@key{footinclude}[true]{\PassOptionsToPackage{footinclude=#1}{typearea}} -\KOMA@key{mpinclude}[true]{\PassOptionsToPackage{mpinclude=#1}{typearea}} -\KOMA@key{BCOR}{% - \PassOptionsToPackage{BCOR=#1}{typearea}% -} -\KOMA@key{DIV}[calc]{% - \PassOptionsToPackage{DIV=#1}{typearea}% -} -\KOMA@key{twoside}[true]{% - \KOMA@set@ifkey{twoside}{@twoside}{#1}% - \if@twoside\@mparswitchtrue\else\@mparswitchfalse\fi% -} -\KOMA@key{twocolumn}[true]{% - \KOMA@set@ifkey{twocolumn}{@twocolumn}{#1}% -} -\KOMA@key{pagesize}[auto]{% - \PassOptionsToPackage{pagesize=#1}{typearea}% -} -\KOMA@key{paper}{% - \PassOptionsToPackage{paper=#1}{typearea}% -} +\DeclareOption*{% + \lco@test + \x@paper} %%% From File: scrkpar.dtx \newcommand*{\setparsizes}[3]{% \edef\f@parindent{\the\parindent}% @@ -395,9 +380,7 @@ \KOMA@set@ifkey{headsepline}{@hsl}{#1}% \@ifpackageloaded{typearea}{% \KOMAoptions{headinclude=#1}% - }{% - \PassOptionsToPackage{headinclude=#1}{typearea}% - }% + }{}% } \KOMA@DeclareObsoleteOption[\PackageInfo]{headnosepline}{headsepline=false} \newif\if@fsl @@ -405,11 +388,10 @@ \KOMA@set@ifkey{footsepline}{@fsl}{#1}% \@ifpackageloaded{typearea}{% \KOMAoptions{footinclude=#1}% - }{% - \PassOptionsToPackage{footinclude=#1}{typearea}% - }% + }{}% } \KOMA@DeclareObsoleteOption[\PackageInfo]{footnosepline}{footsepline=false} +\@twosidefalse \KOMA@key{cleardoublepage}{% \begingroup% \def\@tempc{% @@ -503,10 +485,10 @@ \KOMA@set@ncmdkey{locfield}{@tempa}{{wide}{0},{narrow}{1}}{#1}% \ifcase\@tempa \endgroup - \@biglocfalse + \@bigloctrue \else \endgroup - \@bigloctrue + \@biglocfalse \fi } \DeclareOption{wlocfield}{\@ObsoleteOption{locfield=wide}} @@ -525,29 +507,40 @@ \@refwidefalse \fi } +\newcommand{\subject@format}[1]{#1} +\newcommand*{\raggedsubject}{} \newif\if@subj \newif\if@subjafter \KOMA@key{subject}{% \begingroup - \KOMA@set@ncmdkey{locfield}{@tempa}{% + \KOMA@set@ncmdkey{subject}{@tempa}{% {titled}{0},% {untitled}{1},% {afteropening}{2},% - {beforeopening}{3}% + {beforeopening}{3},% + {underlined}{4},% + {left}{5},% + {right}{6},% + {centered}{7}% }{#1}% \ifcase\@tempa - \endgroup - \@subjtrue + \aftergroup\@subjtrue \or - \endgroup - \@subjfalse + \aftergroup\@subjfalse \or - \endgroup - \@subjaftertrue - \else - \endgroup - \@subjafterfalse + \aftergroup\@subjaftertrue + \or + \aftergroup\@subjafterfalse + \or + \aftergroup\let\aftergroup\subject@format\aftergroup\underline + \or + \aftergroup\let\aftergroup\raggedsubject\aftergroup\raggedright + \or + \aftergroup\let\aftergroup\raggedsubject\aftergroup\raggedleft + \or + \aftergroup\let\aftergroup\raggedsubject\aftergroup\centering \fi + \endgroup } \KOMA@ifkey{enlargefirstpage}{@enlargefp} \newcommand*{\@pageat}{4} @@ -594,17 +587,10 @@ } %%% 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% +\KOMAExecuteOptions{% + parskip=false% } -\ProcessOptions\relax +\KOMAProcessOptions\relax %%% From File: scrkcomp.dtx \expandafter\ifnum \@nameuse{scr@v@2.95}>\scr@compatibility \newcommand*{\@setif}[2][]{% @@ -622,228 +608,243 @@ \ClassWarning{\KOMAClassName}{% Using fallback calculation to setup font sizes\MessageBreak for basic size `#2'}% - \@defaultunits\@tempdima#2pt\relax\@nnil - \setlength{\@tempdimc}{\@tempdima}% - \addtolength{\@tempdimc}{-10\p@}% - \edef\@ptsize{\strip@pt\@tempdimc}% - \@defaultunits\@tempdimb#1pt\relax\@nnil - \setlength{\@tempdimc}{\dimexpr (100\@tempdimb / \@tempdima * \p@)}% - \edef\@tempb{\the\@tempdimc}% - \setlength{\@tempdimc}{\@tempdima}% - \def\@tempa##1##2##3##4##5\@nnil{\def##1{##2.##3##4}}% - \expandafter\@tempa\expandafter\@tempb\@tempb\@nnil% - \setlength{\abovedisplayskip}{% - \@tempdima \@plus .25\@tempdima \@minus .58\@tempdima}% - \setlength{\abovedisplayshortskip}{\z@ \@plus .25\@tempdima}% - \setlength{\belowdisplayskip}{\abovedisplayskip}% - \setlength{\belowdisplayshortskip}{% - .55\@tempdima \@plus .3\@tempdima \@minus .25\@tempdima}% - \edef\normalsize{% - \noexpand\@setfontsize\noexpand\normalsize + \scr@ifundefinedorrelax{dimexpr}{% + \ClassError{\KOMAClassName}{% + feature only allowed using e-TeX% + }{% + The fallback calculation to setup font sizes was implemented + using e-TeX.\MessageBreak + You should not continue, because the fallback calculation would fail% + } + }{% + \@defaultunits\@tempdima#2pt\relax\@nnil + \setlength{\@tempdimc}{\@tempdima}% + \addtolength{\@tempdimc}{-10\p@}% + \edef\@ptsize{\strip@pt\@tempdimc}% + \@defaultunits\@tempdimb#1pt\relax\@nnil + \setlength{\@tempdimc}{\dimexpr (100\@tempdimb / \@tempdima * \p@)}% + \edef\@tempb{\the\@tempdimc}% + \setlength{\@tempdimc}{\@tempdima}% + \def\@tempa##1##2##3##4##5\@nnil{\def##1{##2.##3##4}}% + \expandafter\@tempa\expandafter\@tempb\@tempb\@nnil% + \setlength{\abovedisplayskip}{% + \@tempdima \@plus .25\@tempdima \@minus .58\@tempdima}% + \setlength{\abovedisplayshortskip}{\z@ \@plus .25\@tempdima}% + \setlength{\belowdisplayskip}{\abovedisplayskip}% + \setlength{\belowdisplayshortskip}{% + .55\@tempdima \@plus .3\@tempdima \@minus .25\@tempdima}% + \edef\normalsize{% + \noexpand\@setfontsize\noexpand\normalsize {\the\@tempdima}{\the\@tempdimb}% - \abovedisplayskip \the\abovedisplayskip - \abovedisplayshortskip \the\abovedisplayshortskip - \belowdisplayskip \the\belowdisplayskip - \belowdisplayshortskip \the\belowdisplayshortskip - \let\noexpand\@listi\noexpand\@listI - }% - \setlength{\@tempdima}{0.9125\@tempdimc}% - \setlength{\@tempdimb}{\@tempb\@tempdima}% - \setlength{\abovedisplayskip}{% - \@tempdima \@plus .25\@tempdima \@minus .58\@tempdima}% - \setlength{\abovedisplayshortskip}{\z@ \@plus .25\@tempdima}% - \setlength{\belowdisplayskip}{\abovedisplayskip}% - \setlength{\belowdisplayshortskip}{% - .55\@tempdima \@plus .3\@tempdima \@minus .25\@tempdima}% - \edef\small{% - \noexpand\@setfontsize\noexpand\small + \abovedisplayskip \the\abovedisplayskip + \abovedisplayshortskip \the\abovedisplayshortskip + \belowdisplayskip \the\belowdisplayskip + \belowdisplayshortskip \the\belowdisplayshortskip + \let\noexpand\@listi\noexpand\@listI + }% + \setlength{\@tempdima}{0.9125\@tempdimc}% + \setlength{\@tempdimb}{\@tempb\@tempdima}% + \setlength{\abovedisplayskip}{% + \@tempdima \@plus .25\@tempdima \@minus .58\@tempdima}% + \setlength{\abovedisplayshortskip}{\z@ \@plus .25\@tempdima}% + \setlength{\belowdisplayskip}{\abovedisplayskip}% + \setlength{\belowdisplayshortskip}{% + .55\@tempdima \@plus .3\@tempdima \@minus .25\@tempdima}% + \edef\small{% + \noexpand\@setfontsize\noexpand\small {\the\@tempdima}{\the\@tempdimb}% - \abovedisplayskip \the\abovedisplayskip - \abovedisplayshortskip \the\abovedisplayshortskip - \belowdisplayskip \the\belowdisplayskip - \belowdisplayshortskip \the\belowdisplayshortskip - \let\noexpand\@listi\noexpand\@listi@small - }% - \setlength{\@tempdima}{.83334\@tempdimc}% - \setlength{\@tempdimb}{\@tempb\@tempdima}% - \setlength{\abovedisplayskip}{% - \@tempdima \@plus .25\@tempdima \@minus .58\@tempdima}% - \setlength{\abovedisplayshortskip}{\z@ \@plus .25\@tempdima}% - \setlength{\belowdisplayskip}{\abovedisplayskip}% - \setlength{\belowdisplayshortskip}{% - .55\@tempdima \@plus .3\@tempdima \@minus .25\@tempdima}% - \edef\footnotesize{% - \noexpand\@setfontsize\noexpand\footnotesize + \abovedisplayskip \the\abovedisplayskip + \abovedisplayshortskip \the\abovedisplayshortskip + \belowdisplayskip \the\belowdisplayskip + \belowdisplayshortskip \the\belowdisplayshortskip + \let\noexpand\@listi\noexpand\@listi@small + }% + \setlength{\@tempdima}{.83334\@tempdimc}% + \setlength{\@tempdimb}{\@tempb\@tempdima}% + \setlength{\abovedisplayskip}{% + \@tempdima \@plus .25\@tempdima \@minus .58\@tempdima}% + \setlength{\abovedisplayshortskip}{\z@ \@plus .25\@tempdima}% + \setlength{\belowdisplayskip}{\abovedisplayskip}% + \setlength{\belowdisplayshortskip}{% + .55\@tempdima \@plus .3\@tempdima \@minus .25\@tempdima}% + \edef\footnotesize{% + \noexpand\@setfontsize\noexpand\footnotesize {\the\@tempdima}{\the\@tempdimb}% - \abovedisplayskip \the\abovedisplayskip - \abovedisplayshortskip \the\abovedisplayshortskip - \belowdisplayskip \the\belowdisplayskip - \belowdisplayshortskip \the\belowdisplayshortskip - \let\noexpand\@listi\noexpand\@listi@footnotesize - }% - \setlength{\@tempdima}{.66667\@tempdimc}% - \setlength{\@tempdimb}{\@tempb\@tempdima}% - \edef\scriptsize{% - \noexpand\@setfontsize\noexpand\scriptsize + \abovedisplayskip \the\abovedisplayskip + \abovedisplayshortskip \the\abovedisplayshortskip + \belowdisplayskip \the\belowdisplayskip + \belowdisplayshortskip \the\belowdisplayshortskip + \let\noexpand\@listi\noexpand\@listi@footnotesize + }% + \setlength{\@tempdima}{.66667\@tempdimc}% + \setlength{\@tempdimb}{\@tempb\@tempdima}% + \edef\scriptsize{% + \noexpand\@setfontsize\noexpand\scriptsize {\the\@tempdima}{\the\@tempdimb}% - }% - \setlength{\@tempdima}{.5\@tempdimc}% - \setlength{\@tempdimb}{\@tempb\@tempdima}% - \edef\tiny{% - \noexpand\@setfontsize\noexpand\tiny + }% + \setlength{\@tempdima}{.5\@tempdimc}% + \setlength{\@tempdimb}{\@tempb\@tempdima}% + \edef\tiny{% + \noexpand\@setfontsize\noexpand\tiny {\the\@tempdima}{\the\@tempdimb}% - }% - \setlength{\@tempdima}{1.2\@tempdimc}% - \setlength{\@tempdimb}{\@tempb\@tempdima}% - \edef\large{% - \noexpand\@setfontsize\noexpand\large + }% + \setlength{\@tempdima}{1.2\@tempdimc}% + \setlength{\@tempdimb}{\@tempb\@tempdima}% + \edef\large{% + \noexpand\@setfontsize\noexpand\large {\the\@tempdima}{\the\@tempdimb}% - }% - \setlength{\@tempdima}{1.44\@tempdimc}% - \setlength{\@tempdimb}{\@tempb\@tempdima}% - \edef\Large{% - \noexpand\@setfontsize\noexpand\Large + }% + \setlength{\@tempdima}{1.44\@tempdimc}% + \setlength{\@tempdimb}{\@tempb\@tempdima}% + \edef\Large{% + \noexpand\@setfontsize\noexpand\Large {\the\@tempdima}{\the\@tempdimb}% - }% - \setlength{\@tempdima}{1.728\@tempdimc}% - \setlength{\@tempdimb}{\@tempb\@tempdima}% - \edef\LARGE{% - \noexpand\@setfontsize\noexpand\LARGE + }% + \setlength{\@tempdima}{1.728\@tempdimc}% + \setlength{\@tempdimb}{\@tempb\@tempdima}% + \edef\LARGE{% + \noexpand\@setfontsize\noexpand\LARGE {\the\@tempdima}{\the\@tempdimb}% - }% - \setlength{\@tempdima}{2.074\@tempdimc}% - \setlength{\@tempdimb}{\@tempb\@tempdima}% - \edef\huge{% - \noexpand\@setfontsize\noexpand\huge + }% + \setlength{\@tempdima}{2.074\@tempdimc}% + \setlength{\@tempdimb}{\@tempb\@tempdima}% + \edef\huge{% + \noexpand\@setfontsize\noexpand\huge {\the\@tempdima}{\the\@tempdimb}% - }% - \setlength{\@tempdima}{2.488\@tempdimc}% - \setlength{\@tempdimb}{\@tempb\@tempdima}% - \edef\Huge{% - \noexpand\@setfontsize\noexpand\Huge + }% + \setlength{\@tempdima}{2.488\@tempdimc}% + \setlength{\@tempdimb}{\@tempb\@tempdima}% + \edef\Huge{% + \noexpand\@setfontsize\noexpand\Huge {\the\@tempdima}{\the\@tempdimb}% + }% + \normalsize + \setlength{\footnotesep}{.7\@tempdimc}% + \setlength{\skip\footins}{.9\@tempdimc \@plus .3333\@tempdimc \@minus + .6\@tempdimc}% + \setlength{\floatsep}{\@tempdimc \@plus .1667\@tempdimc \@minus + .3333\@tempdimc}% + \setlength{\textfloatsep}{1.6667\@tempdimc \@plus .1667\@tempdimc \@minus + .3333\@tempdimc}% + \setlength{\intextsep}{\@tempb\@tempdimc \@plus .3333\@tempdimc \@minus + .3333\@tempdimc}% + \setlength{\dblfloatsep}{\@tempb\@tempdimc \@plus .1667\@tempdimc \@minus + .3333\@tempdimc}% + \setlength{\dbltextfloatsep}{\textfloatsep}% + \setlength{\@fptop}{0\p@ \@plus 1fil}% + \setlength{\@fpsep}{.8333\@tempdimc \@plus 2fil}% + \setlength{\@fpbot}{\@fptop}% + \setlength{\@dblfptop}{0\p@ \@plus 1fil}% + \setlength{\@dblfpsep}{.8333\@tempdimc \@plus 2fil}% + \setlength{\@dblfpbot}{\@fptop}% + \setlength{\partopsep}{.25\@tempdimc \@plus .16667\@tempdimc \@minus + .16667\@tempdimc}% + \setlength{\topsep}{.8333\@tempdimc \@plus .3333\@tempdimc \@minus + .5\@tempdimc}% + \setlength{\parsep}{.4167\@tempdimc \@plus .2083\@tempdimc \@minus \p@}% + \@tempswafalse + \begingroup + \def\@list@extra{\aftergroup\@tempswatrue}% + \csname @listi\endcsname + \endgroup + \edef\@listi{\leftmargin\leftmargini + \topsep \the\topsep + \parsep \the\parsep + \itemsep \parsep + \if@tempswa\noexpand\@list@extra\fi + }% + \let\@listI\@listi + \setlength{\topsep}{.75\@tempdimc \@plus .25\@tempdimc \@minus + .41667\@tempdimc}% + \setlength{\parsep}{.375\@tempdimc \@plus .16667\@tempdimc \@minus \p@}% + \@tempswafalse + \begingroup + \def\@list@extra{\aftergroup\@tempswatrue}% + \csname @listi\endcsname + \endgroup + \edef\@listi@small{\leftmargin\leftmargini + \topsep \the\topsep + \parsep \the\parsep + \itemsep \parsep + \if@tempswa\noexpand\@list@extra\fi + }% + \setlength{\topsep}{.5\@tempdimc \@plus .16667\@tempdimc \@minus + .16667\@tempdimc}% + \setlength{\parsep}{.25\@tempdimc \@plus .16667\@tempdimc \@minus \p@}% + \@tempswafalse + \begingroup + \def\@list@extra{\aftergroup\@tempswatrue}% + \csname @listi\endcsname + \endgroup + \edef\@listi@footnotesize{\leftmargin\leftmargini + \topsep \the\topsep + \parsep \the\parsep + \itemsep \parsep + \if@tempswa\noexpand\@list@extra\fi + }% + \setlength{\topsep}{.4167\@tempdimc \@plus .2083\@tempdimc \@minus \p@}% + \setlength{\parsep}{.2083\@tempdimc \@plus \p@ \@minus \p@}% + \@tempswafalse + \begingroup + \def\@list@extra{\aftergroup\@tempswatrue}% + \csname @listii\endcsname + \endgroup + \edef\@listii{\leftmargin\leftmarginii + \labelwidth=\dimexpr \leftmargin-\labelsep + \topsep \the\topsep + \parsep \the\parsep + \itemsep \parsep + \if@tempswa\noexpand\@list@extra\fi + }% + \setlength{\topsep}{.2083\@tempdimc \@plus \p@ \@minus \p@}% + \setlength{\parsep}{\p@ \@plus\z@ \@minus\p@}% + \@tempswafalse + \begingroup + \def\@list@extra{\aftergroup\@tempswatrue}% + \csname @listiii\endcsname + \endgroup + \edef\@listiii{\leftmargin\leftmarginiii + \labelwidth=\dimexpr \leftmargin-\labelsep + \topsep \the\topsep + \parsep \z@ + \partopsep \the\parsep + \itemsep \topsep + \if@tempswa\noexpand\@list@extra\fi + }% + \@tempswafalse + \begingroup + \def\@list@extra{\aftergroup\@tempswatrue}% + \csname @listiv\endcsname + \endgroup + \def\@listiv{\leftmargin\leftmarginiv + \labelwidth=\dimexpr \leftmargin-\labelsep + \if@tempswa\noexpand\@list@extra\fi + }% + \@tempswafalse + \begingroup + \def\@list@extra{\aftergroup\@tempswatrue}% + \csname @listv\endcsname + \endgroup + \def\@listv{\leftmargin\leftmarginv + \labelwidth=\dimexpr \leftmargin-\labelsep + \if@tempswa\noexpand\@list@extra\fi + }% + \@tempswafalse + \begingroup + \def\@list@extra{\aftergroup\@tempswatrue}% + \csname @listvi\endcsname + \endgroup + \def\@listvi{\leftmargin\leftmarginvi + \labelwidth=\dimexpr \leftmargin-\labelsep + \if@tempswa\noexpand\@list@extra\fi + }% + \@listi + \setlength{\@tempdimb}{\@tempb\@tempdima}% + \setlength{\@tempdima}{\dimexpr \@tempdimb-\@tempdimc}% + \setlength\intextsep{\@tempdimb \@plus.2\@tempdima \@minus.2\@tempdima}% + \setlength\dblfloatsep\intextsep + \setlength\partopsep{.2\@tempdimc \@plus.1\@tempdimc \@minus.1\@tempdimc}% }% - \normalsize - \setlength{\footnotesep}{.7\@tempdimc}% - \setlength{\skip\footins}{.9\@tempdimc \@plus .3333\@tempdimc \@minus - .6\@tempdimc}% - \setlength{\floatsep}{\@tempdimc \@plus .1667\@tempdimc \@minus - .3333\@tempdimc}% - \setlength{\textfloatsep}{1.6667\@tempdimc \@plus .1667\@tempdimc \@minus - .3333\@tempdimc}% - \setlength{\intextsep}{\@tempb\@tempdimc \@plus .3333\@tempdimc \@minus - .3333\@tempdimc}% - \setlength{\dblfloatsep}{\@tempb\@tempdimc \@plus .1667\@tempdimc \@minus - .3333\@tempdimc}% - \setlength{\dbltextfloatsep}{\textfloatsep}% - \setlength{\@fptop}{0\p@ \@plus 1fil}% - \setlength{\@fpsep}{.8333\@tempdimc \@plus 2fil}% - \setlength{\@fpbot}{\@fptop}% - \setlength{\@dblfptop}{0\p@ \@plus 1fil}% - \setlength{\@dblfpsep}{.8333\@tempdimc \@plus 2fil}% - \setlength{\@dblfpbot}{\@fptop}% - \setlength{\partopsep}{.25\@tempdimc \@plus .16667\@tempdimc \@minus - .16667\@tempdimc}% - \setlength{\topsep}{.8333\@tempdimc \@plus .3333\@tempdimc \@minus - .5\@tempdimc}% - \setlength{\parsep}{.4167\@tempdimc \@plus .2083\@tempdimc \@minus \p@}% - \@tempswafalse - \begingroup - \def\@list@extra{\aftergroup\@tempswatrue}% - \csname @listi\endcsname - \endgroup - \edef\@listi{\leftmargin\leftmargini - \topsep \the\topsep - \parsep \the\parsep - \itemsep \parsep - \if@tempswa\noexpand\@list@extra\fi - }% - \let\@listI\@listi - \setlength{\topsep}{.75\@tempdimc \@plus .25\@tempdimc \@minus - .41667\@tempdimc}% - \setlength{\parsep}{.375\@tempdimc \@plus .16667\@tempdimc \@minus \p@}% - \@tempswafalse - \begingroup - \def\@list@extra{\aftergroup\@tempswatrue}% - \csname @listi\endcsname - \endgroup - \edef\@listi@small{\leftmargin\leftmargini - \topsep \the\topsep - \parsep \the\parsep - \itemsep \parsep - \if@tempswa\noexpand\@list@extra\fi - }% - \setlength{\topsep}{.5\@tempdimc \@plus .16667\@tempdimc \@minus - .16667\@tempdimc}% - \setlength{\parsep}{.25\@tempdimc \@plus .16667\@tempdimc \@minus \p@}% - \@tempswafalse - \begingroup - \def\@list@extra{\aftergroup\@tempswatrue}% - \csname @listi\endcsname - \endgroup - \edef\@listi@footnotesize{\leftmargin\leftmargini - \topsep \the\topsep - \parsep \the\parsep - \itemsep \parsep - \if@tempswa\noexpand\@list@extra\fi - }% - \setlength{\topsep}{.4167\@tempdimc \@plus .2083\@tempdimc \@minus \p@}% - \setlength{\parsep}{.2083\@tempdimc \@plus \p@ \@minus \p@}% - \@tempswafalse - \begingroup - \def\@list@extra{\aftergroup\@tempswatrue}% - \csname @listii\endcsname - \endgroup - \edef\@listii{\leftmargin\leftmarginii - \labelwidth=\dimexpr \leftmargin-\labelsep - \topsep \the\topsep - \parsep \the\parsep - \itemsep \parsep - \if@tempswa\noexpand\@list@extra\fi - }% - \setlength{\topsep}{.2083\@tempdimc \@plus \p@ \@minus \p@}% - \setlength{\parsep}{\p@ \@plus\z@ \@minus\p@}% - \@tempswafalse - \begingroup - \def\@list@extra{\aftergroup\@tempswatrue}% - \csname @listiii\endcsname - \endgroup - \edef\@listiii{\leftmargin\leftmarginiii - \labelwidth=\dimexpr \leftmargin-\labelsep - \topsep \the\topsep - \parsep \z@ - \partopsep \the\parsep - \itemsep \topsep - \if@tempswa\noexpand\@list@extra\fi - }% - \@tempswafalse - \begingroup - \def\@list@extra{\aftergroup\@tempswatrue}% - \csname @listiv\endcsname - \endgroup - \def\@listiv{\leftmargin\leftmarginiv - \labelwidth=\dimexpr \leftmargin-\labelsep - \if@tempswa\noexpand\@list@extra\fi - }% - \@tempswafalse - \begingroup - \def\@list@extra{\aftergroup\@tempswatrue}% - \csname @listv\endcsname - \endgroup - \def\@listv{\leftmargin\leftmarginv - \labelwidth=\dimexpr \leftmargin-\labelsep - \if@tempswa\noexpand\@list@extra\fi - }% - \@tempswafalse - \begingroup - \def\@list@extra{\aftergroup\@tempswatrue}% - \csname @listvi\endcsname - \endgroup - \def\@listvi{\leftmargin\leftmarginvi - \labelwidth=\dimexpr \leftmargin-\labelsep - \if@tempswa\noexpand\@list@extra\fi - }% - \@listi } \providecommand*{\@fontsizefilebase}{scrsize} \expandafter\@defaultunits\expandafter\@tempdima\@ptsize pt\relax\@nnil @@ -909,20 +910,6 @@ }% }% } -\scr@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}{% @@ -1536,7 +1523,7 @@ but \expandafter\string\csname date\languagename\endcsname\space not defined!\MessageBreak This seems to be a bug at you're `hyphen.cfg'.\MessageBreak - I'l undefine \string\languagename\space to avoid errors% + Undefining macro \string\languagename\space to avoid errors% }% \let\languagename=\undefined \fi @@ -1755,8 +1742,13 @@ Don't use this KOMA-Script internal macro}% }% } -\newcommand*{\useplength}[1]{% - \expandafter\number\expandafter\csname ltr@len@#1\endcsname} +\scr@ifundefinedorrelax{dimexpr}{% + \newcommand*{\useplength}[1]{% + \number \csname ltx@len@#1\endcsname\relax}% +}{% + \newcommand*{\useplength}[1]{% + \dimexpr \csname ltr@len@#1\endcsname\relax}% +} \newcommand*{\setlengthtoplength}[3][]{% \setlength{#2}{\useplength{#3}}% \setlength{#2}{#1#2}} @@ -1916,79 +1908,79 @@ \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% + `pagehead' and `pagefoot' are aliases for the same^^b8\MessageBreak + font element, changed% } \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 +\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 }% + \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\@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\@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\@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 - } + }% + \let\@evenfoot\@oddfoot +} +\newcommand*{\ps@myheadings}{% + \ps@headings + \let\@mkboth\@gobbletwo +} \pagestyle{plain} \pagenumbering{arabic} \raggedbottom @@ -2185,15 +2177,17 @@ \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}% + \usekomafont{fromrule}{% + \setlength{\@tempdima}{\useplength{fromrulewidth}}% + \ifdim\@tempdima=\z@ + \setlength{\@tempdima}{\textwidth}% + \if@logo + \settowidth{\@tempdimb}{\usekomavar{fromlogo}}% + \addtolength{\@tempdima}{-\@tempdimb}% + \fi \fi - \fi - \expandafter\rule\expandafter{\the\@tempdima}{.4pt}% + \expandafter\rule\expandafter{\the\@tempdima}{% + \useplength{fromrulethickness}}}% \fi }% \\ @@ -2205,11 +2199,13 @@ \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}% + \usekomafont{fromrule}{% + \setlength{\@tempdima}{\useplength{fromrulewidth}}% + \ifdim\@tempdima=\z@ + \setlength{\@tempdima}{\textwidth}% + \fi + \expandafter\rule\expandafter{\the\@tempdima}{% + \useplength{fromrulethickness}}}% \fi \\ }% @@ -2225,11 +2221,13 @@ \usekomavar{fromname}% {% \ifnum\@rulefrom=1\\[-.5\baselineskip]% - \setlength{\@tempdima}{\useplength{fromrulewidth}}% - \ifdim\@tempdima=\z@ - \setlength{\@tempdima}{\textwidth}% - \fi - \expandafter\rule\expandafter{\the\@tempdima}{.4pt}% + \usekomafont{fromrule}{% + \setlength{\@tempdima}{\useplength{fromrulewidth}}% + \ifdim\@tempdima=\z@ + \setlength{\@tempdima}{\textwidth}% + \fi + \expandafter\rule\expandafter{\the\@tempdima}{% + \useplength{fromrulethickness}}}% \fi }% \\ @@ -2241,11 +2239,13 @@ \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}% + \usekomafont{fromrule}{% + \setlength{\@tempdima}{\useplength{fromrulewidth}}% + \ifdim\@tempdima=\z@ + \setlength{\@tempdima}{\textwidth}% + \fi + \expandafter\rule\expandafter{\the\@tempdima}{% + \useplength{fromrulethickness}}}% \fi \\ }% @@ -2261,15 +2261,17 @@ \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}% + \usekomafont{fromrule}{% + \setlength{\@tempdima}{\useplength{fromrulewidth}}% + \ifdim\@tempdima=\z@ + \setlength{\@tempdima}{\textwidth}% + \if@logo + \settowidth{\@tempdimb}{\usekomavar{fromlogo}}% + \addtolength{\@tempdima}{-\@tempdimb}% + \fi \fi - \fi - \expandafter\rule\expandafter{\the\@tempdima}{.4pt}% + \expandafter\rule\expandafter{\the\@tempdima}{% + \useplength{fromrulethickness}}}% \fi }% \\ @@ -2281,11 +2283,13 @@ \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}% + \usekomafont{fromrule}{% + \setlength{\@tempdima}{\useplength{fromrulewidth}}% + \ifdim\@tempdima=\z@ + \setlength{\@tempdima}{\textwidth}% + \fi + \expandafter\rule\expandafter{\the\@tempdima}{% + \useplength{fromrulethickness}}}% \fi \\ }% @@ -2297,14 +2301,24 @@ \renewcommand*{\@alignfrom}{10000}% \renewcommand*{\@firsthead}{\noindent#1}% } +\newkomafont{foldmark}{} \newkomafont{fromname}{} \newkomafont{fromaddress}{} +\newkomafont{fromrule}{} \newkomafont{backaddress}{\sffamily} +\newkomafont{specialmail}{} +\newkomafont{addressee}{} +\newkomafont{toname}{} +\newkomafont{toaddress}{} +\newkomafont{refname}{\sffamily\scriptsize} +\newkomafont{refvalue}{\sffamily\scriptsize} \newkomafont{title}{\normalcolor\sffamily\bfseries} \newkomafont{subject}{\normalcolor\bfseries} \@newplength{foldmarkhpos} \@newplength{tfoldmarkvpos} \@newplength{bfoldmarkvpos} +\@newplength{foldmarkthickness} +\@setplength{foldmarkthickness}{.2pt} \@newplength{toaddrvpos} \@newplength{backaddrheight} \@newplength{toaddrhpos} @@ -2326,6 +2340,8 @@ \@newplength{firstheadwidth} \@newplength{fromrulewidth} \@setplength{fromrulewidth}{0pt} +\@newplength{fromrulethickness} +\@setplength{fromrulethickness}{.4pt} \newcommand*{\@firstfoot}{} \newcommand{\firstfoot}[1]{% \renewcommand*{\@firstfoot}{\noindent#1}% @@ -2362,9 +2378,12 @@ }% } \newcommand*{\@foldmark}[2]{% - \vb@t@z{\vskip #1% + \vb@t@z{\setlength{\@tempdima}{#1}% + \addtolengthplength[-.5]{\@tempdima}{foldmarkthickness}% + \vskip \@tempdima \rlap{\move@topl\hskip\useplength{foldmarkhpos}% - \rule{#2}{.2pt}}}% + \usekomafont{foldmark}{% + \rule{#2}{\useplength{foldmarkthickness}}}}}% \ignorespaces% } \newcommand*{\@foldmarks}{% @@ -2491,15 +2510,18 @@ \ifkomavarempty{specialmail}{}{% \vbox{\hsize\useplength{toaddrwidth}% \noindent\hspace*{\useplength{specialmailindent}}% - \underline{\usekomavar{specialmail}}% + \specialmail@format{% + \usekomafont{specialmail}\usekomavar{specialmail}}% \hspace*{\useplength{specialmailrightindent}}}% }% \vfil% \noindent\hskip\useplength{toaddrindent}% \setlength{\@tempdima}{\useplength{toaddrwidth}}% \addtolengthplength[-2]{\@tempdima}{toaddrindent}% - \vbox{\hsize\@tempdima% - \noindent\usekomavar{toname}\\\usekomavar{toaddress}}% + \vbox{\hsize\@tempdima\raggedright + \usekomafont{addressee}{% + \usekomafont{toname}{\usekomavar{toname}\\}% + \usekomafont{toaddress}{\usekomavar{toaddress}}}}% \vfil\null}% {address field}{toaddrheight}% {\begin{letter} or you\MessageBreak @@ -2511,6 +2533,8 @@ \typeout{Address: No}% \fi } +\newcommand*{\specialmail@format}[1]{} +\let\specialmail@format\underline \newcommand*{\@ogobble}[1][]{} \newcommand*{\@locfield}{% \ifdim \useplength{locwidth}=\z@% @@ -2566,12 +2590,12 @@ } \newcommand*{\@set@reffield}[1]{% \ifkomavarempty{#1}{}{% - \settowidth{\@tempdima}{\strut\usekomavar{#1}}% - \setbox0\hbox{\strut\scriptsize\sffamily\usekomavar*{#1}}% + \settowidth{\@tempdima}{\strut\usekomafont{refvalue}\usekomavar{#1}}% + \setbox0\hbox{\strut\usekomafont{refname}\usekomavar*{#1}}% \ifdim \@tempdima<\wd0\setlength{\@tempdima}{\wd0}\fi \if@tempswa\enskip\hfill\fi \parbox[t]{\@tempdima}{\noindent\raggedright - \strut\box0\\\strut\usekomavar{#1}}% + \strut\box0\\\usekomafont{refvalue}\strut\usekomavar{#1}}% \@tempswatrue }% } @@ -2629,7 +2653,21 @@ \move@topt\vskip\useplength{refvpos}% \rlap{\noindent\move@topl\hskip\useplength{refhpos}% \vbox{\hsize\useplength{refwidth}% - \noindent\@set@reffields + \noindent\@set@reffields% + \if@tempswa + \setbox0\hbox{\usekomafont{refname}\strutbox}% + \ifdim\ht0>\ht\strutbox + \ClassWarningNoLine{scrlttr}{% + Font element `refname' should not be larger than + \string\normalsize!}% + \fi + \setbox0\hbox{\usekomafont{refvalue}\strutbox}% + \ifdim\ht0>\ht\strutbox + \ClassWarningNoLine{scrlttr}{% + Font element `refvalue' should not be larger than + \string\normalsize!}% + \fi + \fi \ifkomavarempty{date}{% \if@tempswa \typeout{Reference line(s): with fields but without date}% @@ -2640,12 +2678,13 @@ }{% \if@tempswa \typeout{Reference line(s): with fields and date}% - \settowidth{\@tempdima}{\strut\usekomavar{date}}% - \setbox0\hbox{\scriptsize\sffamily\usekomavar*{date}}% + \settowidth{\@tempdima}{\strut + \usekomafont{refvalue}\usekomavar{date}}% + \setbox0\hbox{\usekomafont{refname}\usekomavar*{date}}% \ifdim \@tempdima<\wd0\setlength{\@tempdima}{\wd0}\fi \enskip\hfill \parbox[t]{\@tempdima}{\noindent\raggedright% - \strut\box0\\\strut\usekomavar{date}}% + \strut\box0\\\strut\usekomafont{refvalue}\usekomavar{date}}% \else \typeout{Reference line: only place and date}% \enskip\hfill @@ -2676,15 +2715,22 @@ \ifkomavarempty{subject}{% \typeout{Subject: no}% }{% - \if@subjafter% - \typeout{Subject: after opening}% - \centering% - \else% - \typeout{Subject: before opening}% - \noindent% - \fi% - {\usekomafont{subject}\if@subj\@hangfrom{\usekomavar*{subject}}\fi% - {\usekomavar{subject}}\par}\vskip2\baselineskip% + \ifx\raggedsubject\@empty + \if@subjafter% + \typeout{Subject: after opening}% + \let\raggedsubject\centering% + \else% + \typeout{Subject: before opening}% + \def\raggedsubject{\noindent\@hangfrom}% + \fi% + \fi + {% + \usekomafont{subject}% + \show\raggedsubject + \raggedsubject{\if@subj \subject@format{\strut\ignorespaces + \usekomavar*{subject}}\fi}% + \subject@format{\strut\ignorespaces\usekomavar{subject}}\par + }\vskip2\baselineskip% }% }% } @@ -2746,6 +2792,9 @@ \newcommand*{\@xproc}{} \long\def\@xproc#1\\#2\@nil{% \setkomavar{toname}{#1}\setkomavar{toaddress}{#2}} +\g@addto@macro\flushbottom{% + \g@addto@macro\stopletter{\vskip \z@\@plus.0001fil\relax}% +} \newcommand{\AtBeginLetter}{\g@addto@macro\@beginletterhook} \newcommand{\@beginletterhook}{} \newcommand{\AtEndLetter}{\g@addto@macro\stopletter} |