summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/tudscr/tudscrposter.cls
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/tudscr/tudscrposter.cls')
-rw-r--r--Master/texmf-dist/tex/latex/tudscr/tudscrposter.cls3232
1 files changed, 1719 insertions, 1513 deletions
diff --git a/Master/texmf-dist/tex/latex/tudscr/tudscrposter.cls b/Master/texmf-dist/tex/latex/tudscr/tudscrposter.cls
index 0b6158d1662..17f0aa0c659 100644
--- a/Master/texmf-dist/tex/latex/tudscr/tudscrposter.cls
+++ b/Master/texmf-dist/tex/latex/tudscr/tudscrposter.cls
@@ -4,7 +4,7 @@
%%
%% The original source files were:
%%
-%% tudscr-version.dtx (with options: `class,poster')
+%% tudscr-version.dtx (with options: `class,poster,identify')
%% tudscr-base.dtx (with options: `class,poster,load')
%% tudscr-base.dtx (with options: `class,poster,option')
%% tudscr-fonts.dtx (with options: `class,poster,option')
@@ -25,14 +25,15 @@
%% tudscr-layout.dtx (with options: `class,poster,body')
%% tudscr-title.dtx (with options: `class,poster,body')
%% tudscr-frontmatter.dtx (with options: `class,poster,body')
-%% tudscr-comp.dtx (with options: `class,poster,body')
%% tudscr-misc.dtx (with options: `class,poster,body')
+%% tudscr-comp.dtx (with options: `class,poster,body')
%%
%% TUD-Script -- Corporate Design of Technische Universitaet Dresden
+%% 2022/08/09 v2.06o TUD-Script
%%
-%% 2021/07/15 v2.06n TUD-Script
-%%
-%% Copyright (C) Falk Hanisch <hanisch.latex@outlook.com>, 2012-2021
+%% Copyright (C) Falk Hanisch <hanisch.latex@outlook.com>, 2012-2022
+%% https://github.com/tud-cd/tudscr
+%% https://latex.wcms-file3.tu-dresden.de/phpBB3/
%%
%% This file was generated from file(s) of the TUD-Script bundle.
%% ----------------------------------------------------------------------------
@@ -48,74 +49,80 @@
%%
%% The current maintainer and author of this work is Falk Hanisch.
%%
-%%% From File: tudscr-version.dtx
+%%%% From File: tudscr-version.dtx (no git version info was found)
+\NeedsTeXFormat{LaTeX2e}[2022-06-01]
\begingroup
- \catcode`\@11\relax
- \ifx\TUD@Version\@undefined
- \newcommand*\TUD@Version@Check[1]{%
+ \catcode`\@11\relax%
+ \ifx\TUD@Version\@undefined%
+ \newcommand*\TUD@@Version[2]{%
\gdef\TUD@Version{#1}%
- \gdef\TUDScriptVersion{#1}%
- \def\@tempb##1 v##2 ##3\relax##4\relax{\gdef\TUDScriptVersionNumber{##2}}%
- \edef\@tempa{\TUD@Version}%
- \expandafter\@tempb\@tempa\relax? ? \relax\relax%
- \gdef\TUD@Version@KOMA{3.32}%
- }
- \else
- \newcommand*\TUD@Version@Check[1]{%
+ \gdef\TUD@KOMAVersion{#2}%
+ }%
+ \else%
+ \newcommand*\TUD@@Version[2]{%
\def\@tempa{#1}%
\ifx\TUD@Version\@tempa\else%
\@latex@warning@no@line{%
\noexpand\TUD@Version\space is `\TUD@Version',\MessageBreak%
but `#1' was expected!\MessageBreak%
You should not use classes, packages or files from\MessageBreak%
- different TUD-Script-Bundle versions%
+ different TUD-Script bundle versions%
}%
\fi%
- }
- \fi
- \TUD@Version@Check{2021/07/15 v2.06n TUD-Script}
+ }%
+ \fi%
+ \TUD@@Version{2022/08/09 v2.06o TUD-Script}{2022/05/01 v3.36 KOMA-Script}%
+ \ifx\TUDScriptVersion\@undefined%
+ \xdef\TUDScriptVersion{\TUD@Version}%
+ \def\@tempa#1 v#2 #3\relax#4\relax#5{\gdef#5{#2}}%
+ \expandafter\@tempa\TUD@Version ? ?\relax\relax{\TUDScriptVersionNumber}%
+ \expandafter\@tempa\TUD@KOMAVersion ? ?\relax\relax{\TUD@KOMAVersionNumber}%
+ \fi%
\endgroup
-\NeedsTeXFormat{LaTeX2e}[2019/10/01]
-\providecommand*\tudscrmail{hanisch.latex@outlook.com}
-\newcommand*\TUD@ProvidesClass[3]{%
+\@ifundefined{TUDScript}{%
+ \DeclareRobustCommand\TUDScript{%
+ \mbox{%
+ \textsf{%
+ T\kern.05em U\kern.05em D\kern.1em-\kern.1em Script%
+ }%
+ }\ifcsname xspace\endcsname\xspace\fi%
+ }%
+}{}
+\providecommand*\TUDScriptContact{hanisch.latex@outlook.com}
+\providecommand*\TUDScriptRepository{https://github.com/tud-cd/tudscr}
+\providecommand*\TUDScriptForum{https://latex.wcms-file3.tu-dresden.de/phpBB3/}
+\newcommand*\TUD@ProvidesClass[3]
+{%
\ProvidesClass{#1}[%
- 2021/07/15 v2.06n TUD-Script
+ 2022/08/09 v2.06o TUD-Script
#3 (#2)%
]%
\newcommand*\TUD@Class@KOMA{#2}%
\ifx\TUD@Class@Parent\@undefined%
- \newcommand*\TUD@Class@Name{#1}%
- \TUD@Class@Info%
+ \newcommand*\TUD@Class@Name{#1}%
+ \newcommand*\TUDScriptClassName{#1}%
+ \providecommand*\TUDClassName{\TUDScriptClassName}%
+ \TUD@Class@Info%
\fi%
}
\providecommand*\TUD@Class@Info{%
\typeout{+------------------------------------------------------------------}%
\typeout{| Corporate Design of Technische Universitaet Dresden}%
- \typeout{| Class: \TUD@Class@Name}%
- \typeout{| Version: \TUD@Version}%
- \typeout{| Author: Falk Hanisch (\tudscrmail)}%
- \typeout{| Repository: https://github.com/tud-cd/tudscr}%
- \typeout{| Forum: https://latex.wcms-file3.tu-dresden.de}%
+ \typeout{| Class: \TUDScriptClassName}%
+ \typeout{| Version: \TUDScriptVersion}%
+ \typeout{| Author: Falk Hanisch (\TUDScriptContact)}%
+ \typeout{| Repository: \TUDScriptRepository}%
+ \typeout{| Forum: \TUDScriptForum}%
\typeout{+------------------------------------------------------------------}%
}
\TUD@ProvidesClass{tudscrposter}{scrartcl}{poster class}
-\edef\TUDScriptClassName{\TUD@Class@Name}
-\providecommand*\TUDClassName{\TUDScriptClassName}
-\@ifundefined{TUDScript}{%
- \DeclareRobustCommand\TUDScript{%
- \textsf{%
- T\kern.05em U\kern.05em D\kern.1em-\kern.1em Script%
- }%
- \ifcsname xspace\endcsname%
- \xspace%
- \fi%
- }%
-}{}
-%%% From File: tudscr-base.dtx
-\RequirePackage{tudscrbase}[\TUD@Version]
+%%%% From File: tudscr-base.dtx (no git version info was found)
+\RequirePackage{tudscrbase}[%
+ 2022/08/09 v2.06o TUD-Script
+]
\renewcommand*\TUD@KOMAoptions[1]{\PassOptionsToClass{#1}{\TUD@Class@KOMA}}
\AfterClass{\TUD@Class@KOMA}{\let\TUD@KOMAoptions\KOMAoptions}
-%%% From File: tudscr-base.dtx
+%%%% From File: tudscr-base.dtx (no git version info was found)
\newcommand*\tud@komafont@set[2]{%
\ifcsdef{tud@komafont@#1}{}{\addtokomafont{#1}{\csuse{tud@komafont@#1}}}%
\csdef{tud@komafont@#1}{#2\nobreak}%
@@ -127,17 +134,23 @@
\newcommand*\tud@komafont@reset[1]{%
\ifcsdef{tud@komafont@#1}{\addtokomafont{#1}{\csuse{tud@komafont@#1}}}{}%
}
-%%% From File: tudscr-fonts.dtx
+%%%% From File: tudscr-fonts.dtx (no git version info was found)
+\newcommand*\tud@catcodes@restore{}
+\edef\tud@catcodes@restore{%
+ \catcode`\noexpand\"\the\catcode`\"\relax%
+}%
+\@makeother\"%
+\AtEndOfClass{\tud@catcodes@restore}
\PreventPackageFromLoading[%
\ClassWarning{\TUD@Class@Name}{%
The package `tudscrfonts' must not be used with\MessageBreak%
a TUD-Script class%
}%
]{tudscrfonts}
-\newif\if@tud@cdfont@active
-\newif\if@tud@cdfont@heavy
-\newif\if@tud@cdfont@ultrabold
-\newif\if@tud@cdfont@lining
+\tud@newif\if@tud@cdfont@active
+\tud@newif\if@tud@cdfont@heavy
+\tud@newif\if@tud@cdfont@ultrabold
+\tud@newif\if@tud@cdfont@lining
\@tud@cdfont@liningtrue
\TUD@key{cdfont}[true]{%
\TUD@set@numkey{cdfont}{@tempa}{%
@@ -235,14 +248,11 @@
\TUDoptions{cdhead=heavy}%
\fi%
\else%
- \tud@lowerstring\tud@res@a{#1}%
- \ifdimen{\tud@res@a}{%
- \ifdim\tud@res@a>\z@\relax%
- \TUDoptions{fontsize=#1}%
- \tud@cdfont@activate%
- \FamilyKeyStateProcessed%
- \fi%
- }{}%
+ \TUD@set@dimkey{cdfont}{\@tempa}{#1}%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed%
+ \TUDoptions{fontsize=#1}%
+ \tud@cdfont@activate%
+ \fi%
\fi%
}
\newcommand*\tud@cdfont@activate{%
@@ -263,8 +273,8 @@
\tud@locked@bool@preset{@tud@cdmath@active}{false}%
\TUD@SpecialOptionAtDocument{tud@math@set}%
}
-\newif\if@tud@cdoldfont@active
-\newif\if@tud@cdoldfont@nodin
+\tud@newif\if@tud@cdoldfont@active
+\tud@newif\if@tud@cdoldfont@nodin
\TUD@key{cdoldfont}[true]{%
\TUD@set@numkey{cdoldfont}{@tempa}{%
\TUD@bool@numkey,%
@@ -297,6 +307,7 @@
\TUDoptions{cdfont=#1}%
\fi%
}
+\TUD@key{cdoldfonts}[true]{\TUDoptions{cdoldfont=#1}}
\AtEndOfClass%
{%
\if@tud@cdoldfont@active%
@@ -323,12 +334,24 @@
}%
\fi%
}
-\newif\if@tud@x@scr@fontsize@set
+\tud@newif\if@tud@x@scr@fontsize@set
\TUD@key{fontsize}{%
- \TUD@set@dimenkey{fontsize}{\@tempa}{#1}%
+ \TUD@set@dimkey{fontsize}{\@tempa}{#1}%
\ifx\FamilyKeyState\FamilyKeyStateProcessed%
- \@tud@x@scr@fontsize@settrue%
- \TUD@KOMAoptions{fontsize=#1}%
+ \ifdim\@tempa<\p@\relax%
+ \FamilyKeyStateUnknownValue%
+ \else%
+ \@tud@x@scr@fontsize@settrue%
+ \TUD@KOMAoptions{fontsize=#1}%
+ \fi%
+ \fi%
+ \ifx\FamilyKeyState\FamilyKeyStateUnknownValue%
+ \ClassWarningNoLine{\TUD@Class@Name}%
+ {%
+ The value for option `fontsize' must be a dimension\MessageBreak%
+ and at least 1pt but `#1' was given%
+ }%
+ \FamilyKeyStateProcessed%
\fi%
}
\AtEndOfClass%
@@ -336,17 +359,17 @@
\RelaxFamilyKey{TUD}{fontsize}%
\DefineFamilyMember{KOMA}%
\DefineFamilyKey{KOMA}{fontsize}{%
+ \FamilyKeyStateUnknownValue%
\@tud@x@scr@fontsize@settrue%
\ClassWarning{\TUD@Class@Name}%
{%
The key `fontsize=#1' should only be\MessageBreak%
used as class option%
}%
- \TUD@SpecialOptionAtDocument{tud@font@set}%
- \FamilyKeyStateProcessed%
+ \TUD@SpecialOptionAtDocument{tud@relspacing@set}%
}%
}
-\newif\if@tud@relspacing
+\tud@newif\if@tud@relspacing
\TUD@key{relspacing}[true]{%
\TUD@set@numkey{relspacing}{@tempa}{%
\TUD@bool@numkey,%
@@ -359,7 +382,7 @@
\or% true
\@tud@relspacingtrue%
\fi%
- \TUD@SpecialOptionAtDocument{tud@font@skip@set}%
+ \TUD@SpecialOptionAtDocument{tud@relspacing@set}%
\fi%
}
\newcommand*\tud@ttfont@num{0}
@@ -432,13 +455,13 @@
}
\TUD@key{slantedGreek}[true]{\TUDoptions{slantedgreek=#1}}
\TUD@key{slantedGreeks}[true]{\TUDoptions{slantedgreek=#1}}
-\newif\if@tud@lgrgreeks
+\tud@newif\if@tud@lgrgreeks
\TUD@key{lgrgreeks}[true]{\TUD@set@ifkey{lgrgreeks}{@tud@lgrgreeks}{#1}}
\TUD@key{lgrgreek}[true]{\TUDoptions{lgrgreeks=#1}}
\TUD@key{LGRgreeks}[true]{\TUDoptions{lgrgreeks=#1}}
\TUD@key{LGRgreek}[true]{\TUDoptions{lgrgreeks=#1}}
-%%% From File: tudscr-area.dtx
-\newif\if@tud@cdgeometry@reset
+%%%% From File: tudscr-area.dtx (no git version info was found)
+\tud@newif\if@tud@cdgeometry@reset
\newcommand*\tud@cdgeometry@reset[1]{%
\@tud@cdgeometry@resettrue%
\TUDoptions{cdgeometry=#1}%
@@ -487,7 +510,7 @@
\or% custom
\tud@locked@num@set{tud@cdgeometry@num}{1}%
\fi%
- \if@atdocument%
+ \tud@if@preamble{}{%
\if@tud@cdgeometry@reset\else% false
\ifcase\tud@cdgeometry@num\relax%
\tud@loadgeometry{current@typearea}%
@@ -498,51 +521,54 @@
\fi%
\TUD@SpecialOptionAtDocument{tud@cdgeometry@process}%
\fi%
- \fi%
+ }%
\fi%
}
-\newcommand*\tud@dim@extrabottommargin{\z@}
+\newcommand*\tud@extrabottommargin@dim{0pt}
\TUD@key{extrabottommargin}{%
- \TUD@set@dimenkey{extrabottommargin}{\tud@dim@extrabottommargin}{#1}%
+ \TUD@set@dimkey{extrabottommargin}{\tud@extrabottommargin@dim}{#1}%
\ifx\FamilyKeyState\FamilyKeyStateProcessed%
\TUD@SpecialOptionAtDocument{tud@cdgeometry@process}%
\fi%
}
-\newcommand*\tud@dim@bleedmargin{.2in}
+\newcommand*\tud@bleedmargin@dim{.2in}
\TUD@key{bleedmargin}{%
- \TUD@set@dimenkey{bleedmargin}{\tud@dim@bleedmargin}{#1}%
+ \TUD@set@dimkey{bleedmargin}{\tud@bleedmargin@dim}{#1}%
\ifx\FamilyKeyState\FamilyKeyStateProcessed%
- \ifdim\dimexpr\tud@dim@bleedmargin\relax<\z@\relax%
- \def\@tempa-##1\@nil{\def\tud@dim@bleedmargin{##1}}%
- \@tempa#1\@nil%
- \fi%
+ \tud@length@setabsolute\tud@bleedmargin@dim%
\fi%
}
\DefineFamilyMember{KOMA}
\DefineFamilyKey{KOMA}{twoside}{%
+ \FamilyKeyStateUnknownValue%
\TUD@SpecialOptionAtDocument{tud@cdgeometry@process}%
- \FamilyKeyStateProcessed%
}
\DefineFamilyKey{KOMA}{twocolumn}{%
+ \FamilyKeyStateUnknownValue%
\TUD@SpecialOptionAtDocument{tud@cdgeometry@process}%
- \FamilyKeyStateProcessed%
}
\newcommand*\tud@x@typearea@warnings@off[1][]{%
\IfArgIsEmpty{#1}{}{\let#1\@empty}%
\tud@cs@store{PackageWarningNoLine}%
\renewcommand*\PackageWarningNoLine[2]{%
\@tud@res@swatrue%
- \ifstr{##1}{typearea}{%
- \ifstrstart{##2}{Bad type area settings!}{\@tud@res@swafalse}{}%
- \ifstrstart{##2}{%
+ \tud@if@strequal{##1}{typearea}{%
+ \tud@if@strstart{##2}{%
+ Bad type area settings!%
+ }{\@tud@res@swafalse}{}%
+ \tud@if@strstart{##2}{%
Maybe no optimal type area settings!%
}{\@tud@res@swafalse}{}%
- \ifstrstart{##2}{Very low DIV value!}{\@tud@res@swafalse}{}%
+ \tud@if@strstart{##2}{%
+ Very low DIV value!%
+ }{\@tud@res@swafalse}{}%
}{}%
\if@tud@res@swa%
- \tud@cs@use{PackageWarning}{##1}{##2}%
+ \tud@cs@use{PackageWarningNoLine}{##1}{##2}%
\else%
- \IfArgIsEmpty{#1}{}{\listeadd#1{##2}}%
+ \IfArgIsEmpty{#1}{}{%
+ \listeadd#1{\noexpand\tud@cs@use{PackageWarningNoLine}{##1}{##2}}%
+ }%
\fi%
}%
}
@@ -555,12 +581,75 @@
\AfterPackage{typearea}{%
\tud@x@typearea@warnings@on%
}
-%%% From File: tudscr-pagestyle.dtx
+%%%% From File: tudscr-pagestyle.dtx (no git version info was found)
+\tud@newif\if@tud@ddc@internal
+\newcommand*\tud@comp@clearpage{}%
+\newcommand*\tud@comp@resetpagestyle{}%
+\newcommand*\tud@ddc@switch{}
+\edef\tud@ddc@switch{%
+ \TUD@bool@numkey,%
+ {color}{2},{colour}{2},{cdcolor}{2},{cdcolour}{2},%
+ {colorblack}{3},{colourblack}{3},{cdcolorblack}{3},{cdcolourblack}{3},%
+ {gray}{4},{grey}{4},{hks92}{4},{cdgray}{4},{cdgrey}{4},%
+ {black}{5},{cdblack}{5},%
+ {blue}{6},{hks41}{6},{cdblue}{6},{cddarkblue}{6},%
+ {white}{7},{cdwhite}{7}%
+}
+\tud@newif\if@tud@headlogo@option@set
+\tud@newif\if@tud@footlogo@option@set
+\tud@newif\if@tud@ddc@auto
+\newcommand*\tud@ddc@auto@num{0}
+\TUD@key{ddc}[true]{%
+ \tud@comp@clearpage%
+ \TUD@set@numkey{ddc}{tud@ddc@auto@num}{\tud@ddc@switch}{#1}%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed%
+ \if@tud@ddc@internal%
+ \@tud@ddc@autofalse%
+ \else%
+ \@tud@ddc@autotrue%
+ \@tud@ddc@internaltrue%
+ \TUDoptions{ddchead=false}%
+ \TUDoptions{ddcfoot=false}%
+ \@tud@ddc@internalfalse%
+ \fi%
+ \global\@tud@headlogo@option@settrue%
+ \global\@tud@footlogo@option@settrue%
+ \fi%
+ \tud@comp@resetpagestyle%
+}
+\newcommand*\tud@ddc@head@num{0}
+\TUD@key{ddchead}[true]{%
+ \tud@comp@clearpage%
+ \TUD@set@numkey{ddchead}{tud@ddc@head@num}{\tud@ddc@switch}{#1}%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed%
+ \if@tud@ddc@internal\else%
+ \@tud@ddc@internaltrue%
+ \TUDoptions{ddcfoot=false}%
+ \TUDoptions{ddc=false}%
+ \@tud@ddc@internalfalse%
+ \fi%
+ \fi%
+ \tud@comp@resetpagestyle%
+}
+\newcommand*\tud@ddc@foot@num{0}
+\TUD@key{ddcfoot}[true]{%
+ \tud@comp@clearpage%
+ \TUD@set@numkey{ddcfoot}{tud@ddc@foot@num}{\tud@ddc@switch}{#1}%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed%
+ \if@tud@ddc@internal\else%
+ \@tud@ddc@internaltrue%
+ \TUDoptions{ddchead=false}%
+ \TUDoptions{ddc=false}%
+ \@tud@ddc@internalfalse%
+ \fi%
+ \fi%
+ \tud@comp@resetpagestyle%
+}
\tud@locked@newnum{tud@head@font@num}{0}
\tud@locked@newnum{tud@head@bar@num}{0}
\tud@locked@newbool{@tud@head@widebar}
-\newif\if@tud@head@font@set
-\newif\if@tud@head@date
+\tud@newif\if@tud@head@font@set
+\tud@newif\if@tud@head@date
\TUD@key{cdhead}[true]{%
\TUD@set@numkey{cdhead}{@tempa}{%
\TUD@bool@numkey,%
@@ -649,8 +738,10 @@
\tud@locked@bool@set{@tud@foot@colored}{true}%
\fi%
\else%
- \tud@lowerstring\tud@res@a{#1}%
- \ifdimen{\tud@res@a}{\TUDoptions{extrabottommargin=#1}}{}%
+ \TUD@set@dimkey{cdfoot}{\@tempa}{#1}%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed%
+ \TUDoptions{extrabottommargin=#1}%
+ \fi%
\fi%
}
\newcommand*\tud@ps@store[1]{%
@@ -687,87 +778,20 @@
\tud@ps@@restore{#1}{even}{middle}{foot}%
}
\newcommand*\tud@ps@@restore[4]{%
- \ifcsdef{@@tud@ps@#1@#2@#3@#4}{%
+ \ifcsundef{@@tud@ps@#1@#2@#3@#4}{}{%
\csletcs{sls@ps@#1@#2@#3@#4}{@@tud@ps@#1@#2@#3@#4}%
\csundef{@@tud@ps@#1@#2@#3@#4}%
- }{}%
+ }%
}
-\newcommand*\tud@dim@footlogoheight{}
-\let\tud@dim@footlogoheight\relax
+\newcommand*\tud@footlogoheight@dim{0pt}
\TUD@key{footlogoheight}{%
- \TUD@set@dimenkey{footlogoheight}{\tud@dim@footlogoheight}{#1}%
- \ifx\FamilyKeyState\FamilyKeyStateProcessed%
- \ifdim\dimexpr\tud@dim@footlogoheight\relax<\z@\relax%
- \def\@tempa-##1\@nil{\def\tud@dim@footlogoheight{##1}}%
- \@tempa#1\@nil%
- \fi%
- \global\@tud@footlogo@option@settrue%
- \fi%
-}
-\newif\if@tud@ddc@internal
-\newcommand*\tud@comp@clearpage{}%
-\newcommand*\tud@comp@resetpagestyle{}%
-\newcommand*\tud@ddc@switch{}
-\edef\tud@ddc@switch{%
- \TUD@bool@numkey,%
- {color}{2},{colour}{2},{cdcolor}{2},{cdcolour}{2},%
- {colorblack}{3},{colourblack}{3},{cdcolorblack}{3},{cdcolourblack}{3},%
- {gray}{4},{grey}{4},{hks92}{4},{cdgray}{4},{cdgrey}{4},%
- {black}{5},{cdblack}{5},%
- {blue}{6},{hks41}{6},{cdblue}{6},{cddarkblue}{6},%
- {white}{7},{cdwhite}{7}%
-}
-\newif\if@tud@headlogo@option@set
-\newif\if@tud@footlogo@option@set
-\newif\if@tud@ddc@auto
-\newcommand*\tud@ddc@auto@num{0}
-\TUD@key{ddc}[true]{%
- \tud@comp@clearpage%
- \TUD@set@numkey{ddc}{tud@ddc@auto@num}{\tud@ddc@switch}{#1}%
+ \TUD@set@dimkey{footlogoheight}{\tud@footlogoheight@dim}{#1}%
\ifx\FamilyKeyState\FamilyKeyStateProcessed%
- \if@tud@ddc@internal%
- \@tud@ddc@autofalse%
- \else%
- \@tud@ddc@autotrue%
- \@tud@ddc@internaltrue%
- \TUDoptions{ddchead=false}%
- \TUDoptions{ddcfoot=false}%
- \@tud@ddc@internalfalse%
- \fi%
- \global\@tud@headlogo@option@settrue%
+ \tud@length@setabsolute\tud@footlogoheight@dim%
\global\@tud@footlogo@option@settrue%
\fi%
- \tud@comp@resetpagestyle%
-}
-\newcommand*\tud@ddc@head@num{0}
-\TUD@key{ddchead}[true]{%
- \tud@comp@clearpage%
- \TUD@set@numkey{ddchead}{tud@ddc@head@num}{\tud@ddc@switch}{#1}%
- \ifx\FamilyKeyState\FamilyKeyStateProcessed%
- \if@tud@ddc@internal\else%
- \@tud@ddc@internaltrue%
- \TUDoptions{ddcfoot=false}%
- \TUDoptions{ddc=false}%
- \@tud@ddc@internalfalse%
- \fi%
- \fi%
- \tud@comp@resetpagestyle%
}
-\newcommand*\tud@ddc@foot@num{0}
-\TUD@key{ddcfoot}[true]{%
- \tud@comp@clearpage%
- \TUD@set@numkey{ddcfoot}{tud@ddc@foot@num}{\tud@ddc@switch}{#1}%
- \ifx\FamilyKeyState\FamilyKeyStateProcessed%
- \if@tud@ddc@internal\else%
- \@tud@ddc@internaltrue%
- \TUDoptions{ddchead=false}%
- \TUDoptions{ddc=false}%
- \@tud@ddc@internalfalse%
- \fi%
- \fi%
- \tud@comp@resetpagestyle%
-}
-%%% From File: tudscr-layout.dtx
+%%%% From File: tudscr-layout.dtx (no git version info was found)
\newcommand*\tud@cd@switch{}
\edef\tud@cd@switch{%
\TUD@bool@numkey,%
@@ -789,13 +813,13 @@
\TUD@key@preset{cdpart}{#1}%
\TUD@key@preset{cdsection}{#1}%
\TUD@SpecialOptionAtDocument{tud@cd@process}%
- \if@atdocument\else%
+ \tud@if@preamble{%
\ifcase\tud@cd@num\relax% false
\tud@locked@num@preset{tud@cdgeometry@num}{0}%
\else% !false
\tud@locked@num@preset{tud@cdgeometry@num}{2}%
\fi%
- \fi%
+ }{}%
\fi%
}
\newcommand*\tud@cd@title@num{0}
@@ -820,6 +844,15 @@
\fi%
}
\newcommand*\tud@pagecolor{}%
+\AfterPackage{xcolor}{%
+ \apptocmd\normalcolor{%
+ \tud@if@strequal{\tud@pagecolor}{HKS41}{\color{white}}{}%
+ }{}{\tud@patch@wrn{normalcolor}}%
+ \AtBeginDocument{%
+ \ifdefvoid{\tud@pagecolor}{}{\sbox\z@{\color{\tud@pagecolor}}}%
+ \normalcolor%
+ }%
+}
\TUD@key{backcolor}[true]{%
\TUD@set@numkey{backcolor}{@tempa}{%
\TUD@bool@numkey,%
@@ -836,28 +869,18 @@
\renewcommand*\tud@pagecolor{#1}%
\FamilyKeyStateProcessed%
\fi%
- \if@atdocument%
+ \tud@if@preamble{}{%
\ifdefvoid{\tud@pagecolor}{}{\sbox\z@{\color{\tud@pagecolor}}}%
\normalcolor%
- \fi%
+ }%
}
\TUD@key{backgroundcolor}[true]{\TUDoptions{backcolor=#1}}
\TUD@key{bgcolor}[true]{\TUDoptions{backcolor=#1}}
-\AfterPackage{xcolor}{%
- \CheckCommand*\normalcolor{\let\current@color\default@color\set@color}%
- \apptocmd{\normalcolor}{%
- \ifstr{\tud@pagecolor}{HKS41}{\color{white}}{}%
- }{}{\tud@patch@wrn{normalcolor}}%
- \AtBeginDocument{%
- \ifdefvoid{\tud@pagecolor}{}{\sbox\z@{\color{\tud@pagecolor}}}%
- \normalcolor%
- }%
-}
-\newif\if@tud@heavyheadings
+\tud@newif\if@tud@heavyheadings
\TUD@key{headings}{%
\TUD@set@numkey{headings}{@tempa}{%
{light}{0},{lightfont}{0},{lite}{0},{litefont}{0},{noheavyfont}{0},%
- {normal}{0},{standard}{0},{std}{0},{normalbold}{0},{boldnormal}{0},%
+ {standard}{0},{std}{0},{normalbold}{0},{boldnormal}{0},%
{heavy}{1},{heavyfont}{1},{bold}{1},{boldfont}{1},%
{ultrabold}{1},{boldultra}{1},{heavybold}{1},{boldheavy}{1},%
{extendedbold}{1},{boldextended}{1}%
@@ -872,16 +895,14 @@
}
\DefineFamilyMember{KOMA}
\DefineFamilyKey{KOMA}{headings}{%
+ \FamilyKeyStateUnknownValue%
\TUD@SpecialOptionAtDocument{tud@x@scr@headings@reset}%
- \FamilyKeyStateProcessed%
}
-%%% From File: tudscr-title.dtx
+%%%% From File: tudscr-title.dtx (no git version info was found)
\DefineFamilyMember{KOMA}
-\DefineFamilyKey{KOMA}{titlepage}[true]{%
- \TUD@set@numkey{titlepage}{@tempa}{\TUD@bool@numkey,{firstiscover}{2}}{#1}%
- \ifx\FamilyKeyState\FamilyKeyStateProcessed%
- \AtEndOfFamilyOptions{\tud@titlepage@deactivate}%
- \fi%
+\DefineFamilyKey{KOMA}{titlepage}{%
+ \FamilyKeyStateUnknownValue%
+ \AtEndOfFamilyOptions{\tud@titlepage@deactivate}%
}
\newcommand*\tud@titlepage@deactivate{%
\if@titlepage%
@@ -897,7 +918,7 @@
\fi%
}
\AtBeginDocument{\tud@titlepage@deactivate}
-%%% From File: tudscr-frontmatter.dtx
+%%%% From File: tudscr-frontmatter.dtx (no git version info was found)
\newcommand*\tud@fm@switch{%
{section}{2},{sect}{2},{sec}{2},{addsec}{2},%
{new}{2},{standard}{2},{heading}{2},%
@@ -918,10 +939,11 @@
}
\DefineFamilyMember{KOMA}
\DefineFamilyKey{KOMA}{abstract}[true]{%
+ \FamilyKeyStateUnknownValue%
\AtEndOfFamilyOptions{\TUDoptions{abstract=#1}}%
}
-%%% From File: tudscr-misc.dtx
-\newif\if@tud@bookmarks
+%%%% From File: tudscr-misc.dtx (no git version info was found)
+\tud@newif\if@tud@bookmarks
\TUD@key{tudbookmarks}[true]{%
\TUD@set@ifkey{tudbookmarks}{@tud@bookmarks}{#1}%
}
@@ -931,7 +953,7 @@
}
\newcommand*\tud@x@scr@pt{}
\def\tud@x@scr@pt #1pt#2\@nil{%
- \ifstr{#2}{pt}{\ifnumber{#1}{\@tud@x@scr@fontsize@settrue}{}}{}%
+ \tud@if@strequal{#2}{pt}{\Ifnumber{#1}{\@tud@x@scr@fontsize@settrue}{}}{}%
}
\newcommand*\tud@atdocument@hook{}
\let\tud@atdocument@hook\relax
@@ -948,7 +970,7 @@
\gappto\tud@atdocument@hook{\global\booltrue{@#1}}%
}%
}
-%%% From File: tudscr-comp.dtx
+%%%% From File: tudscr-comp.dtx (no git version info was found)
\newcommand*\TUD@deprecated@key[2]{%
\ClassWarning{\TUD@Class@Name}%
{%
@@ -999,16 +1021,23 @@
\tud@res@c%
}{}%
}
-\newcommand*\TUD@deprecated@lengthcs[2][]{%
- \ifdim\csuse{#2}<\maxdimen\relax%
- \ClassWarning{\TUD@Class@Name}{%
- Using the length `\@backslashchar#2' is deprecated. \MessageBreak%
- You should use option `#2' instead%
- }%
- \csxdef{tud@dim@#2}{\the\csuse{#2}}%
- \expandafter\setlength\csname #2\endcsname{\maxdimen}%
- \global\csuse{#2}=\csuse{#2}%
- #1%
+\newcommand*\TUD@deprecated@length[1]{%
+ \ifdim#1<\maxdimen\relax%
+ \begingroup%
+ \tud@strlength\tud@res@a{#1}%
+ \edef\tud@res@b{\expandafter\@gobble\string#1}%
+ \ClassWarning{\TUD@Class@Name}{%
+ Setting length `\string#1' is deprecated. \MessageBreak%
+ The option `\tud@res@b=\tud@res@a'\MessageBreak%
+ is used instead%
+ }%
+ \edef\tud@res@a{%
+ \endgroup%
+ \noexpand\TUDoption{\tud@res@b}{\tud@res@a}%
+ \global\noexpand\csletcs{tud@\tud@res@b @dim}{tud@\tud@res@b @dim}%
+ }%
+ \tud@res@a%
+ \global\setlength#1{\maxdimen}%
\fi%
}
\newcommand*\tud@v@comp{\tud@v@last}
@@ -1036,88 +1065,35 @@
{%
\RelaxFamilyKey[.comp]{TUD}{tudscrver}%
\TUD@key@toolate{tudscrver}%
- \ifcsdef{scr@v@\TUD@Version@KOMA}{%
- \ifnum\scr@compatibility<\csuse{scr@v@3.12}\relax%
- \ClassError{\TUD@Class@Name}{%
- KOMA-Script compatibility level too low%
- }{%
- \TUD@Version\space must be used at least with\MessageBreak%
- `version=3.12' KOMA-Script compatibility option.%
- }%
- \fi%
- }{%
- \ClassError{\TUD@Class@Name}{%
- KOMA-Script v\TUD@Version@KOMA is required%
- }{%
- \TUD@Version\space must at least be used with\MessageBreak%
- KOMA-Script v\TUD@Version@KOMA, but \KOMAScriptVersion was found.%
- }%
- }%
}
\csdef{tud@v@first}{0}
\csdef{tud@v@2.00}{0}
\csdef{tud@v@2.01}{0}
-\csdef{tud@v@2.01a}{0}
-\csdef{tud@v@2.01b}{0}
\csdef{tud@v@2.02}{0}
\csdef{tud@v@2.03}{1}
-\csdef{tud@v@2.03a}{1}
\csdef{tud@v@2.04}{2}
-\csdef{tud@v@2.04a}{2}
-\csdef{tud@v@2.04b}{2}
-\csdef{tud@v@2.04c}{2}
-\csdef{tud@v@2.04d}{2}
-\csdef{tud@v@2.04e}{2}
\csdef{tud@v@2.05}{3}
-\csdef{tud@v@2.05a}{3}
-\csdef{tud@v@2.05b}{3}
-\csdef{tud@v@2.05c}{3}
-\csdef{tud@v@2.05d}{3}
-\csdef{tud@v@2.05e}{3}
-\csdef{tud@v@2.05f}{3}
-\csdef{tud@v@2.05g}{3}
-\csdef{tud@v@2.05h}{3}
-\csdef{tud@v@2.05i}{3}
-\csdef{tud@v@2.05k}{3}
-\csdef{tud@v@2.05l}{3}
-\csdef{tud@v@2.05m}{3}
\csdef{tud@v@2.06}{4}
-\csdef{tud@v@2.06a}{4}
-\csdef{tud@v@2.06b}{4}
-\csdef{tud@v@2.06c}{4}
-\csdef{tud@v@2.06d}{4}
-\csdef{tud@v@2.06e}{4}
-\csdef{tud@v@2.06f}{4}
-\csdef{tud@v@2.06g}{4}
-\csdef{tud@v@2.06h}{4}
-\csdef{tud@v@2.06i}{4}
-\csdef{tud@v@2.06j}{4}
-\csdef{tud@v@2.06k}{4}
-\csdef{tud@v@2.06l}{4}
-\csdef{tud@v@2.06m}{4}
-\csdef{tud@v@2.06n}{4}
\csdef{tud@v@last}{4}
\newcommand*\tud@v@get[2]{%
\begingroup%
- \def\@tempa{\kernel@ifnextchar v{\@tempb}{\@tempb v}}%
+ \def\@tempa{%
+ \kernel@ifnextchar v%
+ {\@tempb}%
+ {\@tempb v}%
+ }%
\def\@tempb v##1\@nil{\def\@tempc{##1}}%
\@tempa #2\@nil%
\edef\tud@reserved{%
\endgroup%
- \etex@unexpanded{\def#1}{\@tempc}%
+ \unexpanded{\def#1}{\@tempc}%
}%
\tud@reserved%
}
\newcommand*\tud@if@v@lower[1]{%
\begingroup%
\tud@v@get\@tempa{#1}%
- \ifcsdef{tud@v@\@tempa}{%
- \ifnum\tud@v@comp<\csuse{tud@v@\@tempa}\relax%
- \def\tud@reserved{\endgroup\@firstoftwo}%
- \else%
- \def\tud@reserved{\endgroup\@secondoftwo}%
- \fi%
- }{%
+ \ifcsundef{tud@v@\@tempa}{%
\def\tud@reserved{%
\ClassWarningNoLine{\TUD@Class@Name}%
{%
@@ -1126,6 +1102,12 @@
}%
\endgroup\@firstoftwo%
}%
+ }{%
+ \ifnum\tud@v@comp<\csuse{tud@v@\@tempa}\relax%
+ \def\tud@reserved{\endgroup\@firstoftwo}%
+ \else%
+ \def\tud@reserved{\endgroup\@secondoftwo}%
+ \fi%
}%
\tud@reserved%
}
@@ -1268,7 +1250,7 @@
\fi%
}
\TUD@key{colour}[true]{\TUDoptions{color=#1}}
-\newif\if@tud@x@fontspec@requested
+\tud@newif\if@tud@x@fontspec@requested
\TUD@key{fontspec}[true]{%
\TUD@set@ifkey{fontspec}{@tud@x@fontspec@requested}{#1}%
\ifx\FamilyKeyState\FamilyKeyStateProcessed%
@@ -1283,12 +1265,12 @@
{%
\TUD@key@toolate{fontspec}%
\if@tud@x@fontspec@requested%
- \RequirePackage{fontspec}[2017/01/24]%
+ \RequirePackage{fontspec}
\fi%
}
-%%% From File: tudscr-misc.dtx
+%%%% From File: tudscr-misc.dtx (no git version info was found)
\DeclareOption*{}
-\FamilyProcessOptions[.comp]{TUD}\relax
+\TUDProcessOptions[.comp]\relax
\tud@if@v@lower{2.05}{%
\TUD@key@preset{relspacing}{false}%
}{%
@@ -1303,34 +1285,36 @@
\TUD@key@preset{ttfont}{roboto}%
\TUD@key@preset{headings}{heavy}%
}
-\DeclareOption*{\tud@x@scr@checkoptions}
\TUDExecuteOptions{%
cd=bicolor,tudbookmarks=false%
}
+\DeclareOption*{\tud@x@scr@checkoptions}
\TUDProcessOptions\relax
-\LoadClass{\TUD@Class@KOMA}[2020/09/21]
+\LoadClass{\TUD@Class@KOMA}[%
+ 2022/05/01 v3.36 KOMA-Script
+]
\newcommand*\TUD@key@toolate[1]{%
- \csedef{tud@key@#1@error}{%
+ \csedef{tud@key@toolate@@#1}{%
\noexpand\ClassError{\noexpand\TUD@Class@Name}%
{Option `#1' too late}{%
Option `#1' can only be set\space%
- \ifcsname \@currname.\@currext-h@@k\endcsname%
+ \ifcsdef{\@currname.\@currext-h@@k}{%
as optional \MessageBreak argument while loading\space%
class `\noexpand\TUD@Class@Name'%
- \else%
- in the preamble
- \fi%
+ }{%
+ in the preamble%
+ }%
\MessageBreak but you have tried to set it up later.%
}%
}%
- \TUD@key{#1}[]%
+ \TUD@key[]{#1}[]%
{%
- \csuse{tud@key@#1@error}
+ \csuse{tud@key@toolate@@#1}%
\FamilyKeyStateProcessed%
}%
}
-%%% From File: tudscr-base.dtx
-\RequirePackage{environ}[2013/04/01]
+%%%% From File: tudscr-base.dtx (no git version info was found)
+\RequirePackage{environ}
\newcommand*\tud@x@multicol@num{1}
\newcommand*\tud@x@multicol@check{%
\ifnum\tud@x@multicol@num>\@ne\relax%
@@ -1350,14 +1334,16 @@
which now will be loaded automatically%
}%
}{}%
- \RequirePackage{graphicx}[1999/02/16]%
+ \RequirePackage{graphicx}
}%
- \RequirePackage{tudscrcolor}[\TUD@Version]%
+ \RequirePackage{tudscrcolor}[%
+ 2022/08/09 v2.06o TUD-Script
+ ]%
}
-%%% From File: tudscr-fonts.dtx
+%%%% From File: tudscr-fonts.dtx (no git version info was found)
\newcommand*\tud@cdfont@wrn{\global\let\tud@cdfont@wrn\relax}
\newcommand*\tud@cdmath@wrn{\global\let\tud@cdmath@wrn\relax}
-\newif\if@tud@x@fontspec@enabled
+\tud@newif\if@tud@x@fontspec@enabled
\PassOptionsToPackage{no-math}{fontspec}
\AfterPackage*{fontspec}{%
\@ifpackagelater{fontspec}{2017/01/24}{%
@@ -1396,11 +1382,9 @@
}%
}%
}
-\TUD@RecommendPackage{mweights}[2017/03/30]%
-\newif\if@tud@x@mweights@enabled
+\TUD@RecommendPackage{mweights}
+\tud@newif\if@tud@x@mweights@enabled
\AfterPackage*{mweights}{\@tud@x@mweights@enabledtrue}
-\newif\if@tud@cdfont@fam@exist
-\newif\if@tud@cdfont@db@exist
\newcommand*\tud@cdfont@fam{opensans-TLF}
\newcommand*\tud@cdfont@fam@lf{opensans-TLF}
\newcommand*\tud@cdfont@fam@osf{opensans-TOsF}
@@ -1413,12 +1397,17 @@
\newcommand*\tud@ttfont@fam{tudtt}
\newcommand*\tud@ttfont@rb{tudtt}
\newcommand*\tud@ttfont@lm{lmtt}
-\newif\if@tud@ttfont@rb@exist
+\tud@newif\if@tud@ttfont@rb@exist
\IfFileExists{roboto-mono.sty}{%
\@tud@ttfont@rb@existtrue%
}{%
\TUD@key@preset{ttfont}{lmodern}%
}
+\tud@newif\if@tud@cdfont@fam@exist
+\tud@newif\if@tud@cdfont@db@exist
+\tud@newif\if@tud@cdmath@fam@exist
+\tud@newif\if@tud@cdmath@db@exist
+\newcommand*\tud@x@mathastext@enc{OT1}
\newcommand*\tud@cdfont@check{%
\if@tud@cdoldfont@active%
\tud@cdfont@@check{Univers}{%
@@ -1426,8 +1415,8 @@
LightOblique,Oblique,BoldOblique,BlackOblique%
}{\tud@cdfont@fam@lf}{@tud@cdfont@fam@exist}%
\tud@cdfont@@check{DIN}{Bold}{\tud@cdfont@db}{@tud@cdfont@db@exist}%
- \tud@cdfont@@@check{OT1,OML,OMS}{\tud@cdfont@fam@lf}%
- \tud@cdfont@@@check{OT1,OML,OMS}{\tud@cdfont@db}%
+ \tud@cdfont@@@check{OT1,OML,OMS}{\tud@cdfont@fam@lf}{@tud@cdmath@fam@exist}%
+ \tud@cdfont@@@check{OT1,OML,OMS}{\tud@cdfont@db}{@tud@cdmath@db@exist}%
\else%
\@ifpackageloaded{opensans}{%
\ClassWarningNoLine{\TUD@Class@Name}%
@@ -1444,6 +1433,17 @@
Light,Regular,SemiBold,Bold,ExtraBold,%
LightItalic,Italic,SemiBoldItalic,BoldItalic,ExtraBoldItalic%
}{\tud@cdfont@fam@lf,\tud@cdfont@fam@osf}{@tud@cdfont@fam@exist}%
+ \@expandtwoargs\in@{,\encodingdefault,}{,OT1,T1,TU,EU1,EU2,}%
+ \ifin@%
+ \let\tud@x@mathastext@enc\encodingdefault%
+ \@expandtwoargs\in@{,\tud@x@mathastext@enc,}{,TU,EU1,EU2,}%
+ \ifin@%
+ \@tud@cdmath@fam@existtrue%
+ \else%
+ \tud@cdfont@@@check{\tud@x@mathastext@enc}%
+ {\tud@cdfont@fam@lf}{@tud@cdmath@fam@exist}%
+ \fi%
+ \fi%
\fi%
}
\newcommand*\tud@cdfont@@check[5][-]{%
@@ -1478,7 +1478,7 @@
\boolfalse{#5}%
\fi%
}
-\newcommand*\tud@cdfont@@@check[2]{%
+\newcommand*\tud@cdfont@@@check[3]{%
\@tud@res@swatrue%
\def\tud@res@a##1##2{%
\@tud@res@swafalse%
@@ -1495,7 +1495,10 @@
}%
}%
\@for\tud@res@c:={#1}\do{\tud@res@b{\tud@res@c}{#2}}%
- \if@tud@res@swa\else%
+ \if@tud@res@swa%
+ \booltrue{#3}%
+ \else%
+ \boolfalse{#3}%
\AtBeginDocument{%
\if@tud@cdmath@active%
\ClassWarningNoLine{\TUD@Class@Name}%
@@ -1503,8 +1506,12 @@
Some math font encodings are missing. \MessageBreak%
The option `cdmath=false' is executed. You should\MessageBreak%
either use this option by yourself or install\MessageBreak%
- all necessary fonts with a installation script\MessageBreak%
- listed in the manual
+ \if@tud@cdoldfont@active%
+ all necessary fonts with a installation script\MessageBreak%
+ listed in the manual%
+ \else%
+ package `opensans'%
+ \fi%
}%
\fi%
\TUDoptions{cdmath=false}%
@@ -1518,7 +1525,7 @@
not found for `#1' encoding. \MessageBreak%
}%
\if@tud@x@fontspec@enabled%
- \ifstr{\encodingdefault}{#1}{%
+ \tud@if@strequal{#1}{\encodingdefault}{%
\appto\tud@res@a{%
It seems, you haven't installed the required\MessageBreak%
OTF-font on your system. You should provide\MessageBreak%
@@ -1536,7 +1543,7 @@
\fi%
\@tud@res@swafalse%
\@for\tud@res@c:=\tud@res@b\do{%
- \ifstr{\tud@res@c}{#1}{\@tud@res@swatrue}{}%
+ \tud@if@strequal{#1}{\tud@res@c}{\@tud@res@swatrue}{}%
}%
\if@tud@res@swa%
\appto\tud@res@a{%
@@ -1550,8 +1557,8 @@
. \MessageBreak%
}%
\else%
- \ifstr{\encodingdefault}{#1}{%
- \ifstr{TU}{#1}{%
+ \tud@if@strequal{#1}{\encodingdefault}{%
+ \tud@if@strequal{#1}{TU}{%
\appto\tud@res@a{%
You should either load package `fontspec'\MessageBreak%
or %
@@ -1568,40 +1575,12 @@
\fi%
\appto\tud@res@a{A fallback layout is used}%
\edef\tud@res@c{%
- \etex@unexpanded{\ClassWarning{\TUD@Class@Name}}%
- {\tud@res@a}
+ \unexpanded{\ClassWarningNoLine{\TUD@Class@Name}}%
+ {\tud@res@a}%
}%
\xappto#3{\expandonce\tud@res@c}%
\endgroup%
}
-\begingroup
-\catcode`\^=7
-\catcode30=12
-\catcode`\!=12
-\edef\tud@reserved{\@gobble^^^^0021}
-\expandafter\endgroup
-\ifx\tud@reserved\@empty\relax
- \RequirePackage{newunicodechar}[2012/11/12]%
- \uccode"00DF="1E9E%
- \lccode"1E9E="00DF%
- \newunicodechar{^^^^00df}{\iffontchar\font"00DF \symbol{"00DF}\else ss\fi}%
- \newunicodechar{^^^^1e9e}{\iffontchar\font"1E9E \symbol{"1E9E}\else SS\fi}%
-\fi
-\newcommand*\tud@raggedright{\raggedright}
-\newcommand*\tud@RaggedRight{\raggedright}
-\AfterPackage*{ragged2e}{%
- \ifundef{\LaTeXraggedright}{}{%
- \renewcommand*\tud@raggedright{\LaTeXraggedright}%
- }%
- \renewcommand*\tud@RaggedRight{\RaggedRight}%
-}
-\newif\if@tud@x@siunitx@enabled
-\AfterAtEndOfPackage*{siunitx}{%
- \@tud@x@siunitx@enabledtrue%
- \providecommand*\lseries{\fontseries{l}\selectfont}%
-}
-\newif\if@tud@x@bm@requested
-\PreventPackageFromLoading[\@tud@x@bm@requestedtrue]{bm}
\newcommand*\tud@x@fontspec@init[2]{%
\begingroup%
\edef\tud@res@a{%
@@ -1631,7 +1610,7 @@
}%
\edef\tud@res@a{%
\endgroup%
- \noexpand\DeclareRobustCommand%
+ \noexpand\renewrobustcmd*%
\expandafter\noexpand\csname #1family\endcsname{%
\expandafter\noexpand\csname tud@x@fontspec@fam@#2\endcsname%
}%
@@ -1639,8 +1618,9 @@
}%
\tud@res@a%
}
-\newcommand*\tud@font@set{%
+\newcommand*\tud@font@set[1][\tud@cdfont@wrn]{%
\if@tud@cdfont@active%
+ #1%
\tud@cs@store{rmdefault}%
\tud@cs@store{sfdefault}%
\tud@cs@store{ttdefault}%
@@ -1665,13 +1645,6 @@
\tud@cs@store{sffamily}%
\tud@cs@store{ttfamily}%
\fi%
- \renewcommand*\rmdefault{\sfdefault}%
- \renewcommand*\updefault{n}%
- \renewcommand*\itdefault{it}%
- \renewcommand*\sldefault{sl}%
- \renewcommand*\familydefault{\sfdefault}%
- \renewcommand*\seriesdefault{\mddefault}%
- \renewcommand*\shapedefault{\updefault}%
\tud@cdfont@set%
\tud@cdfont@symbols@set%
\tud@ttfont@set%
@@ -1720,12 +1693,19 @@
\edef\mddef@ult{\mddefault}%
\edef\famdef@ult{\familydefault}%
\fi%
- \tud@font@skip@set%
+ \tud@relspacing@set%
\normalfont\selectfont%
\tud@cd@process%
\global\@tud@head@font@settrue%
}
\newcommand*\tud@cdfont@set{%
+ \renewcommand*\rmdefault{\sfdefault}%
+ \renewcommand*\updefault{n}%
+ \renewcommand*\itdefault{it}%
+ \renewcommand*\sldefault{sl}%
+ \renewcommand*\familydefault{\sfdefault}%
+ \renewcommand*\seriesdefault{\mddefault}%
+ \renewcommand*\shapedefault{\updefault}%
\if@tud@cdfont@fam@exist%
\if@tud@cdfont@lining%
\let\tud@cdfont@fam\tud@cdfont@fam@lf%
@@ -1739,7 +1719,6 @@
\fi%
\tud@cdfont@@set%
\fi%
- \tud@cdfont@wrn%
}
\newcommand*\tud@cdfont@md{m}
\newcommand*\tud@cdfont@bf{b}
@@ -1807,7 +1786,7 @@
\tud@res@a%
\expandafter\robustify\csname tud@cdfont@symbol@#1\endcsname%
}
-\newtoks\tud@cdfont@symbols@toks
+\tud@newtoks\tud@cdfont@symbols@toks
\newcommand*\tud@cdfont@symbols@set{%
\expandafter\IfArgIsEmpty\expandafter{\the\tud@cdfont@symbols@toks}{%
\forlistloop\tud@cdfont@symbols@set@cmd\tud@cdfont@symb@list%
@@ -1828,35 +1807,57 @@
\tud@cdfont@declare@symb{textlangle}{TS1}{iwona}{60}%
\tud@cdfont@declare@symb{textrangle}{TS1}{iwona}{62}%
}
-\newcommand*\tud@font@skip@set{%
+\newcommand*\tud@relspacing@set{%
\if@tud@relspacing%
- \tud@skip@store{smallskipamount}%
- \tud@skip@store{medskipamount}%
- \tud@skip@store{bigskipamount}%
- \tud@skip@store{abovecaptionskip}%
- \tud@skip@store{belowcaptionskip}%
- \tud@skip@store{columnsep}%
- \tud@font@skip@@set%
+ \tud@cslength@store{smallskipamount}%
+ \tud@cslength@store{medskipamount}%
+ \tud@cslength@store{bigskipamount}%
+ \tud@cslength@store{abovecaptionskip}%
+ \tud@cslength@store{belowcaptionskip}%
+ \tud@cslength@store{columnsep}%
+ \tud@relspacing@@set%
\else%
- \tud@skip@restore{smallskipamount}%
- \tud@skip@restore{medskipamount}%
- \tud@skip@restore{bigskipamount}%
- \tud@skip@restore{abovecaptionskip}%
- \tud@skip@restore{belowcaptionskip}%
- \tud@skip@restore{columnsep}%
+ \tud@cslength@restore{smallskipamount}%
+ \tud@cslength@restore{medskipamount}%
+ \tud@cslength@restore{bigskipamount}%
+ \tud@cslength@restore{abovecaptionskip}%
+ \tud@cslength@restore{belowcaptionskip}%
+ \tud@cslength@restore{columnsep}%
\fi%
}
-\newcommand*\tud@font@skip@@set{%
- \smallskipamount=\partopsep%
- \medskipamount=\partopsep%
- \multiply\medskipamount by 2%
- \bigskipamount=\partopsep%
- \multiply\bigskipamount by 4%
- \tud@skip@set{abovecaptionskip}{\dimexpr\bigskipamount*5/6\relax}%
- \tud@skip@set{belowcaptionskip}{\z@}%
- \tud@skip@set{columnsep}{1.1\baselineskip}%
+\newcommand*\tud@relspacing@@set{%
+ \tud@if@v@lower{2.06}{%
+ \bigskipamount=\partopsep%
+ \multiply\bigskipamount by 4%
+ }{%
+ \begingroup%
+ \tud@setdim\@tempdima{\dimexpr\abovedisplayskip\relax}%
+ \tud@setdim\@tempdimb{\@tempdima/3}%
+ \edef\tud@res@a{%
+ \endgroup%
+ \noexpand\tud@setglue\noexpand\bigskipamount{%
+ \the\@tempdima\@plus\the\@tempdimb\@minus\the\@tempdimb%
+ }%
+ }%
+ \tud@res@a%
+ }%
+ \medskipamount=\bigskipamount%
+ \divide\medskipamount by 2%
+ \smallskipamount=\bigskipamount%
+ \divide\smallskipamount by 4%
+ \tud@if@lengthregister{\abovecaptionskip}{%
+ \tud@setdim\abovecaptionskip{1\bigskipamount*5/6}%
+ }{}%
+ \tud@if@lengthregister{\belowcaptionskip}{%
+ \tud@setdim\belowcaptionskip{\z@}%
+ }{}%
+ \tud@setdim\columnsep{1\baselineskip*11/10}%
}
\newcommand*\tud@cdfont@init{%
+ \tud@cdfont@@init%
+ \tud@cdfont@@@init%
+}
+\newcommand*\tud@cdfont@@init{%
\if@tud@cdfont@fam@exist%
\if@tud@x@fontspec@enabled%
\def\tud@res@a{%
@@ -1897,28 +1898,33 @@
}{}%
\tud@cdfont@declare@textsymb%
\fi%
- \newrobustcmd*\cdfontln{\usefont{\encodingdefault}{\tud@cdfont@fam}{l}{n}}
- \newrobustcmd*\cdfontrn{\usefont{\encodingdefault}{\tud@cdfont@fam}{m}{n}}
- \newrobustcmd*\cdfontsn{\usefont{\encodingdefault}{\tud@cdfont@fam}{sb}{n}}
- \newrobustcmd*\cdfontbn{\usefont{\encodingdefault}{\tud@cdfont@fam}{b}{n}}
- \newrobustcmd*\cdfontxn{\usefont{\encodingdefault}{\tud@cdfont@fam}{eb}{n}}
- \newrobustcmd*\cdfontli{\usefont{\encodingdefault}{\tud@cdfont@fam}{l}{it}}
- \newrobustcmd*\cdfontri{\usefont{\encodingdefault}{\tud@cdfont@fam}{m}{it}}
- \newrobustcmd*\cdfontsi{\usefont{\encodingdefault}{\tud@cdfont@fam}{sb}{it}}
- \newrobustcmd*\cdfontbi{\usefont{\encodingdefault}{\tud@cdfont@fam}{b}{it}}
- \newrobustcmd*\cdfontxi{\usefont{\encodingdefault}{\tud@cdfont@fam}{eb}{it}}
+ \def\tud@res@a##1##2##3{%
+ \newrobustcmd*##1{\usefont{\f@encoding}{\tud@cdfont@fam}{##2}{##3}}%
+ }%
+ \tud@res@a\cdfontln{l}{n}%
+ \tud@res@a\cdfontrn{m}{n}%
+ \tud@res@a\cdfontsn{sb}{n}%
+ \tud@res@a\cdfontbn{b}{n}%
+ \tud@res@a\cdfontxn{eb}{n}%
+ \tud@res@a\cdfontli{l}{it}%
+ \tud@res@a\cdfontri{m}{it}%
+ \tud@res@a\cdfontsi{sb}{it}%
+ \tud@res@a\cdfontbi{b}{it}%
+ \tud@res@a\cdfontxi{eb}{it}%
\else%
- \tud@cdfont@fallback\cdfontln{OpenSans-Light}{md}{up}
- \tud@cdfont@fallback\cdfontrn{OpenSans-Regular}{md}{up}
- \tud@cdfont@fallback\cdfontsn{OpenSans-SemiBold}{md}{up}
- \tud@cdfont@fallback\cdfontbn{OpenSans-Bold}{bf}{up}
- \tud@cdfont@fallback\cdfontxn{OpenSans-ExtraBold}{bf}{up}
- \tud@cdfont@fallback\cdfontli{OpenSans-LightItalic}{md}{it}
- \tud@cdfont@fallback\cdfontri{OpenSans-Italic}{md}{it}
- \tud@cdfont@fallback\cdfontsi{OpenSans-SemiBoldItalic}{md}{it}
- \tud@cdfont@fallback\cdfontbi{OpenSans-BoldItalic}{bf}{it}
- \tud@cdfont@fallback\cdfontxi{OpenSans-ExtraBoldItalic}{bf}{it}
+ \tud@cdfont@fallback\cdfontln{OpenSans-Light}{md}{up}%
+ \tud@cdfont@fallback\cdfontrn{OpenSans-Regular}{md}{up}%
+ \tud@cdfont@fallback\cdfontsn{OpenSans-SemiBold}{md}{up}%
+ \tud@cdfont@fallback\cdfontbn{OpenSans-Bold}{bf}{up}%
+ \tud@cdfont@fallback\cdfontxn{OpenSans-ExtraBold}{bf}{up}%
+ \tud@cdfont@fallback\cdfontli{OpenSans-LightItalic}{md}{it}%
+ \tud@cdfont@fallback\cdfontri{OpenSans-Italic}{md}{it}%
+ \tud@cdfont@fallback\cdfontsi{OpenSans-SemiBoldItalic}{md}{it}%
+ \tud@cdfont@fallback\cdfontbi{OpenSans-BoldItalic}{bf}{it}%
+ \tud@cdfont@fallback\cdfontxi{OpenSans-ExtraBoldItalic}{bf}{it}%
\fi%
+}
+\newcommand*\tud@cdfont@@@init{%
\newcommand*\textcdln{}%
\newcommand*\textcdrn{}%
\newcommand*\textcdsn{}%
@@ -1941,7 +1947,7 @@
\DeclareTextFontCommand\textcdxi{\cdfontxi}%
}
\if@tud@cdoldfont@active
- \renewcommand*\tud@cdfont@init{%
+ \renewcommand*\tud@cdfont@@init{%
\if@tud@cdfont@fam@exist%
\if@tud@x@fontspec@enabled%
\def\tud@res@a{%
@@ -1959,23 +1965,26 @@
}%
\tud@x@fontspec@init{\tud@cdfont@fam@lf}{\tud@res@a}%
\fi%
- \newrobustcmd*\univln{\usefont{\encodingdefault}{\tud@cdfont@fam}{l}{n}}
- \newrobustcmd*\univrn{\usefont{\encodingdefault}{\tud@cdfont@fam}{m}{n}}
- \newrobustcmd*\univbn{\usefont{\encodingdefault}{\tud@cdfont@fam}{b}{n}}
- \newrobustcmd*\univxn{\usefont{\encodingdefault}{\tud@cdfont@fam}{eb}{n}}
- \newrobustcmd*\univls{\usefont{\encodingdefault}{\tud@cdfont@fam}{l}{sl}}
- \newrobustcmd*\univrs{\usefont{\encodingdefault}{\tud@cdfont@fam}{m}{sl}}
- \newrobustcmd*\univbs{\usefont{\encodingdefault}{\tud@cdfont@fam}{b}{sl}}
- \newrobustcmd*\univxs{\usefont{\encodingdefault}{\tud@cdfont@fam}{eb}{sl}}
+ \def\tud@res@a##1##2##3{%
+ \newrobustcmd*##1{\usefont{\f@encoding}{\tud@cdfont@fam}{##2}{##3}}%
+ }%
+ \tud@res@a\univln{l}{n}%
+ \tud@res@a\univrn{m}{n}%
+ \tud@res@a\univbn{b}{n}%
+ \tud@res@a\univxn{eb}{n}%
+ \tud@res@a\univls{l}{it}%
+ \tud@res@a\univrs{m}{it}%
+ \tud@res@a\univbs{b}{it}%
+ \tud@res@a\univxs{eb}{it}%
\else%
- \tud@cdfont@fallback\univln{Univers-Light}{md}{up}
- \tud@cdfont@fallback\univrn{Univers}{md}{up}
- \tud@cdfont@fallback\univbn{Univers-Bold}{bf}{up}
- \tud@cdfont@fallback\univxn{Univers-Black}{bf}{up}
- \tud@cdfont@fallback\univls{Univers-LightOblique}{md}{sl}
- \tud@cdfont@fallback\univrs{Univers-Oblique}{md}{sl}
- \tud@cdfont@fallback\univbs{Univers-BoldOblique}{bf}{sl}
- \tud@cdfont@fallback\univxs{Univers-BlackOblique}{bf}{sl}
+ \tud@cdfont@fallback\univln{Univers-Light}{md}{up}%
+ \tud@cdfont@fallback\univrn{Univers}{md}{up}%
+ \tud@cdfont@fallback\univbn{Univers-Bold}{bf}{up}%
+ \tud@cdfont@fallback\univxn{Univers-Black}{bf}{up}%
+ \tud@cdfont@fallback\univls{Univers-LightOblique}{md}{it}%
+ \tud@cdfont@fallback\univrs{Univers-Oblique}{md}{it}%
+ \tud@cdfont@fallback\univbs{Univers-BoldOblique}{bf}{it}%
+ \tud@cdfont@fallback\univxs{Univers-BlackOblique}{bf}{it}%
\fi%
\newcommand*\textuln{}%
\newcommand*\texturn{}%
@@ -2003,26 +2012,6 @@
\newrobustcmd*\cdfontsi{\univrs}%
\newrobustcmd*\cdfontbi{\univbs}%
\newrobustcmd*\cdfontxi{\univxs}%
- \newcommand*\textcdln{}%
- \newcommand*\textcdrn{}%
- \newcommand*\textcdsn{}%
- \newcommand*\textcdbn{}%
- \newcommand*\textcdxn{}%
- \newcommand*\textcdli{}%
- \newcommand*\textcdri{}%
- \newcommand*\textcdsi{}%
- \newcommand*\textcdbi{}%
- \newcommand*\textcdxi{}%
- \DeclareTextFontCommand\textcdln{\cdfontln}%
- \DeclareTextFontCommand\textcdrn{\cdfontrn}%
- \DeclareTextFontCommand\textcdsn{\cdfontsn}%
- \DeclareTextFontCommand\textcdbn{\cdfontbn}%
- \DeclareTextFontCommand\textcdxn{\cdfontxn}%
- \DeclareTextFontCommand\textcdli{\cdfontli}%
- \DeclareTextFontCommand\textcdri{\cdfontri}%
- \DeclareTextFontCommand\textcdsi{\cdfontsi}%
- \DeclareTextFontCommand\textcdbi{\cdfontbi}%
- \DeclareTextFontCommand\textcdxi{\cdfontxi}%
\if@tud@cdfont@db@exist%
\if@tud@x@fontspec@enabled%
\def\tud@res@a{%
@@ -2041,7 +2030,7 @@
\tud@x@fontspec@init{\tud@cdfont@db}{\tud@res@a}%
\fi%
\newrobustcmd*\tud@db{%
- \usefont{\encodingdefault}{\tud@cdfont@db}{b}{n}%
+ \usefont{\f@encoding}{\tud@cdfont@db}{b}{n}%
\if@tud@cdmath@active\mathversion{tuddin}\fi%
}%
\newrobustcmd*\dinbn{\tud@db}%
@@ -2050,7 +2039,7 @@
\newcommand*\tud@db@wrn{%
\ClassWarning{\TUD@Class@Name}%
{%
- Font `DIN-Bold' is not available and therefore\MessageBreak
+ Font `DIN-Bold' is not available and therefore\MessageBreak%
can not be used for headings%
}%
\global\let\tud@db@wrn\relax%
@@ -2092,7 +2081,7 @@
\renewcommand*\cdfont[1]{%
\tud@cdfont@get{#1}%
\ifx\@tempc\relax\else%
- \ifstr{\@tempc}{dinbn}{\dinbn}{\csuse{univ\@tempc}}%
+ \tud@if@strequal{\@tempc}{dinbn}{\dinbn}{\csuse{univ\@tempc}}%
\fi%
}%
\renewcommand*\textcd[2]{%
@@ -2100,29 +2089,29 @@
\ifx\@tempc\relax%
\textsf{#2}%
\else%
- \ifstr{\@tempc}{dinbn}{\textdbn{#2}}{\csuse{textu\@tempc}{#2}}%
+ \tud@if@strequal{\@tempc}{dinbn}{\textdbn{#2}}{\csuse{textu\@tempc}{#2}}%
\fi%
}%
\fi
\newcommand*\tud@cdfont@get[1]{%
\tud@cdfont@trim\@tempa{#1}%
- \ifstr{\@tempa}{l}{\def\@tempc{ln}}{%
- \ifstr{\@tempa}{}{\def\@tempc{rn}}{%
- \ifstr{\@tempa}{r}{\def\@tempc{rn}}{%
- \ifstr{\@tempa}{s}{\def\@tempc{sn}}{%
- \ifstr{\@tempa}{b}{\def\@tempc{bn}}{%
- \ifstr{\@tempa}{x}{\def\@tempc{xn}}{%
- \ifstr{\@tempa}{li}{\def\@tempc{li}}{%
- \ifstr{\@tempa}{il}{\def\@tempc{li}}{%
- \ifstr{\@tempa}{i}{\def\@tempc{ri}}{%
- \ifstr{\@tempa}{ri}{\def\@tempc{ri}}{%
- \ifstr{\@tempa}{ir}{\def\@tempc{ri}}{%
- \ifstr{\@tempa}{si}{\def\@tempc{si}}{%
- \ifstr{\@tempa}{is}{\def\@tempc{si}}{%
- \ifstr{\@tempa}{bi}{\def\@tempc{bi}}{%
- \ifstr{\@tempa}{ib}{\def\@tempc{bi}}{%
- \ifstr{\@tempa}{xi}{\def\@tempc{xi}}{%
- \ifstr{\@tempa}{ix}{\def\@tempc{xi}}{%
+ \tud@if@strequal{\@tempa}{l} {\def\@tempc{ln}}{%
+ \tud@if@strequal{\@tempa}{} {\def\@tempc{rn}}{%
+ \tud@if@strequal{\@tempa}{r} {\def\@tempc{rn}}{%
+ \tud@if@strequal{\@tempa}{s} {\def\@tempc{sn}}{%
+ \tud@if@strequal{\@tempa}{b} {\def\@tempc{bn}}{%
+ \tud@if@strequal{\@tempa}{x} {\def\@tempc{xn}}{%
+ \tud@if@strequal{\@tempa}{li}{\def\@tempc{li}}{%
+ \tud@if@strequal{\@tempa}{il}{\def\@tempc{li}}{%
+ \tud@if@strequal{\@tempa}{i} {\def\@tempc{ri}}{%
+ \tud@if@strequal{\@tempa}{ri}{\def\@tempc{ri}}{%
+ \tud@if@strequal{\@tempa}{ir}{\def\@tempc{ri}}{%
+ \tud@if@strequal{\@tempa}{si}{\def\@tempc{si}}{%
+ \tud@if@strequal{\@tempa}{is}{\def\@tempc{si}}{%
+ \tud@if@strequal{\@tempa}{bi}{\def\@tempc{bi}}{%
+ \tud@if@strequal{\@tempa}{ib}{\def\@tempc{bi}}{%
+ \tud@if@strequal{\@tempa}{xi}{\def\@tempc{xi}}{%
+ \tud@if@strequal{\@tempa}{ix}{\def\@tempc{xi}}{%
\let\@tempc\relax%
\ClassWarning{\TUD@Class@Name}%
{The font `#1' is unknown}%
@@ -2131,20 +2120,20 @@
\if@tud@cdoldfont@active
\renewcommand*\tud@cdfont@get[1]{%
\tud@cdfont@trim\@tempa{#1}%
- \ifstr{\@tempa}{45}{\def\@tempc{ln}}{%
- \ifstr{\@tempa}{55}{\def\@tempc{rn}}{%
- \ifstr{\@tempa}{65}{\def\@tempc{bn}}{%
- \ifstr{\@tempa}{75}{\def\@tempc{xn}}{%
- \ifstr{\@tempa}{45oblique}{\def\@tempc{ls}}{%
- \ifstr{\@tempa}{55oblique}{\def\@tempc{rs}}{%
- \ifstr{\@tempa}{65oblique}{\def\@tempc{bs}}{%
- \ifstr{\@tempa}{75oblique}{\def\@tempc{xs}}{%
- \ifstr{\@tempa}{oblique45}{\def\@tempc{ls}}{%
- \ifstr{\@tempa}{oblique55}{\def\@tempc{rs}}{%
- \ifstr{\@tempa}{oblique65}{\def\@tempc{bs}}{%
- \ifstr{\@tempa}{oblique75}{\def\@tempc{xs}}{%
- \ifstr{\@tempa}{din}{\def\@tempc{dinbn}}{%
- \ifstr{\@tempa}{din65}{\def\@tempc{dinbn}}{%
+ \tud@if@strequal{\@tempa}{45} {\def\@tempc{ln}}{%
+ \tud@if@strequal{\@tempa}{55} {\def\@tempc{rn}}{%
+ \tud@if@strequal{\@tempa}{65} {\def\@tempc{bn}}{%
+ \tud@if@strequal{\@tempa}{75} {\def\@tempc{xn}}{%
+ \tud@if@strequal{\@tempa}{45oblique}{\def\@tempc{ls}}{%
+ \tud@if@strequal{\@tempa}{55oblique}{\def\@tempc{rs}}{%
+ \tud@if@strequal{\@tempa}{65oblique}{\def\@tempc{bs}}{%
+ \tud@if@strequal{\@tempa}{75oblique}{\def\@tempc{xs}}{%
+ \tud@if@strequal{\@tempa}{oblique45}{\def\@tempc{ls}}{%
+ \tud@if@strequal{\@tempa}{oblique55}{\def\@tempc{rs}}{%
+ \tud@if@strequal{\@tempa}{oblique65}{\def\@tempc{bs}}{%
+ \tud@if@strequal{\@tempa}{oblique75}{\def\@tempc{xs}}{%
+ \tud@if@strequal{\@tempa}{din} {\def\@tempc{dinbn}}{%
+ \tud@if@strequal{\@tempa}{din65} {\def\@tempc{dinbn}}{%
\let\@tempc\relax%
\ClassWarning{\TUD@Class@Name}%
{The font `#1' is unknown}%
@@ -2152,8 +2141,7 @@
}%
\fi
\newcommand*\tud@cdfont@trim[2]{%
- \protected@edef\@tempa{\trim@spaces{#2}}%
- \tud@lowerstring{\@tempa}{\@tempa}%
+ \tud@strlowercase\@tempa{\trim@spaces{#2}}%
\tud@cdfont@@trim{ }{}%
\tud@cdfont@@trim{-}{}%
\tud@cdfont@@trim{_}{}%
@@ -2162,9 +2150,9 @@
\tud@cdfont@@trim{light}{l}%
\tud@cdfont@@trim{regular}{r}%
\tud@cdfont@@trim{book}{r}%
- \tud@cdfont@@trim{semibold}{s}%
+ \tud@cdfont@@trim{semi}{s}%
\tud@cdfont@@trim{demi}{s}%
- \tud@cdfont@@trim{extrabold}{x}%
+ \tud@cdfont@@trim{extra}{x}%
\tud@cdfont@@trim{black}{x}%
\tud@cdfont@@trim{bold}{b}%
\tud@cdfont@@trim{italic}{i}%
@@ -2174,8 +2162,7 @@
}
\if@tud@cdoldfont@active
\renewcommand*\tud@cdfont@trim[2]{%
- \protected@edef\@tempa{\trim@spaces{#2}}%
- \tud@lowerstring{\@tempa}{\@tempa}%
+ \tud@strlowercase\@tempa{\trim@spaces{#2}}%
\tud@cdfont@@trim{ }{}%
\tud@cdfont@@trim{-}{}%
\tud@cdfont@@trim{_}{}%
@@ -2218,12 +2205,12 @@
\let\tud@ttfont@fam\ttdefault%
\or% roboto
\let\tud@ttfont@fam\tud@ttfont@rb%
- \or% lmodern
+ \else% lmodern
\let\tud@ttfont@fam\tud@ttfont@lm%
\fi%
\ifcase\tud@ttfont@num\relax\else% !false
\if@tud@x@fontspec@enabled%
- \ifx\ttdefault\tud@ttfont@fam\else%
+ \ifx\tud@ttfont@fam\ttdefault\else%
\tud@x@fontspec@set{tt}{\tud@ttfont@fam}%
\fi%
\else%
@@ -2308,24 +2295,24 @@
\edef\tud@ttfont@rb@scale{s*[\tud@ttfont@rb@scale]}%
\begingroup%
\def\tud@res@c##1##2{%
- \tud@lowerstring\tud@res@a{##1}%
+ \tud@strlowercase\tud@res@a{##1}%
\DeclareFontFamily{##1}{\tud@ttfont@rb}{\hyphenchar\font=\m@ne}%
\def\tud@res@b####1####2####3{%
\DeclareFontShape{##1}{\tud@ttfont@rb}{####1}{n}{%
- <->\tud@ttfont@rb@scale RobotoMono-####2-tlf-\tud@res@a%
+ <->\tud@ttfont@rb@scale RobotoMono-####2-tlf-\tud@res@a%
}{}%
\DeclareFontShape{##1}{\tud@ttfont@rb}{####1}{it}{%
- <->\tud@ttfont@rb@scale RobotoMono-####3-tlf-\tud@res@a%
+ <->\tud@ttfont@rb@scale RobotoMono-####3-tlf-\tud@res@a%
}{}%
\DeclareFontShape{##1}{\tud@ttfont@rb}{####1}{sl}{%
<->ssub*\tud@ttfont@rb/####1/it%
}{}%
\ifbool{##2}{%
\DeclareFontShape{##1}{\tud@ttfont@rb}{####1}{sc}{%
- <->\tud@ttfont@rb@scale RobotoMono-####2-tlf-sc-\tud@res@a%
+ <->\tud@ttfont@rb@scale RobotoMono-####2-tlf-sc-\tud@res@a%
}{}%
\DeclareFontShape{##1}{\tud@ttfont@rb}{####1}{scit}{%
- <->\tud@ttfont@rb@scale RobotoMono-####3-tlf-sc-\tud@res@a%
+ <->\tud@ttfont@rb@scale RobotoMono-####3-tlf-sc-\tud@res@a%
}{}%
\DeclareFontShape{##1}{\tud@ttfont@rb}{####1}{scsl}{%
<->ssub*\tud@ttfont@rb/####1/scit%
@@ -2340,8 +2327,18 @@
}%
\tud@res@c{OT1}{true}%
\tud@res@c{T1}{true}%
- \ifcsundef{T@TS1}{}{\tud@res@c{TS1}{false}}%
- \endgroup%
+ \tud@res@c{TS1}{false}%
+ \def\tud@res@a{\endgroup}%
+ \def\tud@res@b{TS1:RobotoMono-TLF}%
+ \ifcsundef{\tud@res@b}{%
+ \ClassWarningNoLine{\TUD@Class@Name}%
+ {`\tud@res@b' encoding subset undefinied}%
+ }{%
+ \eappto\tud@res@a{%
+ \noexpand\DeclareEncodingSubset{TS1}{tudtt}{\csuse{\tud@res@b}}%
+ }%
+ }%
+ \tud@res@a%
\fi%
\fi%
}
@@ -2425,7 +2422,7 @@
\newcommand*\tud@math@map@@@greeks[1]{%
\ifcsundef{it#1}{\ifcsundef{var#1}{}{\csletcs{it#1}{var#1}}}{}%
\ifcsundef{up#1}{%
- \tud@lowerstring\tud@res@a{#1}%
+ \tud@strlowercase\tud@res@a{#1}%
\edef\tud@res@a{Up\tud@res@a}%
\ifcsundef{\tud@res@a}{}{\csletcs{up#1}{\tud@res@a}}%
}{}%
@@ -2453,7 +2450,7 @@
}%
\tud@cs@use{mv@normal}%
\let\tud@res@c\@empty%
- \ifstr{\tud@math@letters@enc}{\detokenize{OML}}{%
+ \tud@if@strequal{\tud@math@letters@enc}{OML}{%
\def\tud@res@a##1{%
\ifcsundef{it##1}{%
\eappto\tud@res@c{%
@@ -2466,7 +2463,7 @@
\tud@res@cnt=\z@\relax%
\tud@math@loop@greeks@all\tud@res@a%
}{}%
- \ifstr{\tud@math@operators@enc}{\detokenize{OT1}}{%
+ \tud@if@strequal{\tud@math@operators@enc}{OT1}{%
\def\tud@res@a##1{%
\ifcsundef{up##1}{%
\eappto\tud@res@c{%
@@ -2565,26 +2562,19 @@
}%
}%
\@tud@res@swafalse%
- \ifcsdef{upalpha}{%
- \ifx\upalpha\alpha%
- \@tud@res@swatrue%
- \fi%
- }{}%
+ \ifundef{\upalpha}{}{\ifx\upalpha\alpha\@tud@res@swatrue\fi}%
\if@tud@res@swa%
\def\tud@res@c{\TUD@key@preset{slantedgreek}{false}}%
\else%
- \ifcsdef{itGamma}{%
- \ifx\itGamma\Gamma%
- \@tud@res@swatrue%
- \fi%
- }{%
+ \ifundef{\itGamma}{}{\ifx\itGamma\Gamma\@tud@res@swatrue\fi}%
+ \if@tud@res@swa\else%
\let\tud@res@a\relax%
\let\tud@res@b\relax%
\DeclareMathSymbol{\tud@res@a}{\mathalpha}{letters}{0}%
\DeclareMathSymbol{\tud@res@b}{\mathord}{letters}{0}%
- \ifx\Gamma\tud@res@a\relax\@tud@res@swatrue\fi%
- \ifx\Gamma\tud@res@b\relax\@tud@res@swatrue\fi%
- }%
+ \ifx\Gamma\tud@res@a\@tud@res@swatrue\fi%
+ \ifx\Gamma\tud@res@b\@tud@res@swatrue\fi%
+ \fi%
\if@tud@res@swa%
\def\tud@res@c{\TUD@key@preset{slantedgreek}{true}}%
\fi%
@@ -2592,43 +2582,9 @@
\edef\tud@res@c{\endgroup\expandonce\tud@res@c}%
\tud@res@c%
}
-\newcommand*\mv@tudnormal{}
-\newcommand*\mv@tudbold{}
-\newcommand*\mv@tuddin{}
-\AfterPackage*{mathastext}{%
- \newrobustcmd*\tud@mathversion[1]{%
- \begingroup%
- \let\tud@res@a\relax%
- \if@tud@cdmath@active%
- \ifstr{#1}{normal}{%
- \def\tud@res@a{tudnormal}%
- }{%
- \ifstr{#1}{bold}{%
- \def\tud@res@a{tudbold}%
- }{}%
- }%
- \fi%
- \edef\tud@res@a{%
- \endgroup%
- \noexpand\tud@cs@restore{mathversion}%
- \ifx\tud@res@a\relax%
- \noexpand\mathversion{#1}%
- \else%
- \noexpand\MTversion*{\tud@res@a}%
- \fi%
- \noexpand\tud@cs@store{mathversion}%
- \noexpand\tud@cs@letltx{mathversion}{tud@mathversion}%
- }%
- \tud@res@a%
- }%
- \AtEndPreamble{%
- \tud@cs@store{mathversion}%
- \tud@cs@letltx{mathversion}{tud@mathversion}%
- }%
-}
\newcommand*\tud@cdmath@init{%
\@tud@res@swafalse%
- \if@tud@cdfont@fam@exist%
+ \if@tud@cdmath@fam@exist%
\@tud@res@swatrue%
\if@tud@cdoldfont@active\else%
\tud@if@fdfileexists{LGR}{cmr}{}{%
@@ -2674,12 +2630,11 @@
subdued,defaultmathsizes,nosmalldelims,noequal,%
defaultrm,defaultbf,defaultit,defaultsf,defaulttt%
}{mathastext}%
- \RequirePackage{mathastext}[2018/08/22]%
+ \RequirePackage{mathastext}
\tud@math@declare@lgrgreeks{cmr}{m}{bx}{n}{it}%
\fi%
\providecommand*\MTDeclareVersion[6][]{\DeclareMathVersion{##2}}%
- \providecommand*\MTversion@@[1]{}%
- \tud@cdmath@@init{\tud@cdfont@fam@lf}{\tud@ttfont@fam}%
+ \tud@cdmath@@init%
\if@tud@cdoldfont@active%
\tud@res@cnt=\z@\relax%
\tud@math@loop@greeks@uc\tud@cdmath@declare@greek@uc%
@@ -2689,104 +2644,128 @@
\fi%
\tud@cdmath@declare@char{*}{\mathbin}{symbols}{"03}%
\tud@cdmath@also@greeks%
- \else%
- \let\mv@tudnormal\mv@normal%
- \let\mv@tudbold\mv@bold%
- \if@tud@cdoldfont@active%
+ \fi%
+ \if@tud@cdoldfont@active%
+ \if@tud@cdmath@db@exist%
+ \tud@cdmath@db@init{\tud@cdfont@db}%
+ \else%
\let\mv@tuddin\mv@bold%
\fi%
\fi%
}
-\newcommand*\tud@x@mathastext@enc{OT1}
-\newcommand*\tud@cdmath@@init[2]{%
- \tud@cdfont@@set%
- \tud@ttfont@@set%
+\newcommand*\tud@cdmath@set{}
+\newcommand*\tud@cdmath@normal@name{tudnormal@\tud@cdfont@md\tud@cdfont@bf}%
+\newcommand*\tud@cdmath@bold@name{tudbold@\tud@cdfont@md\tud@cdfont@bf}%
+\newcommand*\tud@cdmath@@init{%
+ \begingroup%
+ \let\tud@res@b\@empty%
+ \def\tud@res@a##1##2{%
+ \setbool{@tud@cdfont@heavy}{##1}%
+ \setbool{@tud@cdfont@ultrabold}{##2}%
+ \tud@cdfont@@set%
+ \tud@ttfont@@set%
+ \eappto\tud@res@b{%
+ \noexpand\tud@cdmath@@@init%
+ {\tud@cdmath@normal@name}%
+ {\tud@cdmath@bold@name}%
+ {\tud@cdfont@fam@lf}{\tud@cdfont@md}{\tud@cdfont@bf}{\tud@cdfont@ebf}%
+ {\tud@ttfont@fam}{\tud@ttfont@md}{\tud@ttfont@bf}%
+ }%
+ }%
+ \tud@res@a{false}{false}%
+ \tud@res@a{false}{true}%
+ \tud@res@a{true}{false}%
+ \tud@res@a{true}{true}%
+ \if@tud@cdfont@active\else%
+ \preto\tud@res@b{%
+ \@tud@cdfont@activetrue%
+ \tud@font@set[]%
+ }%
+ \appto\tud@res@b{%
+ \@tud@cdfont@activefalse%
+ \tud@font@set[]%
+ }%
+ \fi%
+ \preto\tud@res@b{\endgroup}%
+ \tud@res@b%
+ \renewcommand*\tud@cdmath@set{%
+ \begingroup%
+ \tud@cdfont@@set%
+ \edef\tud@res@a{%
+ \endgroup%
+ \unexpanded{\letcs\mv@normal}{mv@\tud@cdmath@normal@name}%
+ \unexpanded{\letcs\mv@bold}{mv@\tud@cdmath@bold@name}%
+ }%
+ \tud@res@a%
+ }%
+}
+\newcommand*\tud@cdmath@@@init[9]{%
\if@tud@cdoldfont@active%
- \DeclareMathVersion{tudnormal}%
- \DeclareMathVersion{tudbold}%
- \DeclareMathVersion{tuddin}%
- \SetSymbolFont{operators}{tudnormal}{OT1}{#1}{\tud@cdfont@md}{n}%
- \SetSymbolFont{operators}{tudbold}{OT1}{#1}{\tud@cdfont@bf}{n}%
- \SetSymbolFont{operators}{tuddin}{OT1}{\tud@cdfont@db}{b}{n}%
- \SetSymbolFont{letters}{tudnormal}{OML}{#1}{\tud@cdfont@md}{sl}%
- \SetSymbolFont{letters}{tudbold}{OML}{#1}{\tud@cdfont@bf}{sl}%
- \SetSymbolFont{letters}{tuddin}{OML}{\tud@cdfont@db}{b}{sl}%
- \SetSymbolFont{symbols}{tudnormal}{OMS}{#1}{\tud@cdfont@md}{n}%
- \SetSymbolFont{symbols}{tudbold}{OMS}{#1}{\tud@cdfont@bf}{n}%
- \SetSymbolFont{symbols}{tuddin}{OMS}{\tud@cdfont@db}{b}{n}%
- \SetSymbolFont{largesymbols}{tudnormal}{OMX}{iwona}{\tud@cdfont@md}{n}%
- \SetSymbolFont{largesymbols}{tudbold}{OMX}{iwona}{\tud@cdfont@bf}{n}%
- \SetSymbolFont{largesymbols}{tuddin}{OMX}{iwona}{ebc}{n}%
- \SetMathAlphabet{\mathnormal}{tudnormal}{OML}{#1}{\tud@cdfont@md}{sl}%
- \SetMathAlphabet{\mathnormal}{tudbold}{OML}{#1}{\tud@cdfont@bf}{sl}%
- \SetMathAlphabet{\mathnormal}{tuddin}{OML}{\tud@cdfont@db}{b}{sl}%
+ \DeclareMathVersion{#1}%
+ \DeclareMathVersion{#2}%
+ \SetSymbolFont{operators}{#1}{OT1}{#3}{#4}{n}%
+ \SetSymbolFont{operators}{#2}{OT1}{#3}{#5}{n}%
+ \SetSymbolFont{letters}{#1}{OML}{#3}{#4}{it}%
+ \SetSymbolFont{letters}{#2}{OML}{#3}{#5}{it}%
+ \SetSymbolFont{symbols}{#1}{OMS}{#3}{#4}{n}%
+ \SetSymbolFont{symbols}{#2}{OMS}{#3}{#5}{n}%
+ \SetSymbolFont{largesymbols}{#1}{OMX}{iwona}{#4}{n}%
+ \SetSymbolFont{largesymbols}{#2}{OMX}{iwona}{#5}{n}%
+ \SetMathAlphabet{\mathnormal}{#1}{OML}{#3}{#4}{it}%
+ \SetMathAlphabet{\mathnormal}{#2}{OML}{#3}{#5}{it}%
\tud@if@ismathalphabet{\mathbold}{%
- \SetMathAlphabet{\mathbold}{tudnormal}{OML}{#1}{\tud@cdfont@bf}{sl}%
- \SetMathAlphabet{\mathbold}{tudbold}{OML}{#1}{\tud@cdfont@ebf}{sl}%
- \SetMathAlphabet{\mathbold}{tuddin}{OML}{\tud@cdfont@db}{b}{sl}%
+ \SetMathAlphabet{\mathbold}{#1}{OML}{#3}{#5}{it}%
+ \SetMathAlphabet{\mathbold}{#2}{OML}{#3}{#6}{it}%
}{}%
\else%
- \edef\tud@res@b{\encodingdefault}%
- \@tfor\tud@res@a:={T1}{TU}{EU1}{EU2}\do{%
- \ifx\tud@res@a\tud@res@b%
- \let\tud@x@mathastext@enc\tud@res@b%
- \@break@tfor
- \fi%
- }%
- \MTDeclareVersion[it]{tudnormal}%
- {\tud@x@mathastext@enc}{#1}{\tud@cdfont@md}{n}%
- \MTDeclareVersion[it]{tudbold}%
- {\tud@x@mathastext@enc}{#1}{\tud@cdfont@bf}{n}%
- \SetSymbolFont{operators}{tudnormal}{OT1}{iwona}{\tud@cdfont@md}{n}%
- \SetSymbolFont{operators}{tudbold}{OT1}{iwona}{\tud@cdfont@bf}{n}%
- \SetSymbolFont{letters}{tudnormal}{OML}{iwona}{\tud@cdfont@md}{it}%
- \SetSymbolFont{letters}{tudbold}{OML}{iwona}{\tud@cdfont@bf}{it}%
- \SetSymbolFont{symbols}{tudnormal}{OMS}{iwona}{\tud@cdfont@md}{n}%
- \SetSymbolFont{symbols}{tudbold}{OMS}{iwona}{\tud@cdfont@bf}{n}%
- \SetSymbolFont{largesymbols}{tudnormal}{OMX}{iwona}{\tud@cdfont@md}{n}%
- \SetSymbolFont{largesymbols}{tudbold}{OMX}{iwona}{\tud@cdfont@bf}{n}%
- \SetSymbolFont{tudupgrk}{tudnormal}{LGR}{#1}{\tud@cdfont@md}{n}%
- \SetSymbolFont{tuditgrk}{tudnormal}{LGR}{#1}{\tud@cdfont@md}{it}%
- \SetSymbolFont{tudupgrk}{tudbold}{LGR}{#1}{\tud@cdfont@bf}{n}%
- \SetSymbolFont{tuditgrk}{tudbold}{LGR}{#1}{\tud@cdfont@bf}{it}%
+ \MTDeclareVersion[it]{#1}{\tud@x@mathastext@enc}{#3}{#4}{n}%
+ \MTDeclareVersion[it]{#2}{\tud@x@mathastext@enc}{#3}{#5}{n}%
+ \SetSymbolFont{operators}{#1}{OT1}{iwona}{#4}{n}%
+ \SetSymbolFont{operators}{#2}{OT1}{iwona}{#5}{n}%
+ \SetSymbolFont{letters}{#1}{OML}{iwona}{#4}{it}%
+ \SetSymbolFont{letters}{#2}{OML}{iwona}{#5}{it}%
+ \SetSymbolFont{symbols}{#1}{OMS}{iwona}{#4}{n}%
+ \SetSymbolFont{symbols}{#2}{OMS}{iwona}{#5}{n}%
+ \SetSymbolFont{largesymbols}{#1}{OMX}{iwona}{#4}{n}%
+ \SetSymbolFont{largesymbols}{#2}{OMX}{iwona}{#5}{n}%
+ \SetSymbolFont{tuditgrk}{#1}{LGR}{#3}{#4}{it}%
+ \SetSymbolFont{tuditgrk}{#2}{LGR}{#3}{#5}{it}%
+ \SetSymbolFont{tudupgrk}{#1}{LGR}{#3}{#4}{n}%
+ \SetSymbolFont{tudupgrk}{#2}{LGR}{#3}{#5}{n}%
\tud@if@ismathalphabet{\mathbold}{%
- \SetMathAlphabet{\mathbold}{tudnormal}%
- {\tud@x@mathastext@enc}{#1}{\tud@cdfont@bf}{it}%
- \SetMathAlphabet{\mathbold}{tudbold}%
- {\tud@x@mathastext@enc}{#1}{\tud@cdfont@ebf}{it}%
+ \SetMathAlphabet{\mathbold}{#1}{\tud@x@mathastext@enc}{#3}{#5}{it}%
+ \SetMathAlphabet{\mathbold}{#2}{\tud@x@mathastext@enc}{#3}{#6}{it}%
}{}%
\fi%
- \SetMathAlphabet{\mathrm}{tudnormal}{OT1}{#1}{\tud@cdfont@md}{n}%
- \SetMathAlphabet{\mathrm}{tudbold}{OT1}{#1}{\tud@cdfont@bf}{n}%
- \SetMathAlphabet{\mathbf}{tudnormal}{OT1}{#1}{\tud@cdfont@bf}{n}%
- \SetMathAlphabet{\mathbf}{tudbold}{OT1}{#1}{\tud@cdfont@ebf}{n}%
- \SetMathAlphabet{\mathsf}{tudnormal}{OT1}{#1}{\tud@cdfont@md}{n}%
- \SetMathAlphabet{\mathsf}{tudbold}{OT1}{#1}{\tud@cdfont@bf}{n}%
- \SetMathAlphabet{\mathit}{tudnormal}{OT1}{#1}{\tud@cdfont@md}{it}%
- \SetMathAlphabet{\mathit}{tudbold}{OT1}{#1}{\tud@cdfont@bf}{it}%
- \SetMathAlphabet{\mathtt}{tudnormal}{OT1}{#2}{\tud@ttfont@md}{n}%
- \SetMathAlphabet{\mathtt}{tudbold}{OT1}{#2}{\tud@ttfont@bf}{n}%
+ \AtBeginDocument{%
+ \tud@if@issymbolfont{legacymaths}{%
+ \SetSymbolFont{legacymaths}{#1}{OT1}{#3}{#4}{n}%
+ \SetSymbolFont{legacymaths}{#2}{OT1}{#3}{#5}{n}%
+ }{}%
+ }%
\if@tud@cdoldfont@active%
- \SetMathAlphabet{\mathrm}{tuddin}{OT1}{\tud@cdfont@db}{b}{n}%
- \SetMathAlphabet{\mathbf}{tuddin}{OT1}{\tud@cdfont@db}{b}{n}%
- \SetMathAlphabet{\mathsf}{tuddin}{OT1}{\tud@cdfont@db}{b}{n}%
- \SetMathAlphabet{\mathit}{tuddin}{OT1}{\tud@cdfont@db}{b}{sl}%
- \SetMathAlphabet{\mathtt}{tuddin}{OT1}{#2}{\tud@ttfont@ebf}{n}%
+ \def\tud@res@a{OT1}%
+ \else%
+ \let\tud@res@a\tud@x@mathastext@enc%
\fi%
+ \SetMathAlphabet{\mathrm}{#1}{\tud@res@a}{#3}{#4}{n}%
+ \SetMathAlphabet{\mathrm}{#2}{\tud@res@a}{#3}{#5}{n}%
+ \SetMathAlphabet{\mathbf}{#1}{\tud@res@a}{#3}{#5}{n}%
+ \SetMathAlphabet{\mathbf}{#2}{\tud@res@a}{#3}{#6}{n}%
+ \SetMathAlphabet{\mathsf}{#1}{\tud@res@a}{#3}{#4}{n}%
+ \SetMathAlphabet{\mathsf}{#2}{\tud@res@a}{#3}{#5}{n}%
+ \SetMathAlphabet{\mathit}{#1}{\tud@res@a}{#3}{#4}{it}%
+ \SetMathAlphabet{\mathit}{#2}{\tud@res@a}{#3}{#5}{it}%
+ \SetMathAlphabet{\mathtt}{#1}{\tud@res@a}{#7}{#8}{n}%
+ \SetMathAlphabet{\mathtt}{#2}{\tud@res@a}{#7}{#9}{n}%
\IfFileExists{ueus.fd}{%
- \SetMathAlphabet{\mathcal}{tudnormal}{U}{eus}{m}{n}%
- \SetMathAlphabet{\mathcal}{tudbold}{U}{eus}{b}{n}%
- \if@tud@cdoldfont@active%
- \SetMathAlphabet{\mathcal}{tuddin}{U}{eus}{b}{n}%
- \fi%
+ \SetMathAlphabet{\mathcal}{#1}{U}{eus}{m}{n}%
+ \SetMathAlphabet{\mathcal}{#2}{U}{eus}{b}{n}%
}{}%
\tud@if@ismathalphabet{\mathfrak}{%
\IfFileExists{ueuf.fd}{%
- \SetMathAlphabet{\mathfrak}{tudnormal}{U}{euf}{m}{n}%
- \SetMathAlphabet{\mathfrak}{tudbold}{U}{euf}{b}{n}%
- \if@tud@cdoldfont@active%
- \SetMathAlphabet{\mathfrak}{tuddin}{U}{euf}{b}{n}%
- \fi%
+ \SetMathAlphabet{\mathfrak}{#1}{U}{euf}{m}{n}%
+ \SetMathAlphabet{\mathfrak}{#2}{U}{euf}{b}{n}%
}{}%
}{}%
\AtBeginDocument{%
@@ -2795,14 +2774,14 @@
\tud@if@issymbolfont{AMSb}{\@tud@res@swatrue}{}%
\if@tud@res@swa%
\if@tud@cdoldfont@active%
- \DeclareFontFamily{U}{\tud@cdfont@fam@lf a}{}%
- \DeclareFontShape{U}{\tud@cdfont@fam@lf a}{m}{n}{<->cmbras10}{}%
- \SetSymbolFont{AMSa}{tudnormal}{U}{\tud@cdfont@fam@lf a}{m}{n}%
- \SetSymbolFont{AMSa}{tudbold}{U}{\tud@cdfont@fam@lf a}{m}{n}%
- \DeclareFontFamily{U}{\tud@cdfont@fam@lf b}{}%
- \DeclareFontShape{U}{\tud@cdfont@fam@lf b}{m}{n}{<->cmbrbs10}{}%
- \SetSymbolFont{AMSb}{tudnormal}{U}{\tud@cdfont@fam@lf b}{m}{n}%
- \SetSymbolFont{AMSb}{tudbold}{U}{\tud@cdfont@fam@lf b}{m}{n}%
+ \DeclareFontFamily{U}{#3a}{}%
+ \DeclareFontShape{U}{#3a}{m}{n}{<->cmbras10}{}%
+ \SetSymbolFont{AMSa}{#1}{U}{#3a}{m}{n}%
+ \SetSymbolFont{AMSa}{#2}{U}{#3a}{m}{n}%
+ \DeclareFontFamily{U}{#3b}{}%
+ \DeclareFontShape{U}{#3b}{m}{n}{<->cmbrbs10}{}%
+ \SetSymbolFont{AMSb}{#1}{U}{#3b}{m}{n}%
+ \SetSymbolFont{AMSb}{#2}{U}{#3b}{m}{n}%
\else%
\@ifpackageloaded{mdsymbol}{}{%
\appto\tud@cdmath@wrn{%
@@ -2815,18 +2794,73 @@
}%
\fi%
\fi%
- \tud@if@issymbolfont{legacymaths}{%
- \SetSymbolFont{legacymaths}{tudnormal}{OT1}{#1}{\tud@cdfont@md}{n}%
- \SetSymbolFont{legacymaths}{tudbold}{OT1}{#1}{\tud@cdfont@bf}{n}%
- \if@tud@cdoldfont@active%
- \SetSymbolFont{legacymaths}{tuddin}{OT1}{\tud@cdfont@db}{b}{n}%
- \fi%
+ }%
+}
+\if@tud@cdoldfont@active
+ \newcommand*\tud@cdmath@db@init[1]{%
+ \DeclareMathVersion{tuddin}%
+ \SetSymbolFont{operators}{tuddin}{OT1}{#1}{b}{n}%
+ \SetSymbolFont{letters}{tuddin}{OML}{#1}{b}{it}%
+ \SetSymbolFont{symbols}{tuddin}{OMS}{#1}{b}{n}%
+ \SetSymbolFont{largesymbols}{tuddin}{OMX}{iwona}{ebc}{n}%
+ \AtBeginDocument{%
+ \tud@if@issymbolfont{legacymaths}{%
+ \SetSymbolFont{legacymaths}{tuddin}{OT1}{#1}{b}{n}%
+ }{}%
+ }%
+ \SetMathAlphabet{\mathnormal}{tuddin}{OML}{#1}{b}{it}%
+ \tud@if@ismathalphabet{\mathbold}{%
+ \SetMathAlphabet{\mathbold}{tuddin}{OML}{#1}{b}{it}%
}{}%
- \if@tud@cdoldfont@active%
+ \SetMathAlphabet{\mathrm}{tuddin}{OT1}{#1}{b}{n}%
+ \SetMathAlphabet{\mathbf}{tuddin}{OT1}{#1}{b}{n}%
+ \SetMathAlphabet{\mathsf}{tuddin}{OT1}{#1}{b}{n}%
+ \SetMathAlphabet{\mathit}{tuddin}{OT1}{#1}{b}{it}%
+ \IfFileExists{ueus.fd}{%
+ \SetMathAlphabet{\mathcal}{tuddin}{U}{eus}{b}{n}%
+ }{}%
+ \tud@if@ismathalphabet{\mathfrak}{%
+ \IfFileExists{ueuf.fd}{%
+ \SetMathAlphabet{\mathfrak}{tuddin}{U}{euf}{b}{n}%
+ }{}%
+ }{}%
+ \AtBeginDocument{%
\if@tud@cdmath@active%
- \sbox\z@{\mathversion{tudnormal}$ $\mathversion{tuddin}$ $}%
+ \sbox\z@{\mathversion{normal}$ $\mathversion{tuddin}$ $}%
\fi%
- \fi%
+ }%
+ }%
+\fi
+\AfterPackage*{mathastext}{%
+ \newrobustcmd*\tud@mathversion[1]{%
+ \begingroup%
+ \let\tud@res@a\relax%
+ \if@tud@cdmath@active%
+ \tud@if@strequal{#1}{normal}{%
+ \edef\tud@res@a{\tud@cdmath@normal@name}%
+ }{%
+ \tud@if@strequal{#1}{bold}{%
+ \edef\tud@res@a{\tud@cdmath@bold@name}%
+ }{}%
+ }%
+ \fi%
+ \edef\tud@res@a{%
+ \endgroup%
+ \noexpand\tud@cs@restore{mathversion}%
+ \ifx\tud@res@a\relax%
+ \noexpand\mathversion{#1}%
+ \else%
+ \noexpand\MTversion*{\tud@res@a}%
+ \fi%
+ \noexpand\tud@cs@store{mathversion}%
+ \noexpand\tud@cs@letltx{mathversion}{tud@mathversion}%
+ }%
+ \tud@res@a%
+ \ifcsundef{mv@#1}{}{\edef\math@version{#1}}%
+ }%
+ \AtEndPreamble{%
+ \tud@cs@store{mathversion}%
+ \tud@cs@letltx{mathversion}{tud@mathversion}%
}%
}
\newcommand*\tud@cdmath@symb@list{}
@@ -2855,7 +2889,7 @@
}%
\tud@res@a%
}
-\newtoks\tud@cdmath@symbols@toks
+\tud@newtoks\tud@cdmath@symbols@toks
\newcommand*\tud@cdmath@symbols@set{%
\expandafter\IfArgIsEmpty\expandafter{\the\tud@cdmath@symbols@toks}{%
\forlistloop\tud@cdmath@symbols@set@cmd\tud@cdmath@symb@list%
@@ -2878,7 +2912,7 @@
}
\newcommand*\tud@cdmath@symbols@set@chr[1]{%
\edef\tud@res@a{\global\mathcode`#1=\the\mathcode`#1\relax}%
- \eaddto@hook\tud@cdmath@symbols@toks{\tud@res@a}%
+ \addto@hook@expandafter\tud@cdmath@symbols@toks{\tud@res@a}%
\begingroup%
\edef\tud@res@a{\expandafter\meaning\csname tud@cdmath@symbol@#1\endcsname}%
\def\tud@res@b##1"##2\@nil{"##2}%
@@ -2981,7 +3015,7 @@
}%
}
\newcommand*\tud@cdmath@also@@@greeks[1]{%
- \tud@lowerstring\tud@res@a{#1}%
+ \tud@strlowercase\tud@res@a{#1}%
\edef\tud@res@a{Up\tud@res@a}%
\ifcsundef{\tud@res@a}{}{%
\expandafter\tud@cdmath@declare@alias\expandafter{\tud@res@a}{up#1}%
@@ -2990,13 +3024,12 @@
\expandafter\tud@cdmath@declare@alias\expandafter{var#1}{it#1}%
}%
}
-\newcommand*\tud@math@set{%
+\newcommand*\tud@math@set[1][\tud@cdmath@wrn]{%
\if@tud@cdmath@active%
- \tud@cdmath@wrn%
+ #1%
\tud@cs@store{mv@normal}%
\tud@cs@store{mv@bold}%
- \let\mv@normal\mv@tudnormal%
- \let\mv@bold\mv@tudbold%
+ \tud@cdmath@set%
\tud@cdmath@symbols@set%
\ifcase\tud@slantedgreek@num\relax% upright
\tud@math@loop@greeks@all\tud@math@upright@greeks%
@@ -3011,7 +3044,7 @@
\tud@cs@restore{mv@bold}%
\tud@cdmath@symbols@reset%
\fi%
- \mathversion{normal}%
+ \expandafter\mathversion\expandafter{\math@version}%
}
\newcommand*\tud@math@upright@greeks[1]{%
\ifcsundef{up#1}{}{%
@@ -3025,49 +3058,7 @@
\csletcs{other#1}{up#1}%
}%
}
-\AtEndPreamble{%
- \if@tud@x@mweights@enabled%
- \ifundef{\bfseries@rm}{\edef\bfseries@rm{\bfdefault}}{}%
- \ifundef{\mdseries@rm}{\edef\mdseries@rm{\mddefault}}{}%
- \ifundef{\bfseries@sf}{\edef\bfseries@sf{\bfdefault}}{}%
- \ifundef{\mdseries@sf}{\edef\mdseries@sf{\mddefault}}{}%
- \ifundef{\bfseries@tt}{\edef\bfseries@tt{\bfdefault}}{}%
- \ifundef{\mdseries@tt}{\edef\mdseries@tt{\mddefault}}{}%
- \fi%
- \tud@cdfont@check%
- \tud@cdfont@init%
- \tud@ttfont@init%
- \tud@cdmath@init%
- \if@tud@x@bm@requested%
- \UnPreventPackageFromLoading{bm}%
- \if@tud@cdmath@active%
- \tud@cs@store{mv@normal}%
- \tud@cs@store{mv@bold}%
- \let\mv@normal\mv@tudnormal%
- \let\mv@bold\mv@tudbold%
- \fi%
- \RequirePackage{bm}[2017/01/16]%
- \tud@cs@restore{mv@normal}%
- \tud@cs@restore{mv@bold}%
- \fi%
- \if@tud@x@siunitx@enabled%
- \if@tud@cdfont@active%
- \if@tud@cdfont@heavy%
- \def\tud@reserved{\TUDoptions{cdfont=heavy}}%
- \else%
- \def\tud@reserved{\TUDoptions{cdfont=true}}%
- \fi%
- \else%
- \def\tud@reserved{\TUDoptions{cdfont=false}}%
- \fi%
- \expandafter\AfterEndPreamble\expandafter{\tud@reserved}%
- \TUDoptions{cdfont=false}%
- \fi%
- \tud@font@set%
- \tud@math@map@greeks%
- \tud@math@checkslanted@greeks%
- \AtBeginDocument{\tud@math@set}%
-}
+\newcommand*\tud@font@phantomglyphs{\"A\"O\"Ugjpqy}
\newcommand*\tud@head@font@light{}
\newcommand*\tud@head@font@bold{}
\newcommand*\tud@head@font@@bold{}
@@ -3088,19 +3079,19 @@
\if@tud@head@font@set%
\if@tud@x@mweights@enabled%
\DeclareFixedFont{\tud@head@font@light}{\encodingdefault}%
- {\sfdefault}{\mdseries@sf}{\updefault}{\tud@head@fontsize}%
+ {\sfdefault}{\mdseries@sf}{\shapedefault}{\tud@head@fontsize}%
\DeclareFixedFont{\tud@head@font@bold}{\encodingdefault}%
- {\sfdefault}{\bfseries@sf}{\updefault}{\tud@head@fontsize}%
+ {\sfdefault}{\bfseries@sf}{\shapedefault}{\tud@head@fontsize}%
\protected\gdef\tud@head@font@@bold{%
- \usefont{\encodingdefault}{\sfdefault}{\bfseries@sf}{\updefault}%
+ \usefont{\encodingdefault}{\sfdefault}{\bfseries@sf}{\shapedefault}%
}%
\else%
\DeclareFixedFont{\tud@head@font@light}{\encodingdefault}%
- {\sfdefault}{\mddefault}{\updefault}{\tud@head@fontsize}%
+ {\sfdefault}{\mddefault}{\shapedefault}{\tud@head@fontsize}%
\DeclareFixedFont{\tud@head@font@bold}{\encodingdefault}%
- {\sfdefault}{\bfdefault}{\updefault}{\tud@head@fontsize}%
+ {\sfdefault}{\bfdefault}{\shapedefault}{\tud@head@fontsize}%
\protected\gdef\tud@head@font@@bold{%
- \usefont{\encodingdefault}{\sfdefault}{\bfdefault}{\updefault}%
+ \usefont{\encodingdefault}{\sfdefault}{\bfdefault}{\shapedefault}%
}%
\fi%
\ifcase\tud@head@font@num\relax\else% true/heavy
@@ -3149,7 +3140,110 @@
\fi%
}%
\fi
-%%% From File: tudscr-fields.dtx
+\begingroup
+\catcode`\^=7
+\catcode30=12
+\catcode`\!=12
+\edef\tud@reserved{\@gobble^^^^0021}
+\expandafter\endgroup
+\ifx\tud@reserved\@empty
+ \RequirePackage{newunicodechar}
+ \uccode"00DF="1E9E
+ \lccode"1E9E="00DF
+ \newunicodechar{^^^^00df}{\iffontchar\font"00DF \symbol{"00DF}\else ss\fi}
+ \newunicodechar{^^^^1e9e}{\iffontchar\font"1E9E \symbol{"1E9E}\else SS\fi}
+\fi
+\newcommand*\tud@raggedright{\raggedright}
+\newcommand*\tud@RaggedRight{\raggedright}
+\AfterPackage*{ragged2e}{%
+ \ifundef{\LaTeXraggedright}{}{%
+ \renewcommand*\tud@raggedright{\LaTeXraggedright}%
+ }%
+ \renewcommand*\tud@RaggedRight{\RaggedRight}%
+}
+\AfterAtEndOfPackage*{siunitx}{%
+ \IfPackageAtLeastTF{siunitx}{2021-04-18}{%
+ \newcommand*\tud@x@siunitx@mapping{%
+ \if@tud@cdfont@active
+ \csname keys_set:nx\endcsname { siunitx / series-version-mapping }
+ {
+ \tud@cdfont@md = normal,
+ \tud@cdfont@bf = bold,
+ \tud@cdfont@ebf = bold
+ }
+ \else
+ \csname keys_set:nn\endcsname { siunitx / series-version-mapping }
+ {
+ ul = light ,
+ el = light ,
+ l = light ,
+ sl = light ,
+ m = normal ,
+ sb = bold ,
+ b = bold ,
+ eb = bold ,
+ ub = bold
+ }
+ \fi
+ }
+ \xapptocmd\tud@font@set%
+ {\tud@x@siunitx@mapping}%
+ {}{\tud@patch@wrn{tud@font@set}}%
+ }{%
+ \newcommand*\tud@x@siunitx@reset{}%
+ \providecommand*\lseries{\fontseries{l}\selectfont}%
+ \AtEndPreamble{%
+ \if@tud@cdfont@active%
+ \if@tud@cdfont@heavy%
+ \def\tud@x@siunitx@reset{\TUDoptions{cdfont=heavy}}%
+ \else%
+ \def\tud@x@siunitx@reset{\TUDoptions{cdfont=true}}%
+ \fi%
+ \appto\tud@x@siunitx@reset{\tud@font@set[]}%
+ \TUDoptions{cdfont=false}%
+ \tud@font@set[]%
+ \fi%
+ }%
+ \AtBeginDocument{\tud@x@siunitx@reset}%
+ }
+}
+\tud@newif\if@tud@x@bm@requested
+\PreventPackageFromLoading[\@tud@x@bm@requestedtrue]{bm}
+\newcommand*\tud@x@bm@delayed{%
+ \if@tud@x@bm@requested%
+ \UnPreventPackageFromLoading{bm}%
+ \if@tud@cdmath@active%
+ \tud@cs@store{mv@normal}%
+ \tud@cs@store{mv@bold}%
+ \tud@cdmath@set%
+ \fi%
+ \RequirePackage{bm}
+ \tud@cs@restore{mv@normal}%
+ \tud@cs@restore{mv@bold}%
+ \fi%
+ \let\tud@x@bm@delayed\relax%
+}
+\BeforePackage{mathastext}{\tud@x@bm@delayed}
+\AtEndPreamble{%
+ \if@tud@x@mweights@enabled%
+ \ifundef{\bfseries@rm}{\edef\bfseries@rm{\bfdefault}}{}%
+ \ifundef{\mdseries@rm}{\edef\mdseries@rm{\mddefault}}{}%
+ \ifundef{\bfseries@sf}{\edef\bfseries@sf{\bfdefault}}{}%
+ \ifundef{\mdseries@sf}{\edef\mdseries@sf{\mddefault}}{}%
+ \ifundef{\bfseries@tt}{\edef\bfseries@tt{\bfdefault}}{}%
+ \ifundef{\mdseries@tt}{\edef\mdseries@tt{\mddefault}}{}%
+ \fi%
+ \tud@cdfont@check%
+ \tud@cdfont@init%
+ \tud@ttfont@init%
+ \tud@font@set%
+ \tud@cdmath@init%
+ \tud@x@bm@delayed%
+ \tud@math@map@greeks%
+ \tud@math@checkslanted@greeks%
+ \AtBeginDocument{\tud@math@set}%
+}
+%%%% From File: tudscr-fields.dtx (no git version info was found)
\newcommand*\getfield[2][\@firstofone]{%
\begingroup%
\def\tud@res@b{#1}%
@@ -3179,32 +3273,31 @@
\newcommand*\@departmentfoot{}
\newcommand*\@institutefoot{}
\newcommand*\@chairfoot{}
-\newcommand*\faculty[2][\@empty]{\tud@foot@line@add{faculty}{#2}{#1}}
-\newcommand*\department[2][\@empty]{\tud@foot@line@add{department}{#2}{#1}}
-\newcommand*\institute[2][\@empty]{\tud@foot@line@add{institute}{#2}{#1}}
-\newcommand*\chair[2][\@empty]{\tud@foot@line@add{chair}{#2}{#1}}
+\newcommand*\faculty{\@dblarg{\tud@head@text@field{faculty}}}
+\newcommand*\department{\@dblarg{\tud@head@text@field{department}}}
+\newcommand*\institute{\@dblarg{\tud@head@text@field{institute}}}
+\newcommand*\chair{\@dblarg{\tud@head@text@field{chair}}}
\newcommand*\@extraheadline{}
-\newcommand*\extraheadline[1]{\tud@head@text@field{extraheadline}{#1}}
-\newcommand*\tud@head@text@field[2]{%
- \csgdef{@#1}{\trim@spaces{#2}}%
+\newcommand*\extraheadline[1]{\tud@head@text@field{extraheadline}[]{#1}}
+\newcommand*\tud@head@text@field{}
+\def\tud@head@text@field#1[#2]#3{%
+ \expandafter\tud@trim@field\csname @#1\endcsname{#3}%
+ \expandafter\tud@trim@field\csname @#1foot\endcsname{#2}%
\global\@tud@head@text@settrue%
}
-\newcommand*\tud@foot@line@add[3]{%
- \tud@head@text@field{#1}{#2}%
- \ifx\@empty#3\relax%
- \global\csletcs{@#1foot}{@#1}%
- \else%
- \csgdef{@#1foot}{\trim@spaces{#3}}%
- \fi%
-}
\newcommand*\tud@foot@line@write[1]{%
\protected@edef\@tempa{\csuse{@#1foot}}%
\ifx\@tempa\@empty\else\newline\mbox{\csuse{@#1foot}}\fi%
}
+\newcommand*\tud@trim@field[2]{%
+ \def#1{#2}%
+ \trim@spaces@in#1%
+ \global\let#1#1%
+}
\newcommand*\@@title{}
\robustify\@title
\renewcommand*\title[1]{%
- \gdef\@title{#1}%
+ \tud@trim@field\@title{#1}%
\begingroup%
\let\thanks\@gobble%
\let\footnote\@gobble%
@@ -3215,7 +3308,7 @@
}
\newcommand*\@@author{}
\renewcommand*\author[1]{%
- \gdef\@author{#1}%
+ \tud@trim@field\@author{#1}%
\begingroup%
\let\thanks\@gobble%
\let\footnote\@gobble%
@@ -3247,45 +3340,57 @@
\endgroup%
}
\newcommand*\@authormore{}
-\newrobustcmd*\authormore[1]{\gdef\@authormore{#1}\ignorespaces}
+\newrobustcmd*\authormore[1]{\tud@trim@field\@authormore{#1}}
\newcommand*\@emailaddress{}
-\newrobustcmd*\emailaddress{%
- \kernel@ifstar{\tud@emailaddress@simple}{\tud@emailaddress@hyper}%
+\newrobustcmd*\emailaddress[2][]{%
+ \kernel@ifstar%
+ {\tud@emailaddress@simple{#2}}%
+ {\tud@emailaddress@hyper[{#1}]{#2}}%
}
-\newrobustcmd*\tud@emailaddress@simple[1]{\gdef\@emailaddress{#1}}
-\newrobustcmd*\tud@emailaddress@hyper[2][]{\gdef\@emailaddress{#2}}
+\newrobustcmd*\tud@emailaddress@simple[1]{\tud@trim@field\@emailaddress{#1}}
+\newrobustcmd*\tud@emailaddress@hyper[2][]{\tud@trim@field\@emailaddress{#2}}
\AfterPackage{hyperref}{%
\renewrobustcmd*\tud@emailaddress@hyper[2][hidelinks]{%
- \gdef\@emailaddress{%
+ \tud@trim@field\@emailaddress{#2}%
+ \xdef\@emailaddress{%
\begingroup%
- \urlstyle{same}%
- \hypersetup{#1}%
- \href{mailto:#2}{\nolinkurl{#2}}%
+ \noexpand\urlstyle{same}%
+ \unexpanded{\hypersetup{#1}}%
+ \noexpand\href%
+ {mailto:\expandonce\@emailaddress}%
+ {\noexpand\nolinkurl{\expandonce\@emailaddress}}%
\endgroup%
}%
}%
}
\newcommand*\@course{}
-\newrobustcmd*\course[1]{\gdef\@course{#1}\ignorespaces}
+\newrobustcmd*\course[1]{\tud@trim@field\@course{#1}}
\newcommand*\@discipline{}
-\newrobustcmd*\discipline[1]{\gdef\@discipline{#1}\ignorespaces}
+\newrobustcmd*\discipline[1]{\tud@trim@field\@discipline{#1}}
\newcommand*\@professorfoot{}
-\newcommand*\professor[1]{\gdef\@professorfoot{#1}}
+\newcommand*\professor[1]{\tud@trim@field\@professorfoot{#1}}
\newcommand*\supervisor[1]{}
+\CheckCommand*\subtitle[1]{\gdef\@subtitle{#1}}
+\renewcommand*\subtitle[1]{\tud@trim@field\@subtitle{#1}}
+\CheckCommand\publishers[1]{\gdef\@publishers{#1}}%
+\renewcommand*\publishers[1]{\tud@trim@field\@publishers{#1}}
\providecommand*\publisher[1]{\publishers{#1}}
\newcommand*\@webpage{}
-\newrobustcmd*\webpage{%
- \kernel@ifstar{\tud@webpage@simple}{\tud@webpage@hyper}%
+\newrobustcmd*\webpage[2][]{%
+ \kernel@ifstar%
+ {\tud@webpage@simple{#2}}%
+ {\tud@webpage@hyper[{#1}]{#2}}%
}
-\newrobustcmd*\tud@webpage@simple[1]{\gdef\@webpage{#1}}
-\newrobustcmd*\tud@webpage@hyper[2][]{\gdef\@webpage{#2}}
+\newrobustcmd*\tud@webpage@simple[1]{\tud@trim@field\@webpage{#1}}
+\newrobustcmd*\tud@webpage@hyper[2][]{\tud@trim@field\@webpage{#2}}
\AfterPackage{hyperref}{%
\renewrobustcmd*\tud@webpage@hyper[2][hidelinks]{%
- \gdef\@webpage{%
+ \tud@trim@field\@webpage{#2}%
+ \xdef\@webpage{%
\begingroup%
- \urlstyle{same}%
- \hypersetup{#1}%
- \url{#2}%
+ \noexpand\urlstyle{same}%
+ \unexpanded{\hypersetup{#1}}%
+ \noexpand\url{\expandonce\@webpage}%
\endgroup%
}%
}%
@@ -3301,9 +3406,10 @@
\ifx\today#2\relax%
\gdef#1{#2}%
\else%
- \ifxblank{#2}%
- {\gdef#1{}}%
- {\gdef#1{\printdate{#2}}}%
+ \tud@trim@field#1{#2}%
+ \tud@if@strblank{#1}%
+ {}%
+ {\xdef#1{\noexpand\printdate{\expandonce#1}}}%
\fi%
}
\newcommand*\tud@date@check{%
@@ -3349,29 +3455,48 @@
}
\newcommand*\tud@date@print{%
\ifx\@date\@empty\else%
+ \trim@spaces@in\@beforedate%
\ifx\@beforedate\@empty\else%
- \expandafter\trim@spaces@noexp\expandafter{\@beforedate}\nobreakspace%
+ \@beforedate\nobreakspace%
\fi%
\@date%
+ \trim@spaces@in\@afterdate%
\ifx\@afterdate\@empty\else%
- \nobreakspace\expandafter\trim@spaces@noexp\expandafter{\@afterdate}%
+ \nobreakspace\@afterdate%
\fi%
\fi%
}
\newcommand*\@contactperson{}
-\newcommand*\contactperson[1]{\gdef\@contactperson{#1}}
+\newcommand*\contactperson[1]{\tud@trim@field\@contactperson{#1}}
\let\supervisor\contactperson
\newcommand*\@office{}
-\newrobustcmd*\office[1]{\gdef\@office{#1}}
+\newrobustcmd*\office[1]{\tud@trim@field\@office{#1}}
\newcommand*\@telephone{}
-\newrobustcmd*\telephone[1]{\gdef\@telephone{#1}}
+\newrobustcmd*\telephone[1]{\tud@trim@field\@telephone{#1}}
\newcommand*\@telefax{}
-\newrobustcmd*\telefax[1]{\gdef\@telefax{#1}}
+\newrobustcmd*\telefax[1]{\tud@trim@field\@telefax{#1}}
+\newcommand*\tud@if@field@unset[1]{%
+ \begingroup%
+ \edef\tud@res@a{%
+ \def\noexpand\tud@res@a####1\string\@latex@####2\noexpand\@nil{%
+ \noexpand\IfArgIsEmpty{####2}%
+ \unexpanded{\@tud@res@swafalse\@tud@res@swatrue}%
+ }%
+ \noexpand\tud@res@a%
+ \expandafter\strip@prefix\meaning#1%
+ \string\@latex@\noexpand\@nil%
+ }%
+ \tud@res@a%
+ \if@tud@res@swa%
+ \aftergroup\@firstoftwo%
+ \else%
+ \aftergroup\@secondoftwo%
+ \fi%
+ \endgroup%
+}
\newcommand*\tud@multiple@@split{}
\newcommand*\tud@multiple@split[1]{%
- \expandafter\ifpatchable\expandafter{\csname#1\endcsname}{%
- \@latex@warning@no@line%
- }{%
+ \expandafter\tud@if@field@unset\expandafter{\csname #1\endcsname}{%
\csuse{#1}\csgdef{#1}{}%
}{}%
\def\tud@multiple@@split##1\and##2\relax{%
@@ -3381,20 +3506,27 @@
\let\and\relax%
\let\newline\@empty%
\let\\\@empty%
- \edef\@tempa{\csname#1\endcsname\and}%
+ \edef\@tempa{\csname #1\endcsname\and}%
\expandafter\endgroup%
\expandafter\tud@multiple@@split\@tempa\relax%
}
\newcommand*\tud@multiple@@@split[2]{%
- \ifx\relax#1\relax%
+ \IfArgIsEmpty{#1}{%
\let\@tempb\relax%
- \else%
+ }{%
\def\@tempb{#2\tud@multiple@@split#1\relax}%
- \fi%
+ }%
\@tempb%
}
\newcommand*\tud@multiple@fields@store[2]{%
- \def\@tempa##1{\ifcsdef{@##1}{\tud@cs@store{@##1}}{}}%
+ \def\@tempa##1{%
+ \ifcsdef{@##1}{\tud@cs@store{@##1}}{}%
+ \ifcsdef{##1}{%
+ \tud@cs@store{##1}%
+ \expandafter\xapptocmd\csname ##1\endcsname{\ignorespaces}%
+ {}{\tud@patch@wrn##1}%
+ }{}%
+ }%
\letcs\@tempb{tud@split#1@list}%
\let\and\relax%
\expandafter\forcsvlist\expandafter\@tempa\expandafter{\@tempb}%
@@ -3410,6 +3542,7 @@
\tud@cs@restore{@##1}%
\global\csletcs{@##1}{@##1}%
}{}%
+ \ifcsdef{##1}{\tud@cs@restore{##1}}{}%
}%
\letcs\@tempb{tud@split#1@list}%
\let\and\relax%
@@ -3418,16 +3551,16 @@
\newcommand*\tud@multiple@fields@preset[3]{%
\def\@tempa##1{%
\edef\@tempc{\csuse{##1}}%
- \ifstr{#2}{*}{%
+ \if\detokenize{#2*}\relax%
\csdef{@##1}{}%
- }{%
+ \else%
\begingroup%
\protected@expandtwoargs\in@{\@tempc}{\csuse{#1}}%
\ifin@%
\ifcsvoid{@##1}{\@tempc{#2}}{}%
\fi%
\endgroup%
- }%
+ \fi%
}%
\letcs\@tempb{tud@split#1@list}%
\let\and\relax%
@@ -3444,7 +3577,7 @@
}
\newcommand*\tud@split@contactperson@do[2]{}
\newcommand*\tud@split@contactperson@list{emailaddress,office,telephone,telefax}
-%%% From File: tudscr-localization.dtx
+%%%% From File: tudscr-localization.dtx (no git version info was found)
\newcommand*\tud@localization@define[1]{%
\providecommand*#1{%
\ClassError{\TUD@Class@Name}{%
@@ -3454,7 +3587,7 @@
languages german and english as well as its dialects. You\MessageBreak%
must define single patterns by yourself, e.g.:\MessageBreak%
`\string\providecaptionname{\languagename}\string#1{<text>}'\MessageBreak%
- You can send your definitions to \tudscrmail\space in\MessageBreak%
+ You can send your definitions to \TUDScriptContact\space in\MessageBreak%
order to implement support for additional languages.%
}%
}%
@@ -3463,6 +3596,7 @@
\tud@localization@define{\disciplinename}
\tud@localization@define{\listingname}
\tud@localization@define{\listlistingname}
+\tud@localization@define{\habilitationname}
\tud@localization@define{\dissertationname}
\tud@localization@define{\diplomathesisname}
\tud@localization@define{\masterthesisname}
@@ -3503,6 +3637,7 @@
\tud@localization@german{\disciplinename}{Studienrichtung}
\tud@localization@german{\listingname}{Quelltext}
\tud@localization@german{\listlistingname}{Quelltextverzeichnis}
+\tud@localization@german{\habilitationname}{Habilitation}
\tud@localization@german{\dissertationname}{Dissertation}
\tud@localization@german{\diplomathesisname}{Diplomarbeit}
\tud@localization@german{\masterthesisname}{Master-Arbeit}
@@ -3528,6 +3663,7 @@
\tud@localization@english{\disciplinename}{Discipline}
\tud@localization@english{\listingname}{Listing}
\tud@localization@english{\listlistingname}{List of Listings}
+\tud@localization@english{\habilitationname}{Habilitation}
\tud@localization@english{\dissertationname}{Dissertation}
\tud@localization@english{\diplomathesisname}{Diploma Thesis}
\tud@localization@english{\masterthesisname}{Master Thesis}
@@ -3554,8 +3690,8 @@
\tud@localization@english{\@commaswap}{\,}%
\tud@localization@english{\@dotswap}{.}%
}
-%%% From File: tudscr-area.dtx
-\newif\if@tud@x@crop@center
+%%%% From File: tudscr-area.dtx (no git version info was found)
+\tud@newif\if@tud@x@crop@center
\AfterPackage{crop}{%
\CheckCommand*\CROP@center{%
\voffset\stockheight
@@ -3565,73 +3701,73 @@
\advance\hoffset-\paperwidth
\hoffset.5\hoffset
}%
- \pretocmd{\CROP@center}{%
+ \pretocmd\CROP@center{%
\@tud@x@crop@centertrue%
}{}{\tud@patch@wrn{CROP@center}}%
}
-\newif\if@tud@x@standalone@crop
+\tud@newif\if@tud@x@standalone@crop
\AfterClass*{standalone}{\let\if@tud@x@standalone@crop\ifsa@crop}
-\newlength\tud@len@widemargin
-\newlength\tud@len@slimmargin
-\newlength\tud@len@both
-\newlength\tud@len@topmargin
-\newlength\tud@len@barheight
-\newlength\tud@len@headsep
-\newlength\tud@len@footsep
-\newlength\tud@len@logox
-\newlength\tud@len@logoy
-\newlength\tud@len@logowidth
-\newlength\tud@len@line
-\newlength\tud@len@heavyline
-\newlength\tud@len@thinline
-\newlength\tud@len@areaheadvskip
-\newlength\tud@len@areadiff
-\newlength\tud@len@areavskip
-\tud@if@v@lower{2.03}{\newlength\tud@len@ddcdiff}{}
+\tud@newdim\tud@dim@widemargin
+\tud@newdim\tud@dim@slimmargin
+\tud@newdim\tud@dim@bothmargin
+\tud@newdim\tud@dim@topmargin
+\tud@newdim\tud@dim@barheight
+\tud@newdim\tud@dim@headsep
+\tud@newdim\tud@dim@footsep
+\tud@newdim\tud@dim@logox
+\tud@newdim\tud@dim@logoy
+\tud@newdim\tud@dim@logowidth
+\tud@newdim\tud@dim@line
+\tud@newdim\tud@dim@heavyline
+\tud@newdim\tud@dim@thinline
+\tud@newdim\tud@dim@areaheadvskip
+\tud@newdim\tud@dim@areadiff
+\tud@newdim\tud@dim@areavskip
+\tud@if@v@lower{2.03}{\tud@newdim\tud@dim@ddcdiff}{}
\newcommand*\tud@head@fontsize{}
-\newif\if@tud@cdgeometry@adjust
-\newlength\tud@len@layoutwidth
-\newlength\tud@len@layoutheight
-\newlength\tud@len@layouthoffset
-\newlength\tud@len@layoutvoffset
+\tud@newif\if@tud@cdgeometry@adjust
+\tud@newdim\tud@dim@layoutwidth
+\tud@newdim\tud@dim@layoutheight
+\tud@newdim\tud@dim@layouthoffset
+\tud@newdim\tud@dim@layoutvoffset
\newcommand*\tud@cdgeometry@set{%
\tud@cdgeometry@assignlayout%
\tud@if@v@lower{2.05}{%
- \ifdim\tud@len@layoutheight<\dimexpr105mm+1.5mm\relax%
+ \ifdim\tud@dim@layoutheight<\dimexpr105mm+1.5mm\relax%
\def\@tempa{0}%
- \else\ifdim\tud@len@layoutheight<\dimexpr148mm+1.5mm\relax%
+ \else\ifdim\tud@dim@layoutheight<\dimexpr148mm+1.5mm\relax%
\def\@tempa{1}%
- \else\ifdim\tud@len@layoutheight<\dimexpr229mm+2mm\relax%
+ \else\ifdim\tud@dim@layoutheight<\dimexpr229mm+2mm\relax%
\def\@tempa{2}%
- \else\ifdim\tud@len@layoutheight<\dimexpr297mm+2mm\relax%
+ \else\ifdim\tud@dim@layoutheight<\dimexpr297mm+2mm\relax%
\def\@tempa{3}%
- \else\ifdim\tud@len@layoutheight<\dimexpr420mm+2mm\relax%
+ \else\ifdim\tud@dim@layoutheight<\dimexpr420mm+2mm\relax%
\def\@tempa{4}%
- \else\ifdim\tud@len@layoutheight<\dimexpr594mm+2mm\relax%
+ \else\ifdim\tud@dim@layoutheight<\dimexpr594mm+2mm\relax%
\def\@tempa{5}%
- \else\ifdim\tud@len@layoutheight<\dimexpr841mm+3mm\relax%
+ \else\ifdim\tud@dim@layoutheight<\dimexpr841mm+3mm\relax%
\def\@tempa{6}%
- \else\ifdim\tud@len@layoutheight<\dimexpr1189mm+3mm\relax%
+ \else\ifdim\tud@dim@layoutheight<\dimexpr1189mm+3mm\relax%
\def\@tempa{7}%
\else%
\def\@tempa{8}%
\fi\fi\fi\fi\fi\fi\fi\fi%
}{%
- \ifdim\tud@len@layoutheight<\dimexpr125mm+1.5mm\relax%
+ \ifdim\tud@dim@layoutheight<\dimexpr125mm+1.5mm\relax%
\def\@tempa{0}%
- \else\ifdim\tud@len@layoutheight<\dimexpr176mm+2mm\relax%
+ \else\ifdim\tud@dim@layoutheight<\dimexpr176mm+2mm\relax%
\def\@tempa{1}%
- \else\ifdim\tud@len@layoutheight<\dimexpr250mm+2mm\relax%
+ \else\ifdim\tud@dim@layoutheight<\dimexpr250mm+2mm\relax%
\def\@tempa{2}%
- \else\ifdim\tud@len@layoutheight<\dimexpr353mm+2mm\relax%
+ \else\ifdim\tud@dim@layoutheight<\dimexpr353mm+2mm\relax%
\def\@tempa{3}%
- \else\ifdim\tud@len@layoutheight<\dimexpr500mm+2mm\relax%
+ \else\ifdim\tud@dim@layoutheight<\dimexpr500mm+2mm\relax%
\def\@tempa{4}%
- \else\ifdim\tud@len@layoutheight<\dimexpr707mm+3mm\relax%
+ \else\ifdim\tud@dim@layoutheight<\dimexpr707mm+3mm\relax%
\def\@tempa{5}%
- \else\ifdim\tud@len@layoutheight<\dimexpr1000mm+3mm\relax%
+ \else\ifdim\tud@dim@layoutheight<\dimexpr1000mm+3mm\relax%
\def\@tempa{6}%
- \else\ifdim\tud@len@layoutheight<\dimexpr1414mm+3mm\relax%
+ \else\ifdim\tud@dim@layoutheight<\dimexpr1414mm+3mm\relax%
\def\@tempa{7}%
\else%
\def\@tempa{8}%
@@ -3654,58 +3790,58 @@
calculate a proper type area%
}%
\fi%
- \tud@divide\@tempa{\tud@len@layoutheight}{148mm}%
- \setlength\tud@len@widemargin{15mm}%
- \setlength\tud@len@widemargin{\@tempa\tud@len@widemargin}%
- \setlength\tud@len@heavyline{0.5pt}%
- \setlength\tud@len@heavyline{\@tempa\tud@len@heavyline}%
- \setlength\tud@len@thinline{0.25pt}%
- \setlength\tud@len@thinline{\@tempa\tud@len@thinline}%
- \setlength\@tempdima{4.5pt}%
- \setlength\@tempdima{\@tempa\@tempdima}%
+ \tud@divide\@tempa{\tud@dim@layoutheight}{148mm}%
+ \tud@setdim\tud@dim@widemargin{15mm}%
+ \tud@setdim\tud@dim@widemargin{\@tempa\tud@dim@widemargin}%
+ \tud@setdim\tud@dim@heavyline{0.5pt}%
+ \tud@setdim\tud@dim@heavyline{\@tempa\tud@dim@heavyline}%
+ \tud@setdim\tud@dim@thinline{0.25pt}%
+ \tud@setdim\tud@dim@thinline{\@tempa\tud@dim@thinline}%
+ \tud@setdim\@tempdima{4.5pt}%
+ \tud@setdim\@tempdima{\@tempa\@tempdima}%
\edef\tud@head@fontsize{\strip@pt\@tempdima}%
\or% <=A6/B6
- \setlength\tud@len@widemargin{15mm}%
- \setlength\tud@len@heavyline{0.5pt}%
- \setlength\tud@len@thinline{0.25pt}%
+ \tud@setdim\tud@dim@widemargin{15mm}%
+ \tud@setdim\tud@dim@heavyline{0.5pt}%
+ \tud@setdim\tud@dim@thinline{0.25pt}%
\renewcommand*\tud@head@fontsize{4.5}%
\or% <=A5/B5
\ifnum\tud@cdgeometry@calc@num=\z@\relax% restricted
\@tud@cdgeometry@adjusttrue%
- \setlength\tud@len@widemargin{30mm}%
- \setlength\tud@len@heavyline{1pt}%
- \setlength\tud@len@thinline{0.5pt}%
+ \tud@setdim\tud@dim@widemargin{30mm}%
+ \tud@setdim\tud@dim@heavyline{1pt}%
+ \tud@setdim\tud@dim@thinline{0.5pt}%
\renewcommand*\tud@head@fontsize{9}%
\else%
- \setlength\tud@len@widemargin{21.213203mm}%
- \setlength\tud@len@heavyline{0.707107pt}%
- \setlength\tud@len@thinline{0.353553pt}%
+ \tud@setdim\tud@dim@widemargin{21.213203mm}%
+ \tud@setdim\tud@dim@heavyline{0.707107pt}%
+ \tud@setdim\tud@dim@thinline{0.353553pt}%
\renewcommand*\tud@head@fontsize{6.363961}%
\fi%
\or% <=A4/B4
- \setlength\tud@len@widemargin{30mm}%
- \setlength\tud@len@heavyline{1pt}%
- \setlength\tud@len@thinline{0.5pt}%
+ \tud@setdim\tud@dim@widemargin{30mm}%
+ \tud@setdim\tud@dim@heavyline{1pt}%
+ \tud@setdim\tud@dim@thinline{0.5pt}%
\renewcommand*\tud@head@fontsize{9}%
\or% <=A3/B3
- \setlength\tud@len@widemargin{42.426407mm}%
- \setlength\tud@len@heavyline{1.414214pt}%
- \setlength\tud@len@thinline{0.707107pt}%
+ \tud@setdim\tud@dim@widemargin{42.426407mm}%
+ \tud@setdim\tud@dim@heavyline{1.414214pt}%
+ \tud@setdim\tud@dim@thinline{0.707107pt}%
\renewcommand*\tud@head@fontsize{12.727922}%
\or% <=A2/B2
- \setlength\tud@len@widemargin{60mm}%
- \setlength\tud@len@heavyline{2pt}%
- \setlength\tud@len@thinline{1pt}%
+ \tud@setdim\tud@dim@widemargin{60mm}%
+ \tud@setdim\tud@dim@heavyline{2pt}%
+ \tud@setdim\tud@dim@thinline{1pt}%
\renewcommand*\tud@head@fontsize{18}%
\or% <=A1/B1
- \setlength\tud@len@widemargin{84.852814mm}%
- \setlength\tud@len@heavyline{2.828427pt}%
- \setlength\tud@len@thinline{1.414214pt}%
+ \tud@setdim\tud@dim@widemargin{84.852814mm}%
+ \tud@setdim\tud@dim@heavyline{2.828427pt}%
+ \tud@setdim\tud@dim@thinline{1.414214pt}%
\renewcommand*\tud@head@fontsize{25.455844}%
\or% <=A0/B0
- \setlength\tud@len@widemargin{120mm}%
- \setlength\tud@len@heavyline{4pt}%
- \setlength\tud@len@thinline{2pt}%
+ \tud@setdim\tud@dim@widemargin{120mm}%
+ \tud@setdim\tud@dim@heavyline{4pt}%
+ \tud@setdim\tud@dim@thinline{2pt}%
\renewcommand*\tud@head@fontsize{36}%
\else% >A0/B0
\ifnum\tud@cdgeometry@calc@num=\tw@\relax\else%
@@ -3716,50 +3852,48 @@
calculate a proper type area%
}%
\fi%
- \tud@divide\@tempa{\tud@len@layoutheight}{1189mm}%
- \setlength\tud@len@widemargin{120mm}%
- \setlength\tud@len@widemargin{\@tempa\tud@len@widemargin}%
- \setlength\tud@len@heavyline{4pt}%
- \setlength\tud@len@heavyline{\@tempa\tud@len@heavyline}%
- \setlength\tud@len@thinline{2pt}%
- \setlength\tud@len@thinline{\@tempa\tud@len@thinline}%
- \setlength\@tempdima{36pt}%
- \setlength\@tempdima{\@tempa\@tempdima}%
+ \tud@divide\@tempa{\tud@dim@layoutheight}{1189mm}%
+ \tud@setdim\tud@dim@widemargin{120mm}%
+ \tud@setdim\tud@dim@widemargin{\@tempa\tud@dim@widemargin}%
+ \tud@setdim\tud@dim@heavyline{4pt}%
+ \tud@setdim\tud@dim@heavyline{\@tempa\tud@dim@heavyline}%
+ \tud@setdim\tud@dim@thinline{2pt}%
+ \tud@setdim\tud@dim@thinline{\@tempa\tud@dim@thinline}%
+ \tud@setdim\@tempdima{36pt}%
+ \tud@setdim\@tempdima{\@tempa\@tempdima}%
\edef\tud@head@fontsize{\strip@pt\@tempdima}%
\fi%
\ifnum\tud@cdgeometry@calc@num=\tw@\relax%
- \tud@divide\@tempa{\tud@len@layoutheight}{297mm}%
- \setlength\tud@len@widemargin{\@tempa\tud@len@widemargin}%
- \setlength\tud@len@heavyline{\@tempa\tud@len@heavyline}%
- \setlength\tud@len@thinline{\@tempa\tud@len@thinline}%
- \setlength\@tempdima{\tud@head@fontsize pt}%
- \setlength\@tempdima{\@tempa\@tempdima}%
+ \tud@divide\@tempa{\tud@dim@layoutheight}{297mm}%
+ \tud@setdim\tud@dim@widemargin{\@tempa\tud@dim@widemargin}%
+ \tud@setdim\tud@dim@heavyline{\@tempa\tud@dim@heavyline}%
+ \tud@setdim\tud@dim@thinline{\@tempa\tud@dim@thinline}%
+ \tud@setdim\@tempdima{\tud@head@fontsize pt}%
+ \tud@setdim\@tempdima{\@tempa\@tempdima}%
\edef\tud@head@fontsize{\strip@pt\@tempdima}%
\fi%
\global\@tud@head@font@settrue%
- \setlength\tud@len@slimmargin{\dimexpr2\tud@len@widemargin/3\relax}%
- \setlength\tud@len@both{\dimexpr5\tud@len@widemargin/3\relax}%
- \setlength\tud@len@topmargin{\dimexpr7\tud@len@widemargin/6\relax}%
- \setlength\tud@len@barheight{\dimexpr\tud@len@widemargin/6\relax}%
- \setlength\tud@len@headsep{\dimexpr2\tud@len@widemargin/5\relax}%
- \setlength\tud@len@logox{\dimexpr1.1\tud@len@widemargin/3\relax}%
- \setlength\tud@len@logoy{\dimexpr0.45\tud@len@widemargin\relax}%
- \setlength\tud@len@logowidth{\dimexpr1.9\tud@len@widemargin\relax}%
- \setlength\tud@len@footsep{%
- \dimexpr\tud@len@widemargin-.6\tud@len@topmargin\relax%
- }%
+ \tud@setdim\tud@dim@slimmargin{\tud@dim@widemargin*2/3}%
+ \tud@setdim\tud@dim@bothmargin{\tud@dim@widemargin*5/3}%
+ \tud@setdim\tud@dim@topmargin{\tud@dim@widemargin*7/6}%
+ \tud@setdim\tud@dim@barheight{\tud@dim@widemargin/6}%
+ \tud@setdim\tud@dim@headsep{\tud@dim@widemargin*2/5}%
+ \tud@setdim\tud@dim@logox{\tud@dim@widemargin*11/30}%
+ \tud@setdim\tud@dim@logoy{\tud@dim@widemargin*9/20}%
+ \tud@setdim\tud@dim@logowidth{\tud@dim@widemargin*19/10}%
+ \tud@setdim\tud@dim@footsep{\tud@dim@widemargin-\tud@dim@topmargin*3/5}%
\if@tud@cdgeometry@adjust%
- \setlength\tud@len@headsep{\dimexpr.707107\tud@len@headsep\relax}%
- \setlength\tud@len@footsep{\dimexpr.707107\tud@len@footsep\relax}%
+ \tud@setdim\tud@dim@headsep{.707107\tud@dim@headsep}%
+ \tud@setdim\tud@dim@footsep{.707107\tud@dim@footsep}%
\fi%
\tud@cdgeometry@papersize@store%
}
\newcommand*\tud@cdgeometry@assignlayout{%
- \ifdim\tud@len@layoutwidth<\p@\relax%
- \setlength\tud@len@layoutwidth{\paperwidth}%
+ \ifdim\tud@dim@layoutwidth<\p@\relax%
+ \tud@setdim\tud@dim@layoutwidth{\paperwidth}%
\fi%
- \ifdim\tud@len@layoutheight<\p@\relax%
- \setlength\tud@len@layoutheight{\paperheight}%
+ \ifdim\tud@dim@layoutheight<\p@\relax%
+ \tud@setdim\tud@dim@layoutheight{\paperheight}%
\fi%
}
\newcommand*\tud@cdgeometry@papersize@last{}
@@ -3775,8 +3909,8 @@
}%
\ifx\tud@res@a\tud@cdgeometry@papersize@last\else%
\appto\tud@res@b{%
- \setlength\tud@len@layoutwidth{\z@}%
- \setlength\tud@len@layoutheight{\z@}%
+ \tud@setdim\tud@dim@layoutwidth{\z@}%
+ \tud@setdim\tud@dim@layoutheight{\z@}%
\tud@x@geometry@fixmargins%
}%
\fi%
@@ -3790,11 +3924,11 @@
\expandafter\pagestyle\expandafter{\currentpagestyle}%
}
\if@tud@x@standalone@crop
- \PreventPackageFromLoading{geometry}%
- \let\tud@cdgeometry@process\relax%
+ \PreventPackageFromLoading{geometry}
+ \let\tud@cdgeometry@process\relax
\else
- \RequirePackage{geometry}[2010/09/12]%
-\fi%
+ \RequirePackage{geometry}
+\fi
\AfterPackage*{geometry}{%
\CheckCommand*\Gm@initnewgm{%
\Gm@passfalse
@@ -3932,7 +4066,7 @@
}{\@nameuse{Gm@restore@@#1}%
\Gm@changelayout}%
}%
- \newif\if@tud@x@geometry@enabled%
+ \tud@newif\if@tud@x@geometry@enabled%
\@tud@x@geometry@enabledtrue%
\tud@cs@store{geometry}%
\tud@cs@store{newgeometry}%
@@ -3946,7 +4080,7 @@
}%
\renewcommand*\restoregeometry[1][custom]{%
\tud@cdgeometry@reset{#1}%
- \if@atdocument%
+ \tud@if@preamble{}{%
\ifcase\tud@cdgeometry@num\relax% false
\tud@loadgeometry{init@typearea}%
\@tud@x@geometry@fixmarginstrue%
@@ -3955,11 +4089,11 @@
\@tud@x@geometry@fixmarginstrue%
\fi%
\tud@cdgeometry@process%
- \fi%
+ }%
}%
- \apptocmd{\Gm@changelayout}{%
+ \apptocmd\Gm@changelayout{%
\if@tud@x@geometry@enabled%
- \if@atdocument%
+ \tud@if@preamble{}{%
\@tud@x@geometry@fixmarginstrue%
\ifcase\tud@cdgeometry@num\relax% false
\tud@cdgeometry@reset{typearea}%
@@ -3967,15 +4101,15 @@
\tud@cdgeometry@reset{custom}%
\fi%
\tud@cdgeometry@process%
- \fi%
+ }%
\fi%
}{}{\tud@patch@wrn{Gm@changelayout}}%
- \newif\if@tud@x@geometry@fixmargins%
+ \tud@newif\if@tud@x@geometry@fixmargins%
\newcommand*\tud@x@geometry@fixmargins{%
\ifGm@pass\else%
- \addtolength\oddsidemargin{-\tud@len@layouthoffset}%
- \addtolength\evensidemargin{-\tud@len@layouthoffset}%
- \addtolength\topmargin{-\tud@len@layoutvoffset}%
+ \tud@addtodim\oddsidemargin{-\tud@dim@layouthoffset}%
+ \tud@addtodim\evensidemargin{-\tud@dim@layouthoffset}%
+ \tud@addtodim\topmargin{-\tud@dim@layoutvoffset}%
\@tud@x@geometry@fixmarginsfalse%
\fi%
}%
@@ -3996,16 +4130,19 @@
\tud@cdgeometry@assignlayout%
\edef\tud@res@a{%
\endgroup%
- \noexpand\setlength\noexpand\tud@len@layoutwidth{\the\paperwidth}%
- \noexpand\setlength\noexpand\tud@len@layoutheight{\the\paperheight}%
+ \unexpanded{\tud@setdim\tud@dim@layoutwidth}{\the\paperwidth}%
+ \unexpanded{\tud@setdim\tud@dim@layoutheight}{\the\paperheight}%
}%
\tud@res@a%
\fi%
- \ifstr{#2}{newgeometry}{%
- \eappto\Gm@restore@org{%
+ \tud@if@strequal{#2}{newgeometry}{%
+ \edef\@tempb{%
\noexpand\paperwidth=\the\paperwidth\relax%
\noexpand\paperheight=\the\paperheight\relax%
}%
+ \expandafter\apptocmd\expandafter\Gm@restore@org\expandafter{%
+ \@tempb%
+ }{}{\tud@patch@wrn{Gm@restore@org}}%
\ifcase\tud@cdgeometry@num\relax%
\typearea[current]{current}%
\ifx\tud@x@geometry@parameter\@empty\else%
@@ -4044,11 +4181,11 @@
\tud@x@geometry@area@def{paper}{\paperwidth:#1}%
}%
\TUD@parameter@def{layout}{%
- \ifstr{#1}{false}{%
- \setlength\tud@len@layoutwidth{\z@}%
- \setlength\tud@len@layoutheight{\z@}%
- \setlength\tud@len@layouthoffset{\z@}%
- \setlength\tud@len@layoutvoffset{\z@}%
+ \tud@if@strequal{#1}{false}{%
+ \tud@setdim\tud@dim@layoutwidth{\z@}%
+ \tud@setdim\tud@dim@layoutheight{\z@}%
+ \tud@setdim\tud@dim@layouthoffset{\z@}%
+ \tud@setdim\tud@dim@layoutvoffset{\z@}%
}{%
\tud@x@geometry@area@def{layout}{#1}%
}%
@@ -4065,25 +4202,25 @@
\@tempa#1,,\@nil%
}%
\TUD@parameter@def{layoutwidth}{%
- \tud@x@geometry@area@def{layout}{#1:\tud@len@layoutheight}%
+ \tud@x@geometry@area@def{layout}{#1:\tud@dim@layoutheight}%
}%
\TUD@parameter@def{layoutheight}{%
- \tud@x@geometry@area@def{layout}{\tud@len@layoutwidth:#1}%
+ \tud@x@geometry@area@def{layout}{\tud@dim@layoutwidth:#1}%
}%
\TUD@parameter@def{layoutoffset}{%
\def\@tempa##1,##2,##3\@nil{%
\IfArgIsEmpty{##2}{%
- \setlength\tud@len@layouthoffset{##1}%
- \setlength\tud@len@layoutvoffset{##1}%
+ \tud@setdim\tud@dim@layouthoffset{##1}%
+ \tud@setdim\tud@dim@layoutvoffset{##1}%
}{%
- \setlength\tud@len@layouthoffset{##1}%
- \setlength\tud@len@layoutvoffset{##2}%
+ \tud@setdim\tud@dim@layouthoffset{##1}%
+ \tud@setdim\tud@dim@layoutvoffset{##2}%
}%
}%
\@tempa#1,,\@nil%
}%
- \TUD@parameter@def{layouthoffset}{\setlength\tud@len@layouthoffset{#1}}%
- \TUD@parameter@def{layoutvoffset}{\setlength\tud@len@layoutvoffset{#1}}%
+ \TUD@parameter@def{layouthoffset}{\tud@setdim\tud@dim@layouthoffset{#1}}%
+ \TUD@parameter@def{layoutvoffset}{\tud@setdim\tud@dim@layoutvoffset{#1}}%
\TUD@parameter@def{bleedmargin}{\TUDoption{bleedmargin}{#1}}%
\TUD@parameter@handler@macro{%
\eappto\tud@x@geometry@parameter{%
@@ -4094,20 +4231,24 @@
}%
}%
\newcommand*\tud@x@geometry@area@def[2]{%
- \tud@lowerstring{\@tempa}{#2}%
+ \tud@strlowercase\@tempa{#2}%
\def\@tempb##1paper##2\@nil{%
- \ifstr{##2}{paper}{\def\@tempa{##1}}{}%
+ \tud@if@strequal{##2}{paper}{\def\@tempa{##1}}{}%
}%
\expandafter\@tempb\@tempa paper\@nil%
\@tempswafalse%
- \ifstr{\@tempa}{seascape}{\@tempswatrue}{}%
- \ifstr{\@tempa}{landscape}{\@tempswatrue}{}%
- \ifstr{\@tempa}{portrait}{\@tempswatrue}{}%
- \ifstr{\@tempa}{letter}{\@tempswatrue}{}%
- \ifstr{\@tempa}{executive}{\@tempswatrue}{}%
- \ifstr{\@tempa}{legal}{\@tempswatrue}{}%
+ \TUD@set@numkey{paper}{@tempc}{%
+ {seascape}{0},{landscape}{0},{portrait}{0},%
+ {letter}{0},{executive}{0},{legal}{0}%
+ }{\@tempa}%
+ \@tempswafalse%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed%
+ \ifcase\@tempc\relax%
+ \@tempswatrue%
+ \fi%
+ \fi%
\if@tempswa\else%
- \ifx\@tempa\@empty\relax\else%
+ \ifx\@tempa\@empty\else%
\def\@tempb##1##2\@nil{%
\if ##1a\@tempswatrue%
\else\if ##1b\@tempswatrue%
@@ -4116,7 +4257,7 @@
\fi\fi\fi\fi%
\if@tempswa%
\@tempswafalse%
- \IfArgIsEmpty{##2}{}{\ifnumber{##2}{\@tempswatrue}{}}%
+ \IfArgIsEmpty{##2}{}{\Ifnumber{##2}{\@tempswatrue}{}}%
\fi%
}%
\expandafter\@tempb\@tempa\@nil%
@@ -4132,7 +4273,7 @@
\if@tempswa\else%
\def\tud@reserved##1:##2:##3:##4\@nil{%
\if@tempswa\else%
- \ifstr{\@tempa}{##1}{%
+ \tud@if@strequal{\@tempa}{##1}{%
\@tempswatrue%
\def\@tempa{##2##4:##3##4}%
}{}%
@@ -4167,7 +4308,7 @@
\IfArgIsEmpty{##2}{%
\KOMAoption{paper}{##1}%
}{%
- \ifstr{#1}{layout}{\let\scr@setpaperorientation\relax}{}%
+ \tud@if@strequal{#1}{layout}{\let\scr@setpaperorientation\relax}{}%
\KOMAoption{paper}{##1:##2}%
}%
}%
@@ -4182,16 +4323,16 @@
\begingroup%
\tud@cdgeometry@assignlayout%
\@tud@res@swafalse%
- \ifdim\tud@len@layoutwidth=\paperwidth\relax\else\@tud@res@swatrue\fi%
- \ifdim\tud@len@layoutheight=\paperheight\relax\else\@tud@res@swatrue\fi%
+ \ifdim\tud@dim@layoutwidth=\paperwidth\relax\else\@tud@res@swatrue\fi%
+ \ifdim\tud@dim@layoutheight=\paperheight\relax\else\@tud@res@swatrue\fi%
\edef\tud@res@a{%
\endgroup%
- \etex@unexpanded{\def#1}{%
+ \unexpanded{\def#1}{%
layoutoffset={%
- \the\tud@len@layouthoffset,\the\tud@len@layoutvoffset%
+ \the\tud@dim@layouthoffset,\the\tud@dim@layoutvoffset%
}%
\if@tud@res@swa%
- ,layoutsize={\the\tud@len@layoutwidth,\the\tud@len@layoutheight}%
+ ,layoutsize={\the\tud@dim@layoutwidth,\the\tud@dim@layoutheight}%
\fi%
}%
}%
@@ -4200,24 +4341,25 @@
}%
\newcommand*\tud@x@geometry@set[1]{%
\@tud@x@geometry@enabledfalse%
- \if@atdocument%
+ \tud@if@preamble{%
+ \Gm@initnewgm%
+ \edef\@tempa{papersize={\the\paperwidth,\the\paperheight},#1}%
+ \def\@tempc{\tud@cs@use{geometry}}%
+ \expandafter\@tempc\expandafter{\@tempa,driver=none}%
+ }{%
\edef\@tempa{#1}%
\tud@cs@store{Gm@restore@org}%
- \eappto\Gm@restore@org{%
+ \edef\@tempb{%
\noexpand\paperwidth=\the\paperwidth\relax%
\noexpand\paperheight=\the\paperheight\relax%
}%
+ \expandafter\apptocmd\expandafter\Gm@restore@org\expandafter{%
+ \@tempb%
+ }{}{\tud@patch@wrn{Gm@restore@org}}%
\def\@tempc{\tud@cs@use{newgeometry}}%
\expandafter\@tempc\expandafter{\@tempa}%
\tud@cs@restore{Gm@restore@org}%
- \else%
- \Gm@initnewgm%
- \edef\@tempa{%
- paperwidth=\the\paperwidth,paperheight=\the\paperheight,#1%
- }%
- \def\@tempc{\tud@cs@use{geometry}}%
- \expandafter\@tempc\expandafter{\@tempa,driver=none}%
- \fi%
+ }%
\@tud@x@geometry@enabledtrue%
}%
\newcommand*\tud@savegeometry[1]{%
@@ -4268,7 +4410,7 @@
\fi%
\ifcase\tud@cdgeometry@num\relax%
\edef\tud@cdgeometry@hmargin{%
- left=\the\dimexpr\oddsidemargin+1in-\ta@bcor\relax,%
+ left=\the\dimexpr\glueexpr\oddsidemargin+1in-\ta@bcor\relax\relax,%
textwidth=\the\textwidth,%
\tud@cdgeometry@mpincl,%
marginparwidth=\the\marginparwidth,%
@@ -4286,8 +4428,7 @@
top=\the\dimexpr\topmargin+1in\relax,%
\else%
includehead=false,%
- top=\the\dimexpr\topmargin%
- +\headheight+\headsep+1in\relax,%
+ top=\the\dimexpr\topmargin+\headheight+\headsep+1in\relax,%
\fi%
headheight=\the\headheight,%
headsep=\the\headsep,%
@@ -4298,7 +4439,8 @@
\else% custom
\ifGm@pass\else%
\edef\tud@cdgeometry@hmargin{%
- left=\the\dimexpr\oddsidemargin+1in-\Gm@bindingoffset\relax,%
+ left=\the\dimexpr\glueexpr\oddsidemargin+1in%
+ -\Gm@bindingoffset\relax\relax,%
textwidth=\the\textwidth,%
\ifGm@includemp%
includemp=true,%
@@ -4320,8 +4462,7 @@
top=\the\dimexpr\topmargin+1in\relax,%
\else%
includehead=false,%
- top=\the\dimexpr\topmargin%
- +\headheight+\headsep+1in\relax,%
+ top=\the\dimexpr\topmargin+\headheight+\headsep+1in\relax,%
\fi%
headheight=\the\headheight,%
headsep=\the\headsep,%
@@ -4335,37 +4476,43 @@
}%
\fi%
\fi%
- \setlength\tud@len@areadiff{%
- \dimexpr\tud@len@topmargin+\tud@len@barheight+\tud@len@headsep%
- -\topmargin-\headheight-\headsep-1in\relax%
+ \if@twoside%
+ \appto\tud@cdgeometry@hmargin{,twoside}%
+ \fi%
+ \if@twocolumn%
+ \appto\tud@cdgeometry@hmargin{,twocolumn}%
+ \fi%
+ \tud@setdim\tud@dim@areadiff{%
+ \tud@dim@topmargin+\tud@dim@barheight+\tud@dim@headsep%
+ -\topmargin-\headheight-\headsep-1in%
}%
- \ifdim\tud@len@areadiff<\z@\relax%
- \addtolength\tud@len@headsep{-\tud@len@areadiff}%
- \setlength\@tempdima{\z@}%
+ \ifdim\tud@dim@areadiff<\z@\relax%
+ \tud@addtodim\tud@dim@headsep{-\tud@dim@areadiff}%
+ \tud@setdim\@tempdima{\z@}%
\else%
- \setlength\@tempdima{\tud@len@areadiff}%
+ \tud@setdim\@tempdima{\tud@dim@areadiff}%
\fi%
\edef\tud@cdgeometry@tudmargin{%
ignorehead=true,%
- top=\the\dimexpr\tud@len@topmargin+\tud@len@barheight%
- +\tud@len@headsep\relax,%
- headheight=\the\dimexpr\tud@len@topmargin+\tud@len@barheight%
- -\tud@len@logoy\relax,%
- headsep=\the\tud@len@headsep,%
+ top=\the\dimexpr\tud@dim@topmargin+\tud@dim@barheight%
+ +\tud@dim@headsep\relax,%
+ headheight=\the\dimexpr\tud@dim@topmargin+\tud@dim@barheight%
+ -\tud@dim@logoy\relax,%
+ headsep=\the\tud@dim@headsep,%
textheight=\the\dimexpr\textheight-\@tempdima\relax%
}%
\tud@if@v@lower{2.03}{%
- \setlength\tud@len@ddcdiff{%
- \dimexpr.6\tud@len@topmargin-\footskip+\tud@len@headsep%
- +\footheight-1.25\baselineskip\relax%
+ \tud@setdim\tud@dim@ddcdiff{%
+ \tud@dim@topmargin*3/5-\footskip+\tud@dim@headsep%
+ +\footheight-1\baselineskip*5/4%
}%
\edef\tud@cdgeometry@ddcmargin{%
- textheight=\the\dimexpr\textheight-\tud@len@areadiff%
- -\tud@len@ddcdiff\relax,%
- footskip=\the\dimexpr\footskip+\tud@len@ddcdiff\relax%
+ textheight=\the\dimexpr\textheight-\tud@dim@areadiff%
+ -\tud@dim@ddcdiff\relax,%
+ footskip=\the\dimexpr\footskip+\tud@dim@ddcdiff\relax%
}%
}{}%
- \ifdim\dimexpr\tud@dim@extrabottommargin\relax=\z@\relax\else%
+ \ifdim\dimexpr\tud@extrabottommargin@dim\relax=\z@\relax\else%
\begingroup%
\edef\tud@res@a{%
The key `extrabottommargin' is ineffective\MessageBreak%
@@ -4384,45 +4531,43 @@
}%
\tud@res@a%
\fi%
- \else% true/symmetric/twoside
- \ifcase\tud@cdgeometry@num\relax\or\or% true
- \setlength\@tempdima{\tud@len@widemargin}%
+ \else% true/symmetric/twoside
+ \ifcase\tud@cdgeometry@num\relax\or\or% true
+ \tud@setdim\@tempdima{\tud@dim@widemargin}%
\if@reversemargin%
- \setlength\@tempdimc{\tud@len@widemargin}%
+ \tud@setdim\@tempdimc{\tud@dim@widemargin}%
\else%
- \setlength\@tempdimc{\tud@len@slimmargin}%
+ \tud@setdim\@tempdimc{\tud@dim@slimmargin}%
\fi%
\or% symmetric
- \setlength\@tempdima{.5\tud@len@both}%
- \setlength\@tempdimc{.5\tud@len@both}%
+ \tud@setdim\@tempdima{\tud@dim@bothmargin/2}%
+ \tud@setdim\@tempdimc{\tud@dim@bothmargin/2}%
\or% twoside
\if@twoside%
- \setlength\@tempdima{.4\tud@len@both}%
+ \tud@setdim\@tempdima{\tud@dim@bothmargin*2/5}%
\else%
- \setlength\@tempdima{.5\tud@len@both}%
+ \tud@setdim\@tempdima{\tud@dim@bothmargin/2}%
\fi%
- \setlength\@tempdimc{.5\tud@len@both}%
+ \tud@setdim\@tempdimc{\tud@dim@bothmargin/2}%
\if@twoside%
\if@reversemargin%
- \setlength\@tempdimc{.4\tud@len@both}%
+ \tud@setdim\@tempdimc{\tud@dim@bothmargin*2/5}%
\else%
- \setlength\@tempdimc{.6\tud@len@both}%
+ \tud@setdim\@tempdimc{\tud@dim@bothmargin*3/5}%
\fi%
\fi%
\fi%
- \addtolength\@tempdimc{-\headsep}%
- \setlength\@tempdimb{%
- \dimexpr\tud@len@layoutwidth-\tud@len@both-\ta@bcor\relax%
- }%
+ \tud@addtodim\@tempdimc{-\headsep}%
+ \tud@setdim\@tempdimb{\tud@dim@layoutwidth-\tud@dim@bothmargin-\ta@bcor}%
\if@mincl%
- \addtolength\@tempdimb{-\@tempdimc}%
+ \tud@addtodim\@tempdimb{-\@tempdimc}%
\fi%
\edef\tud@cdgeometry@hmargin{%
left=\the\@tempdima,%
textwidth=\the\@tempdimb,%
\tud@cdgeometry@mpincl,%
marginparwidth=\the\@tempdimc,%
- marginparsep=\the\dimexpr.5\headsep\relax,%
+ marginparsep=\the\dimexpr\headsep/2\relax,%
\if@reversemargin%
reversemarginpar=true,%
\else%
@@ -4443,63 +4588,64 @@
\tud@if@v@lower{2.03}{%
\edef\tud@cdgeometry@vmargin{%
\tud@cdgeometry@hincl,%
- top=\the\dimexpr.5\tud@len@both\relax,%
+ top=\the\dimexpr\tud@dim@bothmargin/2\relax,%
headheight=\the\headheight,%
- headsep=\the\tud@len@headsep,%
- bottom=\the\dimexpr.5\tud@len@both+\tud@dim@extrabottommargin\relax,%
+ headsep=\the\tud@dim@headsep,%
+ bottom=\the\dimexpr\glueexpr\tud@dim@bothmargin/2%
+ +\tud@extrabottommargin@dim\relax\relax,%
\tud@cdgeometry@fincl,%
- footskip=\the\dimexpr\tud@len@headsep+\footheight%
- -1.25\baselineskip\relax%
+ footskip=\the\dimexpr\tud@dim@headsep+\footheight%
+ -1\baselineskip*5/4\relax%
}%
}{%
\edef\tud@cdgeometry@vmargin{%
\tud@cdgeometry@hincl,%
- top=\the\tud@len@slimmargin,%
+ top=\the\tud@dim@slimmargin,%
headheight=\the\headheight,%
headsep=\the\headsep,%
- bottom=\the\dimexpr\tud@len@widemargin%
- +\tud@dim@extrabottommargin\relax,%
+ bottom=\the\dimexpr\glueexpr\tud@dim@widemargin%
+ +\tud@extrabottommargin@dim\relax\relax,%
\tud@cdgeometry@fincl,%
- footskip=\the\dimexpr\tud@len@footsep+\footheight\relax%
+ footskip=\the\dimexpr\tud@dim@footsep+\footheight\relax%
}%
}%
\edef\tud@cdgeometry@tudmargin{%
ignorehead=true,%
- top=\the\dimexpr\tud@len@topmargin+\tud@len@barheight%
- +\tud@len@headsep\relax,%
- headheight=\the\dimexpr\tud@len@topmargin+\tud@len@barheight%
- -\tud@len@logoy\relax,%
- headsep=\the\tud@len@headsep%
+ top=\the\dimexpr\tud@dim@topmargin+\tud@dim@barheight%
+ +\tud@dim@headsep\relax,%
+ headheight=\the\dimexpr\tud@dim@topmargin+\tud@dim@barheight%
+ -\tud@dim@logoy\relax,%
+ headsep=\the\tud@dim@headsep%
}%
- \setlength\tud@len@areadiff{%
- \dimexpr\tud@len@topmargin+\tud@len@barheight+\tud@len@headsep%
- -\tud@len@slimmargin\relax%
+ \tud@setdim\tud@dim@areadiff{%
+ \tud@dim@topmargin+\tud@dim@barheight+\tud@dim@headsep%
+ -\tud@dim@slimmargin%
}%
\tud@if@v@lower{2.03}{%
- \setlength\tud@len@areadiff{%
- \dimexpr\tud@len@topmargin+\tud@len@barheight+\tud@len@headsep%
- -.5\tud@len@both\relax%
+ \tud@setdim\tud@dim@areadiff{%
+ \tud@dim@topmargin+\tud@dim@barheight+\tud@dim@headsep%
+ -\tud@dim@bothmargin/2%
}%
- \setlength\tud@len@ddcdiff{.6\tud@len@topmargin}%
+ \tud@setdim\tud@dim@ddcdiff{\tud@dim@topmargin*3/5}%
\edef\tud@cdgeometry@ddcmargin{%
\if@fincl%
- bottom=\the\dimexpr.5\tud@len@both+\tud@dim@extrabottommargin%
- +\tud@len@ddcdiff+\tud@len@headsep+\footheight%
- -1.25\baselineskip\relax,%
+ bottom=\the\dimexpr\glueexpr\tud@dim@bothmargin/2%
+ +\tud@extrabottommargin@dim+\tud@dim@ddcdiff+\tud@dim@headsep%
+ +\footheight-1\baselineskip*5/4\relax\relax,%
\else%
- bottom=\the\dimexpr.5\tud@len@both+\tud@dim@extrabottommargin%
- +\tud@len@ddcdiff\relax,%
+ bottom=\the\dimexpr\glueexpr\tud@dim@bothmargin/2%
+ +\tud@extrabottommargin@dim+\tud@dim@ddcdiff\relax\relax,%
\fi%
- footskip=\the\dimexpr\tud@len@headsep+\footheight%
- -1.25\baselineskip+\tud@len@ddcdiff\relax,%
+ footskip=\the\dimexpr\tud@dim@headsep+\footheight%
+ -1\baselineskip*5/4+\tud@dim@ddcdiff\relax,%
}%
}{}%
\fi%
- \ifdim\tud@len@areadiff<\z@\relax\setlength\tud@len@areadiff{\z@}\fi%
- \global\tud@len@areadiff=\tud@len@areadiff%
+ \ifdim\tud@dim@areadiff<\z@\relax\tud@setdim\tud@dim@areadiff{\z@}\fi%
+ \global\tud@dim@areadiff=\tud@dim@areadiff%
\tud@if@v@lower{2.03}{%
- \ifdim\tud@len@ddcdiff<\z@\relax\setlength\tud@len@ddcdiff{\z@}\fi%
- \global\tud@len@ddcdiff=\tud@len@ddcdiff%
+ \ifdim\tud@dim@ddcdiff<\z@\relax\tud@setdim\tud@dim@ddcdiff{\z@}\fi%
+ \global\tud@dim@ddcdiff=\tud@dim@ddcdiff%
}{}%
\tud@cdgeometry@@@process%
}%
@@ -4534,11 +4680,11 @@
\or% custom
\tud@savegeometry{current@custom}%
\fi%
- \if@atdocument%
- \ifstr{\tud@currentgeometry}{stdarea}{}{%
+ \tud@if@preamble{}{%
+ \tud@if@strequal{\tud@currentgeometry}{stdarea}{}{%
\expandafter\tud@loadgeometry\expandafter{\tud@currentgeometry}%
}%
- \fi%
+ }%
}%
\newcommand*\tud@cdgeometry@hincl{%
\if@hincl%
@@ -4565,12 +4711,12 @@
\csuse{@ta@usegeometryfalse}%
\tud@x@geometry@getlayout{\tud@cdgeometry@layout}%
\tud@cs@store{tud@cdgeometry@num}%
- \tud@cs@store{tud@dim@extrabottommargin}%
- \def\tud@dim@extrabottommargin{\z@}%
+ \tud@cs@store{tud@extrabottommargin@dim}%
+ \def\tud@extrabottommargin@dim{0pt}%
\tud@cdgeometry@reset{custom}%
\begingroup%
\epreto\tud@x@geometry@init{%
- paperwidth=\the\paperwidth,paperheight=\the\paperheight,%
+ papersize={\the\paperwidth,\the\paperheight},%
\tud@cdgeometry@layout,%
\tud@cdgeometry@mpincl,%
\if@reversemargin%
@@ -4596,14 +4742,14 @@
\tud@x@typearea@warnings@on%
\tud@cdgeometry@@process%
\tud@savegeometry{init@typearea}%
- \def\tud@res@b##1{%
- \eappto\Gm@restore@@init@typearea{%
- \noexpand\PackageWarningNoLine{typearea}{##1}%
- }%
+ \def\do##1{%
+ \apptocmd\Gm@restore@@init@typearea{%
+ ##1%
+ }{}{\tud@patch@wrn{Gm@restore@@init@typearea}}%
}%
- \forlistloop\tud@res@b{\tud@res@a}%
+ \dolistloop{\tud@res@a}%
\tud@cs@restore{tud@cdgeometry@num}%
- \tud@cs@restore{tud@dim@extrabottommargin}%
+ \tud@cs@restore{tud@extrabottommargin@dim}%
\BeforeSelectAnyPageStyle{\tud@BeforeSelectAnyPageStyle{##1}}%
\ifcase\tud@cdgeometry@num\relax% typearea
\tud@loadgeometry{init@typearea}%
@@ -4614,90 +4760,84 @@
\tud@cdgeometry@process%
\let\tud@cdgeometry@@init\relax%
}%
- \newcommand*\tud@currentgeometry{}
+ \newcommand*\tud@currentgeometry{}%
\newcommand*\tud@BeforeSelectAnyPageStyle[1]{%
- \ifstr{#1}{\GetRealPageStyle{#1}}{%
+ \tud@if@strequal{#1}{\GetRealPageStyle{#1}}{%
\tud@if@tudheadings{#1}{%
\tud@if@v@lower{2.03}{%
\tud@ddc@check%
\ifcase\@tempb\relax% \tud@ddc@foot@num=false
- \ifstr{\tud@currentgeometry}{tudarea}{}{%
+ \tud@if@strequal{\tud@currentgeometry}{tudarea}{}{%
\tud@loadgeometry{tudarea}%
\gdef\tud@currentgeometry{tudarea}%
}%
\else% \tud@ddc@foot@num!=false
- \ifstr{\tud@currentgeometry}{tudareaddc}{}{%
+ \tud@if@strequal{\tud@currentgeometry}{tudareaddc}{}{%
\tud@loadgeometry{tudareaddc}%
\gdef\tud@currentgeometry{tudareaddc}%
}%
\fi%
}{%
- \ifstr{\tud@currentgeometry}{tudarea}{}{%
+ \tud@if@strequal{\tud@currentgeometry}{tudarea}{}{%
\tud@loadgeometry{tudarea}%
\gdef\tud@currentgeometry{tudarea}%
}%
}%
- \setlength\tud@len@areavskip{\z@}%
- \tud@komafont@set{pagenumber}{\usekomafont{tudheadings}}%
- \tud@komafont@set{pagefoot}{\usekomafont{tudheadings}}%
+ \tud@setdim\tud@dim@areavskip{\z@}%
}{%
- \ifstr{\tud@currentgeometry}{stdarea}{}{%
+ \tud@if@strequal{\tud@currentgeometry}{stdarea}{}{%
\tud@loadgeometry{stdarea}%
\gdef\tud@currentgeometry{stdarea}%
}%
- \setlength\tud@len@areavskip{\tud@len@areadiff}%
+ \tud@setdim\tud@dim@areavskip{\tud@dim@areadiff}%
\ifnum\tud@cdgeometry@num>\@ne\relax% true/symmetric/twoside
\if@hincl%
- \addtolength\tud@len@areavskip{%
- \dimexpr-\headheight-\tud@len@headsep\relax%
- }%
+ \tud@addtodim\tud@dim@areavskip{-\headheight-\tud@dim@headsep}%
\fi%
\fi%
- \tud@komafont@unset{pagenumber}%
- \tud@komafont@unset{pagefoot}%
}%
- \global\tud@len@areavskip=\tud@len@areavskip%
+ \global\tud@dim@areavskip=\tud@dim@areavskip%
}{}%
- }
+ }%
}
\newcommand*\tud@x@typearea@before{%
\tud@cdgeometry@resetlayout%
- \tud@skip@store{paperheight}%
- \tud@skip@store{paperwidth}%
+ \tud@cslength@store{paperheight}%
+ \tud@cslength@store{paperwidth}%
\begingroup%
\tud@cdgeometry@assignlayout%
\edef\tud@res@a{%
\endgroup%
- \etex@unexpanded{\setlength\paperheight}{\the\tud@len@layoutheight}%
- \etex@unexpanded{\setlength\paperwidth}{\the\tud@len@layoutwidth}%
+ \unexpanded{\tud@setdim\paperheight}{\the\tud@dim@layoutheight}%
+ \unexpanded{\tud@setdim\paperwidth}{\the\tud@dim@layoutwidth}%
}%
\tud@res@a%
}
\newcommand*\tud@x@typearea@after{%
- \tud@skip@restore{paperheight}%
- \tud@skip@restore{paperwidth}%
- \if@atdocument%
+ \tud@cslength@restore{paperheight}%
+ \tud@cslength@restore{paperwidth}%
+ \tud@if@preamble{%
+ \TUD@key@preset{cdgeometry}{false}%
+ }{%
\tud@cdgeometry@reset{typearea}%
\tud@cdgeometry@process%
- \else%
- \TUD@key@preset{cdgeometry}{false}%
- \fi%
+ }%
}
\newcommand*\tud@x@typearea@init{\recalctypearea}%
\xpretocmd{\typearea}{%
\tud@x@typearea@before%
- \def\tud@x@typearea@init{\typearea[#1]{#2}}%
+ \def\tud@x@typearea@init{\typearea[{#1}]{#2}}%
}{}{\tud@patch@wrn{typearea}}
\xapptocmd{\typearea}{\tud@x@typearea@after}{}{\tud@patch@wrn{typearea}}
\xpretocmd{\areaset}{%
\tud@x@typearea@before%
\begingroup%
- \setlength\@tempdima{#2}%
- \setlength\@tempdimb{#3}%
+ \tud@setdim\@tempdima{#2}%
+ \tud@setdim\@tempdimb{#3}%
\edef\tud@res@a{%
\endgroup%
- \noexpand\def\noexpand\tud@x@typearea@init{%
- \noexpand\areaset[#1]{\the\@tempdima}{\the\@tempdimb}%
+ \def\noexpand\tud@x@typearea@init{%
+ \unexpanded{\areaset[{#1}]}{\the\@tempdima}{\the\@tempdimb}%
}%
}%
\tud@res@a%
@@ -4705,17 +4845,17 @@
\xapptocmd{\areaset}{\tud@x@typearea@after}{}{\tud@patch@wrn{areaset}}
\tud@cs@store{storeareas}
\renewcommand*\storeareas[1]{%
- \begingroup
+ \begingroup%
\tud@x@geometry@fixmargins%
\tud@cs@use{storeareas}{#1}%
- \def\tud@res@b##1{\unexpanded{\setlength##1}{\the##1}}%
+ \def\tud@res@b##1{\unexpanded{\tud@setdim##1}{\the##1}}%
\edef\tud@res@a{%
\endgroup%
- \etex@unexpanded{\def#1}{%
- \tud@res@b{\tud@len@layoutwidth}%
- \tud@res@b{\tud@len@layoutheight}%
- \tud@res@b{\tud@len@layouthoffset}%
- \tud@res@b{\tud@len@layoutvoffset}%
+ \unexpanded{\def#1}{%
+ \tud@res@b{\tud@dim@layoutwidth}%
+ \tud@res@b{\tud@dim@layoutheight}%
+ \tud@res@b{\tud@dim@layouthoffset}%
+ \tud@res@b{\tud@dim@layoutvoffset}%
\expandonce#1%
\def\noexpand\tud@cdgeometry@num{\tud@cdgeometry@num}%
}%
@@ -4729,8 +4869,8 @@
\let\tud@cdgeometry@@init\relax%
}%
\newcommand*\tud@cdgeometry@@process{%
- \setlength\tud@len@layoutwidth{\paperwidth}%
- \setlength\tud@len@layoutheight{\paperheight}%
+ \tud@setdim\tud@dim@layoutwidth{\paperwidth}%
+ \tud@setdim\tud@dim@layoutheight{\paperheight}%
\tud@cdgeometry@set%
}%
\newcommand*\tud@x@geometry@fixmargins{}%
@@ -4745,41 +4885,52 @@
\fi%
}%
}
-\patchcmd{\cleardoubleoddpageusingstyle}{\pagestyle}{%
- \let\tud@BeforeSelectAnyPageStyle\@gobble\pagestyle%
+\patchcmd\cleardoubleoddpageusingstyle{%
+ \pagestyle%
+}{%
+ \let\tud@BeforeSelectAnyPageStyle\@gobble%
+ \pagestyle%
}{}{\tud@patch@wrn{cleardoubleoddpageusingstyle}}
-\patchcmd{\cleardoubleevenpageusingstyle}{\pagestyle}{%
- \let\tud@BeforeSelectAnyPageStyle\@gobble\pagestyle%
+\patchcmd\cleardoubleevenpageusingstyle{%
+ \pagestyle%
+}{%
+ \let\tud@BeforeSelectAnyPageStyle\@gobble%
+ \pagestyle%
}{}{\tud@patch@wrn{cleardoubleevenpageusingstyle}}
-\patchcmd{\cleardoublepageusingstyle}{\pagestyle}{%
- \let\tud@BeforeSelectAnyPageStyle\@gobble\pagestyle%
+\patchcmd\cleardoublepageusingstyle{%
+ \pagestyle%
+}{%
+ \let\tud@BeforeSelectAnyPageStyle\@gobble%
+ \pagestyle%
}{}{\tud@patch@wrn{cleardoublepageusingstyle}}
\tud@if@v@lower{2.03}{%
\newcommand*\tud@ddc@enlargepage[1][]{%
\tud@if@tudheadings{#1}{%
- \ifstr{\tud@currentgeometry}{tudareaddc}{}{%
+ \tud@if@strequal{\tud@currentgeometry}{tudareaddc}{}{%
\tud@ddc@check%
\ifcase\@tempb\relax\else% \tud@ddc@foot@num!=false
- \enlargethispage{-\tud@len@ddcdiff}%
+ \enlargethispage{-\tud@dim@ddcdiff}%
\fi%
}%
}{}%
}%
}{}
-%%% From File: tudscr-pagestyle.dtx
+%%%% From File: tudscr-pagestyle.dtx (no git version info was found)
\if@tud@x@standalone@crop
\PreventPackageFromLoading{scrlayer-scrpage}%
\else
\PassOptionsToPackage{automark}{scrlayer-scrpage}%
- \AtEndPreamble{\RequirePackage{scrlayer-scrpage}[2020/09/21]}%
+ \AtEndPreamble{\RequirePackage{scrlayer-scrpage}[%
+ 2022/05/01 v3.36 KOMA-Script
+ ]}%
\fi
\AfterPackage{scrlayer-scrpage}{%
\DeclareNewLayer[%
background,headsep,%
- addhoffset=\dimexpr\tud@len@logox-\tud@len@widemargin\relax,%
- addwidth=\dimexpr-\tud@len@logox+\tud@len@widemargin\relax,%
- voffset=\tud@len@logoy,%
- addvoffset=\tud@len@layoutvoffset,%
+ addhoffset=\tud@dim@logox-\tud@dim@widemargin,%
+ addwidth=-\tud@dim@logox+\tud@dim@widemargin,%
+ voffset=\tud@dim@logoy,%
+ addvoffset=\tud@dim@layoutvoffset,%
contents={%
\tud@mainlogo@set%
\tud@headlogo@option@set%
@@ -4788,10 +4939,10 @@
]{tudheadings.head.content}%
\DeclareNewLayer[%
background,%
- width=\dimexpr\tud@len@layoutwidth+\tud@dim@bleedmargin*2\relax,%
- addhoffset=\dimexpr\tud@len@layouthoffset-\tud@dim@bleedmargin\relax,%
- height=\dimexpr\tud@len@topmargin+\tud@dim@bleedmargin\relax,%
- addvoffset=\dimexpr\tud@len@layoutvoffset-\tud@dim@bleedmargin\relax,%
+ width=\glueexpr\tud@dim@layoutwidth+(\tud@bleedmargin@dim)*2\relax,%
+ addhoffset=\glueexpr\tud@dim@layouthoffset-\tud@bleedmargin@dim\relax,%
+ height=\glueexpr\tud@dim@topmargin+\tud@bleedmargin@dim\relax,%
+ addvoffset=\glueexpr\tud@dim@layoutvoffset-\tud@bleedmargin@dim\relax,%
contents={%
\ifnum\tud@head@bar@num>\tw@\relax% cdhead=color
\color{HKS41}%
@@ -4801,24 +4952,24 @@
]{tudheadings.head.back}%
\DeclareNewLayer[%
background,%
- width=\dimexpr\tud@len@layoutwidth+\tud@dim@bleedmargin*2\relax,%
- addhoffset=\dimexpr\tud@len@layouthoffset-\tud@dim@bleedmargin\relax,%
- height=\tud@len@barheight,%
- voffset=\tud@len@topmargin,%
- addvoffset=\tud@len@layoutvoffset,%
+ width=\glueexpr\tud@dim@layoutwidth+(\tud@bleedmargin@dim)*2\relax,%
+ addhoffset=\glueexpr\tud@dim@layouthoffset-\tud@bleedmargin@dim\relax,%
+ height=\tud@dim@barheight,%
+ voffset=\tud@dim@topmargin,%
+ addvoffset=\tud@dim@layoutvoffset,%
contents={%
\ifnum\tud@head@bar@num>\@ne\relax% cdhead=barcolor/color
\color{HKS41!60}%
- \setlength\@tempdima{\dimexpr\ht\strutbox-\tud@len@barheight\relax}%
- \ifdim\@tempdima<\z@\relax\setlength\@tempdima{\z@}\fi%
+ \tud@setdim\@tempdima{\ht\strutbox-\tud@dim@barheight}%
+ \ifdim\@tempdima<\z@\relax\tud@setdim\@tempdima{\z@}\fi%
\raisebox{\@tempdima}{\rule{\layerwidth}{\layerheight}}%
\fi%
},%
]{tudheadings.head.bar}%
\DeclareNewLayer[%
background,headsep,%
- voffset=\dimexpr\tud@len@topmargin+\tud@len@line\relax,%
- addvoffset=\tud@len@layoutvoffset,%
+ voffset=\tud@dim@topmargin+\tud@dim@line,%
+ addvoffset=\tud@dim@layoutvoffset,%
contents={%
\tud@head@font@set%
\tud@head@text@set%
@@ -4827,8 +4978,8 @@
]{tudheadings.head.text}%
\DeclareNewLayer[%
background,headsep,%
- voffset=\dimexpr\tud@len@topmargin-.5\tud@len@line\relax,%
- addvoffset=\tud@len@layoutvoffset,%
+ voffset=\tud@dim@topmargin-\tud@dim@line/2,%
+ addvoffset=\tud@dim@layoutvoffset,%
contents={%
\ifnum\tud@head@bar@num<\tw@\relax% cdhead=nocolor/litecolor
\if@tud@head@widebar\else\tud@head@rule{\layerwidth}\fi%
@@ -4837,9 +4988,8 @@
]{tudheadings.head.upline}%
\DeclareNewLayer[%
background,headsep,%
- voffset=\dimexpr\tud@len@topmargin+\tud@len@barheight%
- -.5\tud@len@line\relax,%
- addvoffset=\tud@len@layoutvoffset,%
+ voffset=\tud@dim@topmargin+\tud@dim@barheight-\tud@dim@line/2,%
+ addvoffset=\tud@dim@layoutvoffset,%
contents={%
\ifnum\tud@head@bar@num<\tw@\relax% cdhead=nocolor/litecolor
\if@tud@head@widebar\else\tud@head@rule{\layerwidth}\fi%
@@ -4848,10 +4998,10 @@
]{tudheadings.head.lowline}%
\DeclareNewLayer[%
background,%
- width=\dimexpr\tud@len@layoutwidth+\tud@dim@bleedmargin*2\relax,%
- addhoffset=\dimexpr\tud@len@layouthoffset-\tud@dim@bleedmargin\relax,%
- voffset=\dimexpr\tud@len@topmargin-.5\tud@len@line\relax,%
- addvoffset=\tud@len@layoutvoffset,%
+ width=\glueexpr\tud@dim@layoutwidth+(\tud@bleedmargin@dim)*2\relax,%
+ addhoffset=\glueexpr\tud@dim@layouthoffset-\tud@bleedmargin@dim\relax,%
+ voffset=\tud@dim@topmargin-\tud@dim@line/2,%
+ addvoffset=\tud@dim@layoutvoffset,%
contents={%
\ifnum\tud@head@bar@num<\tw@\relax% cdhead=nocolor/litecolor
\if@tud@head@widebar\tud@head@rule{\layerwidth}\fi%
@@ -4860,11 +5010,10 @@
]{tudheadings.head.uplinewide}%
\DeclareNewLayer[%
background,%
- width=\dimexpr\tud@len@layoutwidth+\tud@dim@bleedmargin*2\relax,%
- addhoffset=\dimexpr\tud@len@layouthoffset-\tud@dim@bleedmargin\relax,%
- voffset=\dimexpr\tud@len@topmargin+\tud@len@barheight%
- -.5\tud@len@line\relax,%
- addvoffset=\tud@len@layoutvoffset,%
+ width=\glueexpr\tud@dim@layoutwidth+(\tud@bleedmargin@dim)*2\relax,%
+ addhoffset=\glueexpr\tud@dim@layouthoffset-\tud@bleedmargin@dim\relax,%
+ voffset=\tud@dim@topmargin+\tud@dim@barheight-\tud@dim@line/2,%
+ addvoffset=\tud@dim@layoutvoffset,%
contents={%
\ifnum\tud@head@bar@num<\tw@\relax% cdhead=nocolor/litecolor
\if@tud@head@widebar\tud@head@rule{\layerwidth}\fi%
@@ -4873,16 +5022,16 @@
]{tudheadings.head.lowlinewide}%
\DeclareNewLayer[%
foreground,headsep,%
- addvoffset=.5\tud@len@headsep,%
- height=\baselineskip,%
+ addvoffset=\tud@dim@headsep/2,%
+ height=1\baselineskip,%
contents={\if@tud@head@date\hfill\tud@date@print\fi},%
]{tudheadings.head.date}%
\DeclareNewLayer[%
background,foot,%
- width=\dimexpr\tud@len@layoutwidth+\tud@dim@bleedmargin*2\relax,%
- hoffset=\dimexpr\tud@len@layouthoffset-\tud@dim@bleedmargin\relax,%
- height=\dimexpr\tud@len@layoutheight-\layeryoffset%
- +\tud@len@layoutvoffset+\tud@dim@bleedmargin\relax,%
+ width=\glueexpr\tud@dim@layoutwidth+(\tud@bleedmargin@dim)*2\relax,%
+ hoffset=\glueexpr\tud@dim@layouthoffset-\tud@bleedmargin@dim\relax,%
+ height=\glueexpr\tud@dim@layoutheight-\layeryoffset%
+ +\tud@dim@layoutvoffset+\tud@bleedmargin@dim\relax,%
addvoffset=-\dp\strutbox,%
contents={%
\if@tud@foot@colored%
@@ -4897,7 +5046,9 @@
\fi%
}{%
\def\@tempc{\color{HKS41}}%
- \ifstr{\tud@pagecolor}{HKS41}{\def\@tempc{\color{HKS41!60}}}{}%
+ \tud@if@strequal{\tud@pagecolor}{HKS41}%
+ {\def\@tempc{\color{HKS41!60}}}%
+ {}%
}%
\ifx\@tempc\relax\else%
\@tempc\rule{\layerwidth}{\layerheight}%
@@ -4907,7 +5058,7 @@
]{tudheadings.foot.back}%
\tud@if@v@lower{2.03}{%
\ModifyLayer[%
- addvoffset=-\tud@len@ddcdiff+\ht\strutbox,%
+ addvoffset=-\tud@dim@ddcdiff+\ht\strutbox,%
contents={%
\if@tud@foot@colored%
\let\@tempc\relax%
@@ -4919,7 +5070,9 @@
\fi%
}{%
\def\@tempc{\color{HKS41}}%
- \ifstr{\tud@pagecolor}{HKS41}{\def\@tempc{\color{HKS41!60}}}{}%
+ \tud@if@strequal{\tud@pagecolor}{HKS41}%
+ {\def\@tempc{\color{HKS41!60}}}%
+ {}%
}%
\ifx\@tempc\relax\else%
\tud@ddc@check%
@@ -4927,7 +5080,7 @@
\vbox to \layerheight{%
\vfil\@tempc%
\rule{\layerwidth}{%
- \dimexpr\layerheight-\tud@len@ddcdiff+\ht\strutbox\relax%
+ \dimexpr\layerheight-\tud@dim@ddcdiff+\ht\strutbox\relax%
}%
}%
\else% \tud@ddc@foot@num!=false
@@ -4940,13 +5093,9 @@
}{}%
\DeclareNewLayer[%
background,foot,%
- height=\dimexpr\tud@len@layoutheight-\layeryoffset%
- +\tud@len@layoutvoffset\relax,%
+ height=\tud@dim@layoutheight-\layeryoffset+\tud@dim@layoutvoffset,%
contents={%
- \TUD@deprecated@lengthcs[%
- \global\@tud@footlogo@option@settrue%
- ]{footlogoheight}%
- \setlength\@tempdima{\dimexpr\layerheight-\dp\strutbox\relax}%
+ \tud@setdim\@tempdima{\layerheight-\dp\strutbox}%
\tud@footlogo@cmd@use{\@tempdima}{\layerwidth}%
\tud@footlogo@ddc@use{\@tempdima}{\layerwidth}%
\tud@footcontent@use{\@tempdima}{\layerwidth}%
@@ -4954,16 +5103,13 @@
]{tudheadings.foot.content}%
\tud@if@v@lower{2.03}{%
\ModifyLayer[%
- addvoffset=-\tud@len@ddcdiff+\ht\strutbox,%
+ addvoffset=-\tud@dim@ddcdiff+\ht\strutbox,%
contents={%
- \TUD@deprecated@lengthcs[%
- \global\@tud@footlogo@option@settrue%
- ]{footlogoheight}%
- \setlength\@tempdima{\dimexpr\layerheight-\dp\strutbox\relax}%
+ \tud@setdim\@tempdima{\layerheight-\dp\strutbox}%
\tud@ddc@check%
\ifcase\@tempb\relax% \tud@ddc@foot@num=false
- \addtolength\@tempdima{\dimexpr\ht\strutbox-\tud@len@ddcdiff\relax}%
- \vskip\dimexpr\tud@len@ddcdiff-\ht\strutbox-\baselineskip\relax%
+ \tud@addtodim\@tempdima{\ht\strutbox-\tud@dim@ddcdiff}%
+ \vskip\dimexpr\tud@dim@ddcdiff-\ht\strutbox-1\baselineskip\relax%
\fi%
\tud@footlogo@cmd@use{\@tempdima}{\layerwidth}%
\tud@footlogo@ddc@use{\@tempdima}{\layerwidth}%
@@ -4975,7 +5121,7 @@
background,%
]{tudheadings.last}%
\DeclareNewPageStyleByLayers[%
- onselect=\tud@ps@onselect,onbackground=\tud@ps@onbackground%
+ onbackground=\tud@ps@onbackground%
]{tudheadings}{%
tudheadings.head.back,%
tudheadings.head.content,%
@@ -4999,7 +5145,7 @@
\DeclareNewPageStyleAlias{tudscr}{tudheadings}%
\DeclareNewPageStyleAlias{tudscrheadings}{tudheadings}%
\DeclareNewPageStyleByLayers[%
- onselect=\tud@ps@onselect,onbackground=\tud@ps@onbackground%
+ onbackground=\tud@ps@onbackground%
]{plain.tudheadings}{%
tudheadings.head.back,%
tudheadings.head.content,%
@@ -5025,7 +5171,7 @@
\DeclareNewPageStyleAlias{tudheadingsplain}{plain.tudheadings}%
\DeclareNewPageStyleAlias{tudscrheadingsplain}{plain.tudheadings}%
\DeclareNewPageStyleByLayers[%
- onselect=\tud@ps@onselect,onbackground=\tud@ps@onbackground%
+ onbackground=\tud@ps@onbackground%
]{empty.tudheadings}{%
tudheadings.head.back,%
tudheadings.head.content,%
@@ -5047,12 +5193,10 @@
\DeclareNewPageStyleAlias{tudscrheadingsempty}{empty.tudheadings}%
\DeclareNewLayer[%
background,%
- area=%
- {\dimexpr\tud@len@layouthoffset-\tud@dim@bleedmargin\relax}%
- {\dimexpr\tud@len@layoutvoffset-\tud@dim@bleedmargin\relax}%
- {\dimexpr\tud@len@layoutwidth+\tud@dim@bleedmargin*2\relax}%
- {\dimexpr\tud@len@layoutheight+\tud@dim@bleedmargin*2\relax}%
- ,%
+ hoffset=\glueexpr\tud@dim@layouthoffset-\tud@bleedmargin@dim\relax,%
+ voffset=\glueexpr\tud@dim@layoutvoffset-\tud@bleedmargin@dim\relax,%
+ width=\glueexpr\tud@dim@layoutwidth+(\tud@bleedmargin@dim)*2\relax,%
+ height=\glueexpr\tud@dim@layoutheight+(\tud@bleedmargin@dim)*2\relax,%
contents={%
\ifdefvoid{\tud@pagecolor}{}{%
\color{\tud@pagecolor}%
@@ -5061,6 +5205,22 @@
},%
]{tudheadings.pagecolor}%
\AddLayersToPageStyle{@everystyle@}{tudheadings.pagecolor}%
+ \AddToLayerPageStyleOptions{@everystyle@}{%
+ onselect={%
+ \tud@if@tudheadings{\currentpagestyle}{%
+ \DeclarePageStyleAlias{plain}{plain.tudheadings}%
+ \DeclarePageStyleAlias{headings}{tudheadings}%
+ \def\sls@currentheadings{tudheadings}%
+ \def\sls@currentplain{plain.tudheadings}%
+ \TUD@deprecated@length\footlogoheight%
+ \tud@komafont@set{pagenumber}{\usekomafont{tudheadings}}%
+ \tud@komafont@set{pagefoot}{\usekomafont{tudheadings}}%
+ }{%
+ \tud@komafont@unset{pagenumber}%
+ \tud@komafont@unset{pagefoot}%
+ }%
+ }%
+ }%
}
\newcommand*\tud@ps@list{}
\listadd\tud@ps@list{tudheadings}
@@ -5069,13 +5229,15 @@
\newcommand*\tud@if@tudheadings[3]{%
\xifinlist{\GetRealPageStyle{#1}}{\tud@ps@list}{#2}{#3}%
}
-\patchcmd{\thispagestyle}{\gdef\@specialstyle{#1}}{%
+\patchcmd\thispagestyle{%
+ \gdef\@specialstyle{#1}%
+}{%
\xdef\@specialstyle{\GetRealPageStyle{#1}}%
}{}{\tud@patch@wrn{thispagestyle}}
\newcommand*\tud@pagestyle{}
\let\tud@pagestyle\pagestyle
\newcommand*\currentpagestyle{plain}
-\pretocmd{\tud@pagestyle}{%
+\pretocmd\tud@pagestyle{%
\tud@BeforeSelectAnyPageStyle{#1}%
\edef\currentpagestyle{#1}%
}{}{\tud@patch@wrn{pagestyle}}
@@ -5091,26 +5253,21 @@
}
\AfterAtEndOfPackage*{scrlayer-scrpage}{\AtEndPreamble{\tud@cdgeometry@init}}
\TUD@UnwindPackage{scrlayer-scrpage}{%
- \ifcsundef{if@chapter}{%
+ \ifundef{\if@chapter}{%
\newif\if@chapter%
- \ifcsundef{chapter}{\@chapterfalse}{\@chaptertrue}%
+ \ifundef{\chapter}{\@chapterfalse}{\@chaptertrue}%
}{}%
\cslet{ps@tudheadings}{\ps@headings}%
\cslet{ps@plain.tudheadings}{\ps@plain}%
\cslet{ps@empty.tudheadings}{\ps@empty}%
\providecommand*\currentpagestyle{plain}%
\providecommand*\BeforeSelectAnyPageStyle[1]{}%
+ \providecommand*\tud@BeforeSelectAnyPageStyle[1]{}%
\providecommand*\GetRealPageStyle[1]{#1}%
\let\pagestyle\tud@pagestyle%
\undef\tud@pagestyle%
\tud@cdgeometry@init%
}
-\newcommand*\tud@ps@onselect{%
- \DeclarePageStyleAlias{plain}{plain.tudheadings}%
- \DeclarePageStyleAlias{headings}{tudheadings}%
- \def\sls@currentheadings{tudheadings}%
- \def\sls@currentplain{plain.tudheadings}%
-}
\newcommand*\tud@head@logocolor{black}
\newcommand*\tud@head@fontcolor{}
\newcommand*\tud@foot@logocolor{black}
@@ -5150,7 +5307,7 @@
\fi%
}{%
\tud@locked@bool@preset{@tud@head@widebar}{true}%
- \ifstr{\tud@pagecolor}{HKS41}{%
+ \tud@if@strequal{\tud@pagecolor}{HKS41}{%
\renewcommand*\tud@head@logocolor{white}%
\renewcommand*\tud@head@fontcolor{white}%
\renewcommand*\tud@foot@logocolor{white}%
@@ -5171,8 +5328,10 @@
\fi%
}%
}%
- \let\tud@len@line\tud@len@thinline%
- \ifstr{\tud@head@fontcolor}{white}{\let\tud@len@line\tud@len@heavyline}{}%
+ \let\tud@dim@line\tud@dim@thinline%
+ \tud@if@strequal{\tud@head@fontcolor}{white}%
+ {\let\tud@dim@line\tud@dim@heavyline}%
+ {}%
\global\let\tud@foot@fontcolor\tud@foot@fontcolor%
}
\newcommand*\tud@head@text@line{}
@@ -5180,13 +5339,13 @@
\newcommand*\tud@head@text@delimiter{}
\newcommand*\tud@head@text@buffer{}
\newcommand*\tud@head@text@add[3][{, }]{%
- \ifxblank{#3}{}{%
+ \tud@if@strblank{#3}{}{%
\edef\tud@head@text@delimiter{\expandonce\tud@head@text@buffer}%
\def\tud@head@text@buffer{#1}%
\edef\@tempa{%
\expandonce\tud@head@text@line%
\expandonce\tud@head@text@delimiter%
- \etex@unexpanded{#2#3}%
+ \unexpanded{#2#3}%
}%
\settowidth\@tempdima{\@tempa}%
\ifdim\@tempdima>\textwidth\relax%
@@ -5197,7 +5356,7 @@
\fi%
}%
}
-\newif\if@tud@head@text@set
+\tud@newif\if@tud@head@text@set
\newcommand*\tud@head@text@wrn[1]{}
\newcommand*\tud@head@text@set{%
\if@tud@head@text@set%
@@ -5209,7 +5368,7 @@
\tud@head@text@add{\tud@head@font@light}{\@institute}%
\tud@head@text@add{\tud@head@font@light}{\@chair}%
\listeadd\tud@head@text@list{\expandonce\tud@head@text@line}%
- \ifxblank{\@extraheadline}{}{%
+ \tud@if@strblank{\@extraheadline}{}{%
\listadd\tud@head@text@list{\tud@head@font@light\@extraheadline}%
}%
\gdef\tud@head@text@wrn##1{%
@@ -5223,7 +5382,7 @@
}
\newcommand*\tud@head@text@box{%
\def\@tempb{\tud@color{\tud@head@fontcolor}}%
- \def\@tempc{\depth+\tud@len@heavyline}%
+ \def\@tempc{\depth+\tud@dim@heavyline}%
\def\@tempa##1{%
\settowidth\@tempdima{##1}%
\ifdim\@tempdima>\textwidth\relax%
@@ -5235,16 +5394,16 @@
\@tempb%
\tud@head@text@write[\@tempc]{##1}%
\def\@tempb{\newline}%
- \def\@tempc{\z@}%
+ \let\@tempc\z@%
\ifnum\tud@head@bar@num>\@ne\relax% cdhead=barcolor/color
\ifdefvoid{\tud@pagecolor}{\color{HKS41}}{%
- \ifstr{\tud@pagecolor}{HKS41}{\color{white}}{\color{HKS41}}%
+ \tud@if@strequal{\tud@pagecolor}{HKS41}{\color{white}}{\color{HKS41}}%
}%
\fi%
}%
\vbox{%
\let\@raggedtwoe@everyselectfont\relax%
- \setlength\spaceskip{\z@}%
+ \tud@setdim\spaceskip{\z@}%
\selectfont%
\offinterlineskip%
\forlistloop\@tempa{\tud@head@text@list}%
@@ -5252,16 +5411,18 @@
\global\let\tud@head@text@wrn\@gobble%
}
\newcommand*\tud@head@text@write[2][\z@]{%
- \raisebox{\dimexpr(\tud@len@barheight+2\tud@len@line-\totalheight)/2\relax}[%
- \dimexpr\tud@len@barheight-\depth\relax%
- ][\dimexpr#1\relax]{#2\vphantom{gjpqy\"A\"O\"U}}%
+ \raisebox{%
+ \dimexpr(\tud@dim@barheight+\tud@dim@line*2-\totalheight)/2\relax%
+ }[%
+ \dimexpr\tud@dim@barheight-\depth\relax%
+ ][\dimexpr\glueexpr#1\relax\relax]{#2\vphantom{\tud@font@phantomglyphs}}%
}
\newcommand*\tud@head@rule[1]{%
\tud@color{\tud@head@fontcolor}%
- \rule[\ht\strutbox]{#1}{\tud@len@line}%
+ \rule[\ht\strutbox]{#1}{\tud@dim@line}%
}
\newcommand*\tud@newlayerbox[1]{%
- \expandafter\newsavebox\csname tud@layer@#1\endcsname%
+ \global\expandafter\newsavebox\csname tud@layer@#1\endcsname%
}
\newcommand*\tud@savelayerbox[1]{%
\global\expandafter\sbox\csname tud@layer@#1\endcsname%
@@ -5269,33 +5430,74 @@
\newcommand*\tud@uselayerbox[1]{%
\expandafter\usebox\csname tud@layer@#1\endcsname%
}
-\newcommand*\tud@vlayerbox[3]{%
+\newcommand*\tud@vlayerbox[4][]{%
\begingroup%
- \setbox\z@\vbox{#2}%
- \setlength\@tempdima{\dimexpr\ht\z@+\dp\z@-#1\relax}%
- \ifdim\@tempdima>\z@\relax%
- \ClassWarning{\TUD@Class@Name}{%
- #3\MessageBreak%
- The maximum height is exceeded by \the\@tempdima\MessageBreak%
+ \setbox\z@\vbox{#3}%
+ \tud@setdim\tud@res@glue{\dimexpr\glueexpr#2\relax\relax}%
+ \ifdim\dimexpr\ht\z@+\dp\z@-\tud@res@glue\relax>\p@\relax%
+ \edef\tud@res@a{%
+ \noexpand\ClassWarning{\noexpand\TUD@Class@Name}{%
+ #4\noexpand\MessageBreak%
+ The total height of \the\dimexpr\ht\z@+\dp\z@\relax\space exceeds the%
+ \noexpand\MessageBreak maximum height (\the\tud@res@glue)%
+ }%
+ }%
+ \IfArgIsEmpty{#1}{\tud@res@a}{%
+ \expandafter\ifx\csname tud@layer@#1@wrn\endcsname\tud@res@a\else%
+ \tud@res@a%
+ \global\cslet{tud@layer@#1@wrn}\tud@res@a%
+ \fi%
}%
\fi%
\endgroup%
- \vbox to #1{#2}%
+ \vbox to #2{#3}%
+}
+\tud@if@v@lower{2.04}{%
+ \renewcommand*\tud@comp@clearpage{%
+ \if@tud@ddc@internal\else%
+ \tud@if@tudheadings{\currentpagestyle}{\clearpage}{}%
+ \fi%
+ }%
+ \renewcommand*\tud@comp@resetpagestyle{%
+ \if@tud@ddc@internal\else%
+ \tud@if@tudheadings{\currentpagestyle}{%
+ \expandafter\pagestyle\expandafter{\currentpagestyle}%
+ }{}%
+ \fi%
+ }%
+}{}%
+\newcommand*\tud@ddc@check{%
+ \let\@tempa\tud@ddc@head@num%
+ \let\@tempb\tud@ddc@foot@num%
+ \if@tud@ddc@auto%
+ \ifdefvoid{\tud@headlogo@filename}{%
+ \let\@tempa\tud@ddc@auto@num%
+ \let\@tempb\z@%
+ }{%
+ \let\@tempa\z@%
+ \let\@tempb\tud@ddc@auto@num%
+ }%
+ \fi%
+ \tud@if@v@lower{2.03}{%
+ \ifnum\@tempb=\z@\relax%
+ \ifdefvoid{\tud@footlogo@filenames}{}{\let\@tempb\m@ne}%
+ \fi%
+ }{}%
}
\tud@newlayerbox{main@black}
\tud@newlayerbox{main@HKS41}
\tud@newlayerbox{main@white}
-\newlength\tud@len@mainlogoheight
+\tud@newdim\tud@dim@mainlogoheight
\newcommand*\tud@mainlogo@wrn[1]{}
-\newif\if@tud@mainlogo@set
+\tud@newif\if@tud@mainlogo@set
\newcommand*\tud@mainlogo@set{%
\if@tud@mainlogo@set%
- \def\@tempa{\includegraphics[keepaspectratio,width=\tud@len@logowidth]}%
+ \def\@tempa{\includegraphics[keepaspectratio,width=\tud@dim@logowidth]}%
\tud@savelayerbox{main@black}{\@tempa{TUD-black}}%
\tud@savelayerbox{main@HKS41}{\@tempa{TUD-blue}}%
\tud@savelayerbox{main@white}{\@tempa{TUD-white}}%
- \settoheight\tud@len@mainlogoheight{\tud@uselayerbox{main@black}}%
- \global\tud@len@mainlogoheight=\tud@len@mainlogoheight%
+ \settoheight\tud@dim@mainlogoheight{\tud@uselayerbox{main@black}}%
+ \global\tud@dim@mainlogoheight=\tud@dim@mainlogoheight%
\gdef\tud@mainlogo@wrn##1{%
\ifdim##1<\ta@bcor\relax%
\ClassWarning{\TUD@Class@Name}{%
@@ -5310,14 +5512,18 @@
\fi%
}%
\tud@headlogo@set%
- \@tud@footlogo@option@settrue%
+ \global\@tud@footlogo@option@settrue%
\tud@footlogo@option@set%
\global\@tud@mainlogo@setfalse%
\fi%
}
+\AtBeginDocument{%
+ \@tud@mainlogo@settrue%
+ \tud@mainlogo@set%
+}
\newcommand*\tud@mainlogo@use{%
\tud@mainlogo@wrn{%
- \dimexpr\oddsidemargin+1in+\tud@len@logox-\tud@len@widemargin\relax%
+ \dimexpr\oddsidemargin+1in+\tud@dim@logox-\tud@dim@widemargin\relax%
}%
\tud@uselayerbox{main@\tud@head@logocolor}%
}
@@ -5327,26 +5533,17 @@
\tud@newlayerbox{head@option}
\newcommand*\tud@headlogo@filename{}
\newcommand*\tud@headlogo@fileoptions{}
-\newcommand*\tud@headlogo@wrn{}
\newcommand*\headlogo[2][]{%
\tud@comp@clearpage%
\renewcommand*\tud@headlogo@filename{#2}%
\renewcommand*\tud@headlogo@fileoptions{#1}%
\global\@tud@headlogo@option@settrue%
\global\@tud@footlogo@option@settrue%
- \gdef\tud@headlogo@wrn{%
- \ClassWarning{\TUD@Class@Name}{%
- Secondary logo `\string\headlogo{\tud@headlogo@filename}'\MessageBreak%
- is overwritten with DDC logo. Maybe you should\MessageBreak%
- use `ddcfoot' or better `ddc' instead of `ddchead'%
- }%
- \global\let\tud@headlogo@wrn\relax%
- }%
\tud@comp@resetpagestyle%
}
\newcommand*\tud@headlogo@set{%
\def\@tempa{%
- \includegraphics[keepaspectratio,totalheight=\tud@len@mainlogoheight]%
+ \includegraphics[keepaspectratio,totalheight=\tud@dim@mainlogoheight]%
}%
\tud@savelayerbox{head@black}{\@tempa{DDC-24}}%
\tud@savelayerbox{head@HKS41}{\@tempa{DDC-27}}%
@@ -5357,18 +5554,19 @@
\if@tud@headlogo@option@set%
\def\@tempc##1##2{%
\tud@savelayerbox{head@option}{%
- \includegraphics[%
- keepaspectratio,totalheight=\tud@len@mainlogoheight,##2%
- ]{##1}%
+ \includegraphics[{%
+ keepaspectratio,%
+ totalheight=\tud@dim@mainlogoheight,%
+ ##2%
+ }]{##1}%
}%
}%
\tud@savelayerbox{head@option}{}%
\tud@ddc@check%
\ifcase\@tempa\relax% \tud@ddc@head@num=false
\ifdefvoid{\tud@headlogo@filename}{}{%
- \protected@edef\tud@headlogo@filename{%
- \expandafter\trim@spaces\expandafter{\tud@headlogo@filename}%
- }%
+ \protected@edef\tud@headlogo@filename{\tud@headlogo@filename}%
+ \trim@spaces@in\tud@headlogo@filename%
\protected@edef\@tempb{%
\noexpand\@tempc{\tud@headlogo@filename}{\tud@headlogo@fileoptions}%
}%
@@ -5387,11 +5585,21 @@
\or% \tud@ddc@head@num=white
\@tempc{DDC-30}{}%
\fi%
+ \ifnum\@tempa>\z@\relax
+ \ifdefvoid{\tud@headlogo@filename}{}{%
+ \ClassWarning{\TUD@Class@Name}{%
+ Secondary logo `\tud@headlogo@filename'\MessageBreak%
+ is overwritten with DDC logo. Maybe you should\MessageBreak%
+ use `ddcfoot' or better `ddc' instead of `ddchead'%
+ }%
+ }%
+ \fi%
\global\@tud@headlogo@option@setfalse%
\fi%
}
+\newcommand*\tud@layer@headlogo@wrn{}
\newcommand*\tud@headlogo@use{%
- \tud@vlayerbox{\tud@len@mainlogoheight}{%
+ \tud@vlayerbox[headlogo]{\tud@dim@mainlogoheight}{%
\vss%
\hbox{%
\tud@ddc@check%
@@ -5405,57 +5613,59 @@
}{%
The given `\string\headlogo{\tud@headlogo@filename}' is too large.%
}%
- \ifdefvoid{\tud@headlogo@filename}{}{%
- \tud@ddc@check%
- \ifnum\@tempa>\z@\relax\tud@headlogo@wrn\fi%
- }%
}
-\AtEndOfClass{%
- \ifdefvoid{\tud@dim@footlogoheight}{%
+\newcommand*\tud@footlogoheight@set{%
+ \ifdim\dimexpr\tud@footlogoheight@dim\relax=\z@\relax%
\tud@if@v@lower{2.03}{%
- \def\tud@dim@footlogoheight{.6\tud@len@topmargin}%
+ \def\tud@footlogoheight@dim{\tud@dim@topmargin*3/5}%
}{%
- \def\tud@dim@footlogoheight{\tud@len@mainlogoheight}%
+ \def\tud@footlogoheight@dim{\tud@dim@mainlogoheight}%
}%
- }{}%
+ \fi%
}
\tud@newlayerbox{foot@black}
\tud@newlayerbox{foot@HKS41}
\tud@newlayerbox{foot@white}
\tud@newlayerbox{foot@option}
\newcommand*\tud@footlogo@ddc@set[2]{%
- \tud@savelayerbox{foot@#1}{%
- \includegraphics[keepaspectratio,totalheight=\tud@dim@footlogoheight]{#2}%
+ \tud@savelayerbox{#1}{%
+ \includegraphics[%
+ keepaspectratio,%
+ totalheight=\dimexpr\glueexpr\tud@footlogoheight@dim\relax\relax%
+ ]{#2}%
}%
}
\newcommand*\tud@footlogo@option@set{%
+ \tud@footlogoheight@set%
\if@tud@footlogo@option@set%
- \tud@footlogo@ddc@set{black}{DDC-22}%
- \tud@footlogo@ddc@set{HKS41}{DDC-25}%
- \tud@footlogo@ddc@set{white}{DDC-28}%
+ \tud@footlogo@ddc@set{foot@black}{DDC-22}%
+ \tud@footlogo@ddc@set{foot@HKS41}{DDC-25}%
+ \tud@footlogo@ddc@set{foot@white}{DDC-28}%
\tud@ddc@check%
\ifcase\@tempb\relax\or\or% \tud@ddc@foot@num=color
- \tud@footlogo@ddc@set{option}{DDC-01}%
+ \tud@footlogo@ddc@set{foot@option}{DDC-01}%
\or% \tud@ddc@foot@num=colorblack
- \tud@footlogo@ddc@set{option}{DDC-07}%
+ \tud@footlogo@ddc@set{foot@option}{DDC-07}%
\or% \tud@ddc@foot@num=gray
- \tud@footlogo@ddc@set{option}{DDC-19}%
+ \tud@footlogo@ddc@set{foot@option}{DDC-19}%
\or% \tud@ddc@foot@num=black
- \tud@footlogo@ddc@set{option}{DDC-22}%
+ \tud@footlogo@ddc@set{foot@option}{DDC-22}%
\or% \tud@ddc@foot@num=blue
- \tud@footlogo@ddc@set{option}{DDC-25}%
+ \tud@footlogo@ddc@set{foot@option}{DDC-25}%
\or% \tud@ddc@foot@num=white
- \tud@footlogo@ddc@set{option}{DDC-28}%
+ \tud@footlogo@ddc@set{foot@option}{DDC-28}%
\fi%
\global\@tud@footlogo@option@setfalse%
+ \global\@tud@footlogo@cmd@settrue%
\fi%
}
+\newcommand*\tud@layer@footlogo@wrn{}
\newcommand*\tud@footlogo@ddc@use[2]{%
\tud@ddc@check%
\ifcase\@tempb\relax\else% \tud@ddc@foot@num=!false
\tud@footlogo@option@set%
\setbox\z@\hbox{%
- \tud@vlayerbox{#1}{%
+ \tud@vlayerbox[footlogo]{#1}{%
\vss%
\hbox to #2{%
\hss%
@@ -5467,12 +5677,12 @@
}%
\vss\vss%
}{%
- You should reduce `footlogoheight', because it is\MessageBreak%
- too high (\the\dimexpr\tud@dim@footlogoheight\relax).%
+ You should reduce `footlogoheight', because it is\noexpand\MessageBreak%
+ too high. %
\ifnum\tud@cdgeometry@num>\@ne% true/symmetric/twoside
- \MessageBreak%
- Alternatively you can enlarge the bottom margin\MessageBreak%
- by using option `extrabottommargin'.%
+ Alternatively you could use\noexpand\MessageBreak%
+ option `extrabottommargin=<length>'\noexpand\MessageBreak%
+ in order to enlarge the bottom margin. %
\fi%
}%
}%
@@ -5490,14 +5700,15 @@
\global\@tud@footlogo@cmd@settrue%
\tud@comp@resetpagestyle%
}
-\newif\if@tud@footlogo@cmd@set
+\tud@newif\if@tud@footlogo@cmd@set
\newcommand*\tud@footlogo@cmd@set[2]{%
\if@tud@footlogo@cmd@set%
\tud@savelayerbox{foot@cmd}{%
\hbox to #2{%
\let\@tempa\relax%
\@for\@tempb:=\tud@footlogo@filenames\do{%
- \edef\@tempb{\expandafter\trim@spaces\expandafter{\@tempb}}%
+ \protected@edef\@tempb{\@tempb}%
+ \trim@spaces@in{\@tempb}%
\@tempa%
\ifx\@tempb\@empty\else%
\expandafter\tud@footlogo@cmd@@set\expandafter{\@tempb}{#1}%
@@ -5527,11 +5738,14 @@
\DeclareListParser{\@tempc}{:}%
\@tempc{#1}%
\preto\tud@footlogo@fileoptions{%
- keepaspectratio,totalheight=\tud@dim@footlogoheight,%
+ keepaspectratio,%
+ totalheight=\dimexpr\glueexpr\tud@footlogoheight@dim\relax\relax,%
}%
\eappto\tud@footlogo@fileoptions{\expandonce\@tempb}%
\protected@edef\@tempc{%
- \noexpand\includegraphics[\expandonce\tud@footlogo@fileoptions]{\@tempa}%
+ \noexpand\includegraphics[{%
+ \expandonce\tud@footlogo@fileoptions%
+ }]{\@tempa}%
}%
\tud@vlayerbox{#2}{\vss\hbox{\@tempc}\vss\vss}{%
The given `\string\footlogo{\@tempa}' is too large.%
@@ -5545,26 +5759,27 @@
\usebox\z@\hspace*{-\wd\z@}%
}
\newkomafont{tudheadings}{\tud@color{\tud@foot@fontcolor}}
-\newcommand*\tud@footcontent@usefont[1]{%
+\newcommand*\tud@footcontent@font@use[1]{%
\usekomafont{tudheadings}{%
- \tud@footcontent@fontsize%
- \tud@footcontent@fontface%
+ \tud@footcontent@font@size%
+ \tud@footcontent@font@face%
\selectfont%
#1%
}%
}
-\newcommand*\tud@footcontent@fontsize{}
-\newcommand*\tud@footcontent@fontface{}
+\newcommand*\tud@footcontent@font@size{}
+\newcommand*\tud@footcontent@font@face{}
\newcommand*\tud@footcontent@left{}
-\newcommand*\tud@footcontent@right{\@nil}
+\newcommand*\tud@footcontent@right{}
+\let\tud@footcontent@right\@nnil
\newcommand*\footcontent{%
\kernel@ifstar{%
- \renewcommand*\tud@footcontent@fontsize{}%
+ \renewcommand*\tud@footcontent@font@size{}%
\tud@footcontent@do%
}{%
- \renewcommand*\tud@footcontent@fontsize{%
- \setlength\@tempdima{\tud@head@fontsize\p@}%
- \fontsize{\@tempdima}{1.25\@tempdima}%
+ \renewcommand*\tud@footcontent@font@size{%
+ \tud@setdim\tud@res@glue{\tud@head@fontsize\p@}%
+ \fontsize{\tud@res@glue}{\dimexpr1\tud@res@glue*5/4\relax}%
}%
\tud@footcontent@do%
}%
@@ -5576,19 +5791,19 @@
}
\newcommand*\tud@footcontent@@do{}
\def\tud@footcontent@@do#1#2[#3]{%
- \if\detokenize{*#1}\relax\else%
- \renewcommand*\tud@footcontent@fontface{#1}%
+ \if\detokenize{#1*}\relax\else%
+ \renewcommand*\tud@footcontent@font@face{#1}%
\fi%
- \if\detokenize{*#2}\relax\else%
+ \if\detokenize{#2*}\relax\else%
\renewcommand*\tud@footcontent@left{#2}%
\fi%
- \if\detokenize{*#3}\relax\else%
+ \if\detokenize{#3*}\relax\else%
\renewcommand*\tud@footcontent@right{#3}%
\fi%
}
\newcommand*\tud@newline@poster{}
\newcommand*\tud@footcontent@@left[1]{%
- \ifxblank{#1}{}{{\tud@head@font@@bold#1\newline}}%
+ \tud@if@strblank{#1}{}{{\tud@head@font@@bold#1\newline}}%
Technische Universit\"at Dresden%
\tud@foot@line@write{faculty}%
\tud@foot@line@write{department}%
@@ -5607,18 +5822,18 @@
\nobreakspace(\@discipline)%
\fi%
\fi%
+ \ifx\@emailaddress\@empty\else\newline\@emailaddress\fi%
\ifx\@office\@empty\else\newline\@office\fi%
\ifx\@telephone\@empty\else\newline\@telephone\fi%
\ifx\@telefax\@empty\else\newline\@telefax\fi%
- \ifx\@emailaddress\@empty\else\newline\@emailaddress\fi%
}%
- \ifpatchable{\@author}{\@latex@warning@no@line}{%
+ \tud@if@field@unset{\@author}{%
\let\@tempa\@empty%
}{%
\let\@tempa\@author%
}%
\ifx\@tempa\@empty\else%
- \ifxblank{#1}{}{{\tud@head@font@@bold#1\newline}}%
+ \tud@if@strblank{#1}{}{{\tud@head@font@@bold#1\newline}}%
\renewcommand*\tud@split@author@do[2]{%
\tud@multiple@fields@store{@author}{##1}%
\tud@multiple@fields@preset{@author}{*}{##1}%
@@ -5632,13 +5847,13 @@
\ifx\@contactperson\@empty\else\newline\fi%
\fi%
\def\tud@newline@poster{%
+ \ifx\@emailaddress\@empty\else\newline\@emailaddress\fi%
\ifx\@office\@empty\else\newline\@office\fi%
\ifx\@telephone\@empty\else\newline\@telephone\fi%
\ifx\@telefax\@empty\else\newline\@telefax\fi%
- \ifx\@emailaddress\@empty\else\newline\@emailaddress\fi%
}%
\ifx\@contactperson\@empty\else%
- \ifxblank{#2}{}{{\tud@head@font@@bold#2\newline}}%
+ \tud@if@strblank{#2}{}{{\tud@head@font@@bold#2\newline}}%
\renewcommand*\tud@split@contactperson@do[2]{%
\tud@multiple@fields@store{@contactperson}{##1}%
\tud@multiple@fields@preset{@contactperson}{*}{##1}%
@@ -5657,12 +5872,12 @@
}[%
\tud@footcontent@@right{\authorname}{\contactpersonname}%
]
+\newcommand*\tud@layer@footcontent@wrn{}
\newcommand*\tud@footcontent@use[2]{%
\@tempswafalse%
- \ifx\tud@footcontent@left\@empty\relax%
- \def\@tempa{\@nil}%
- \ifx\@tempa\tud@footcontent@right\relax\else%
- \ifx\tud@footcontent@right\@empty\relax\else%
+ \ifx\tud@footcontent@left\@empty%
+ \ifx\tud@footcontent@right\@nnil\else%
+ \ifx\tud@footcontent@right\@empty\else%
\@tempswatrue%
\fi%
\fi%
@@ -5672,44 +5887,29 @@
\if@tempswa%
\tud@ddc@check%
\ifcase\@tempb\relax%
- \setlength\@tempdimc{\z@}%
+ \tud@setdim\@tempdimc{\z@}%
\else%
\settowidth\@tempdimc{\tud@uselayerbox{foot@black}}%
- \addtolength\@tempdimc{\columnsep}%
+ \tud@addtodim\@tempdimc{\columnsep}%
\fi%
- \tud@vlayerbox{#1}{%
+ \tud@vlayerbox[footcontent]{#1}{%
\linespread{1}%
\vss%
\hbox to #2{%
- \tud@footcontent@usefont{%
- \def\@tempa{\@nil}%
- \ifx\@tempa\tud@footcontent@right\relax%
- \vtop{%
- \hsize=\dimexpr#2-\@tempdimc\relax%
- \strut\ignorespaces\tud@footcontent@left\strut%
- }%
- \else%
- \vtop{%
- \hsize=\dimexpr(#2-\columnsep)/2\relax%
- \strut\ignorespaces\tud@footcontent@left\strut%
- }%
- \hspace{\columnsep}%
- \vtop{%
- \hsize=\dimexpr(#2-\columnsep)/2-\@tempdimc\relax%
- \strut\ignorespaces\tud@footcontent@right\strut%
- }%
- \fi%
+ \tud@footcontent@font@use{%
+ \tud@setglue\tud@res@glue{#2}%
+ \tud@footcontent@@use{\tud@res@glue}%
\hss%
}%
}%
\vss\vss%
}{%
- The content for the footer (`\string\footcontent')\MessageBreak%
- is too high. You should either reduce the content\MessageBreak%
+ The content for the footer (`\string\footcontent')\noexpand\MessageBreak%
+ is too high. You should either reduce the content\noexpand\MessageBreak%
or lower the fontsize via the optional argument.%
\ifnum\tud@cdgeometry@num>\@ne% true/symmetric/twoside
- \MessageBreak%
- Alternatively you can enlarge the bottom margin\MessageBreak%
+ \noexpand\MessageBreak%
+ Alternatively you can enlarge the bottom margin\noexpand\MessageBreak%
by using option `extrabottommargin'.%
\fi%
}%
@@ -5717,39 +5917,25 @@
\hbox to #2{}%
\fi%
}
-\tud@if@v@lower{2.04}{%
- \renewcommand*\tud@comp@clearpage{%
- \if@tud@ddc@internal\else%
- \tud@if@tudheadings{\currentpagestyle}{\clearpage}{}%
- \fi%
- }%
- \renewcommand*\tud@comp@resetpagestyle{%
- \if@tud@ddc@internal\else%
- \tud@if@tudheadings{\currentpagestyle}{%
- \expandafter\pagestyle\expandafter{\currentpagestyle}%
- }{}%
- \fi%
- }%
-}{}%
-\newcommand*\tud@ddc@check{%
- \let\@tempa\tud@ddc@head@num%
- \let\@tempb\tud@ddc@foot@num%
- \if@tud@ddc@auto%
- \ifdefvoid{\tud@headlogo@filename}{%
- \let\@tempa\tud@ddc@auto@num%
- \let\@tempb\z@%
- }{%
- \let\@tempa\z@%
- \let\@tempb\tud@ddc@auto@num%
+\newcommand*\tud@footcontent@@use[1]{%
+ \ifx\tud@footcontent@right\@nnil%
+ \vtop{%
+ \hsize=\dimexpr\glueexpr#1-\@tempdimc\relax\relax%
+ \strut\ignorespaces\tud@footcontent@left\strut%
+ }%
+ \else%
+ \vtop{%
+ \hsize=\dimexpr\glueexpr(#1-\columnsep)/2\relax\relax%
+ \strut\ignorespaces\tud@footcontent@left\strut%
+ }%
+ \hspace{\columnsep}%
+ \vtop{%
+ \hsize=\dimexpr\glueexpr(#1-\columnsep)/2-\@tempdimc\relax\relax%
+ \strut\ignorespaces\tud@footcontent@right\strut%
}%
\fi%
- \tud@if@v@lower{2.03}{%
- \ifnum\@tempb=\z@\relax%
- \ifdefvoid{\tud@footlogo@filenames}{}{\let\@tempb\m@ne}%
- \fi%
- }{}%
}
-\newif\if@tud@parameter@ps@font@set
+\tud@newif\if@tud@parameter@ps@font@set
\newcommand*\TUD@parameter@ps@def[1]{%
\TUD@parameter@def{cdfont}[true]{%
\TUDoption{cdfont}{#1}%
@@ -5782,38 +5968,50 @@
capabilities of package `scrlayer-scrpage' instead%
}%
]{fancyhdr}
-%%% From File: tudscr-layout.dtx
-\newcommand*\tud@x@scr@headings@current{}
-\newcommand*\tud@sec@fontsize{}
-\newcommand*\tud@thesis@fontsize{}
-\newcommand*\tud@x@scr@headings@set[1][]{%
- \def\@tempa##1##2##3{%
- \ifstr{##1}{\tud@x@scr@headings@current}{}{%
- \renewcommand*\tud@x@scr@headings@current{##1}%
- \renewcommand*\tud@sec@fontsize{##2}%
- \renewcommand*\tud@thesis@fontsize{##3}%
- #1%
- }%
- }%
- \KOMAoptionOf[\def\@tempb]{\KOMAClassFileName}{headings}%
- \@for\@tempc:=\@tempb\do{%
- \ifstr{standardclasses}{\@tempc}{\@tempa{standardclasses}{\Huge}{\LARGE}}{%
- \ifstr{big}{\@tempc}{\@tempa{big}{\Huge}{\LARGE}}{%
- \ifstr{normal}{\@tempc}{\@tempa{normal}{\huge}{\Large}}{%
- \ifstr{small}{\@tempc}{\@tempa{small}{\LARGE}{\large}}{}}}}%
- }%
- \begingroup
- \tud@sec@fontsize%
- \@tempskipa=\glueexpr%
- .8\baselineskip \@plus .05\baselineskip \@minus .1\baselineskip%
- \relax\relax%
+%%%% From File: tudscr-layout.dtx (no git version info was found)
+\newcommand*\tud@subtitle@fontsizecmd{\LARGE}
+\newcommand*\tud@prefix@fontsizecmd{\huge}
+\newcommand*\tud@sec@fontsizecmd{\Huge}
+\newcommand*\tud@sec@baselineskip@@dim{}
+\newcommand*\tud@sec@baselineskip@set{%
+ \begingroup%
+ \tud@sec@fontsizecmd%
\edef\tud@res@a{%
\endgroup%
- \def\noexpand\tud@cd@afterskip{\the\@tempskipa}%
+ \unexpanded{\def\tud@sec@baselineskip@@dim}{%
+ \the\dimexpr\glueexpr\f@baselineskip\relax\relax%
+ }%
}%
\tud@res@a%
}
-\AtEndPreamble{\tud@x@scr@headings@set}
+\tud@sec@baselineskip@set
+\newcommand*\tud@x@scr@headings@set[1][]{%
+ \def\@tempb##1##2##3{%
+ \renewcommand*\tud@sec@fontsizecmd{##1}%
+ \renewcommand*\tud@prefix@fontsizecmd{##2}%
+ \renewcommand*\tud@subtitle@fontsizecmd{##3}%
+ \tud@sec@baselineskip@set%
+ #1%
+ }%
+ \KOMAoptionOf[\def\@tempc]{\KOMAClassFileName}{headings}%
+ \@for\@tempc:=\@tempc\do{%
+ \TUD@set@numkey{headings}{@tempa}{%
+ {standardclasses}{0},{big}{1},{normal}{2},{small}{3}%
+ }{\@tempc}%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed%
+ \ifcase\@tempa\relax% standardclasses
+ \@tempb{\Huge} {\LARGE}{\Large}%
+ \or% big
+ \@tempb{\Huge} {\huge} {\LARGE}%
+ \or% normal
+ \@tempb{\huge} {\LARGE}{\Large}%
+ \or% small
+ \@tempb{\LARGE}{\Large}{\large}%
+ \fi%
+ \fi%
+ }%
+}
+\AfterEndPreamble{\tud@x@scr@headings@set}
\newcommand*\tud@x@scr@headings@reset{%
\tud@cd@process%
\tud@x@scr@headings@set[%
@@ -5831,15 +6029,25 @@
\newcommand*\tud@sec@fontface[1][]{\tud@sec@@fontface{#1}}%
\newcommand*\tud@sec@@fontface[1]{%
\sectfont#1%
- \if@tud@cdfont@active\if@tud@heavyheadings%
- \if@tud@x@mweights@enabled%
- \edef\bfseries@rm{\tud@cdfont@ebf}%
- \edef\bfseries@sf{\tud@cdfont@ebf}%
- \edef\bfseries@tt{\tud@ttfont@ebf}%
+ \if@tud@cdfont@active%
+ \if@tud@heavyheadings%
+ \if@tud@x@mweights@enabled%
+ \edef\bfseries@rm{\tud@cdfont@ebf}%
+ \edef\bfseries@sf{\tud@cdfont@ebf}%
+ \edef\bfseries@tt{\tud@ttfont@ebf}%
+ \fi%
+ \let\bfdefault\tud@cdfont@ebf%
+ \fontseriesforce{\tud@cdfont@ebf}%
\fi%
- \let\bfdefault\tud@cdfont@ebf%
- \fontseries{\tud@cdfont@ebf}%
- \fi\fi%
+ \else%
+ \fontfamily{\tud@cdfont@fam}%
+ \if@tud@heavyheadings%
+ \let\bfdefault\tud@cdfont@ebf%
+ \else%
+ \let\bfdefault\tud@cdfont@bf%
+ \fi%
+ \fontseriesforce{\bfdefault}%
+ \fi%
\selectfont%
}
\if@tud@cdoldfont@active
@@ -5851,46 +6059,32 @@
\fi%
}%
\fi
-\newcommand*\tud@sec@format[2][]{%
- \IfArgIsEmpty{#1}{%
- \tud@sec@strut%
- }{%
- \begingroup%
- \usefontofkomafont{#1}%
- \tud@sec@strut%
- \endgroup%
- }%
- #2%
+\tud@newif\if@tud@sec
+\newrobustcmd*\tud@sec@format{%
+ \@tud@sectrue%
+ \kernel@ifstar{\tud@sec@@format{}}{\tud@sec@@format{\strut}}%
}
-\if@tud@cdoldfont@active
- \newcommand*\tud@sec@uppercase{\MakeUppercase}%
- \AfterPackage*{textcase}{%
- \renewcommand*\tud@sec@uppercase{\MakeTextUppercase}%
- }%
- \renewcommand*\tud@sec@format[2][]{%
- \@tud@res@swafalse%
- \IfArgIsEmpty{#1}{%
- \tud@sec@strut%
- \tud@ifdin{\@tud@res@swatrue}{}%
- }{%
- \begingroup%
- \usefontofkomafont{#1}%
- \tud@sec@strut%
- \tud@ifdin{\aftergroup\@tud@res@swatrue}{}%
- \endgroup%
- }%
- \if@tud@res@swa%
- \tud@sec@uppercase{#2}%
- \else%
- #2%
- \fi%
- }%
-\fi
-\newrobustcmd*\tud@sec@strut{%
+\newcommand*\tud@sec@@format[1]{%
+ \kernel@ifnextchar[%]
+ {\tud@sec@@@format{#1}}%
+ {\tud@sec@@@format{#1}[]}%
+}
+\newcommand*\tud@sec@@@format{}
+\def\tud@sec@@@format#1[#2]#3{%
\begingroup%
- \strut\setbox\strutbox\hbox{\vphantom{\textsuperscript{\"A\"O\"U}}}\strut%
+ \IfArgIsEmpty{#2}%
+ {\let\tud@res@a\@firstofone}%
+ {\def\tud@res@a{\usekomafont{#2}}}%
+ \tud@res@a{%
+ \nobreak#1\nobreak\vphantom{\textsuperscript{\tud@font@phantomglyphs}}%
+ }%
\endgroup%
+ \tud@sec@@@@format{#3}%
}
+\newcommand*\tud@sec@@@@format[1]{#1}
+\if@tud@cdoldfont@active
+ \def\tud@sec@@@@format#1{\tud@ifdin{\MakeUppercase{#1}}{#1}}%
+\fi
\newcommand*\tud@title@fontcolor{}
\newcommand*\tud@part@fontcolor{}
\newcommand*\tud@section@fontcolor{}
@@ -5909,42 +6103,46 @@
\usekomafont{disposition}%
\raggedtitle%
\tud@sec@fontface%
- \tud@sec@fontsize%
+ \tud@sec@fontsizecmd%
\tud@color{\tud@title@fontcolor}%
}%
\tud@komafont@set{subtitle}{%
- \tud@thesis@fontsize%
- \fontseries{\tud@cdfont@bf}\selectfont%
+ \tud@subtitle@fontsizecmd%
+ \fontseriesforce{\tud@cdfont@bf}\selectfont%
}%
\tud@komafont@set{subject}{%
- \sffamily%
\usesizeofkomafont{section}%
+ \sffamily%
+ \fontseriesforce{\tud@cdfont@bf}\selectfont%
\tud@color{\tud@title@fontcolor}%
}%
\fi%
\ifcase\tud@cd@part@num\relax% false
+ \tud@cs@restore{partlineswithprefixformat}%
\tud@cs@restore{scr@part@beforeskip}%
\tud@cs@restore{scr@part@afterskip}%
\tud@cs@restore{partheadstartvskip}%
- \tud@cs@restore{partlineswithprefixformat}%
\tud@komafont@unset{part}%
\tud@komafont@unset{partnumber}%
\tud@cs@restore{raggedpart}%
\else% !false
+ \tud@cs@store{partlineswithprefixformat}%
+ \let\partlineswithprefixformat\tud@partlineswithprefixformat%
\tud@cs@store{scr@part@beforeskip}%
- \renewcommand*\scr@part@beforeskip{\tud@cd@afterskip+\baselineskip}%
+ \renewcommand*\scr@part@beforeskip{%
+ \glueexpr\tud@cd@aftervskip@@glue+\baselineskip\relax%
+ }%
\tud@cs@store{scr@part@afterskip}%
- \renewcommand*\scr@part@afterskip{\tud@cd@afterskip}%
+ \renewcommand*\scr@part@afterskip{\tud@cd@aftervskip@@glue}%
\tud@cs@store{partheadstartvskip}%
\let\partheadstartvskip\tud@partheadstartvskip%
- \tud@cs@store{partlineswithprefixformat}%
- \let\partlineswithprefixformat\tud@partlineswithprefixformat%
\tud@komafont@set{part}{%
\tud@sec@fontface%
\tud@color{\tud@part@fontcolor}%
}%
\tud@komafont@set{partnumber}{%
\tud@sec@fontface%
+ \tud@prefix@fontsizecmd%
\tud@color{\tud@part@fontcolor}%
}%
\tud@cs@store{raggedpart}%
@@ -5988,12 +6186,12 @@
\renewcommand*\raggedsection{\tud@raggedright}%
\tud@cs@store{minisec}%
\renewcommand\minisec[1]{%
- \tud@cs@use{minisec}{\tud@sec@format{##1}}%
+ \tud@cs@use{minisec}{\tud@sec@format*{##1}}%
}%
\tud@komafont@set{minisec}{%
\tud@sec@fontface%
\ifcase\tud@cd@section@num\relax\or\else% *color
- \ifstr{\tud@pagecolor}{HKS41}{}{\color{HKS41}}%
+ \tud@if@strequal{\tud@pagecolor}{HKS41}{}{\color{HKS41}}%
\fi%
}%
\fi%
@@ -6021,42 +6219,51 @@
\fi%
\fi%
}
-\newcommand*\tud@cd@beforeskip{%
- \dimexpr-\tud@len@areavskip-\tud@len@areaheadvskip\relax%
+\newcommand*\tud@cd@beforevskip@@dim{%
+ \dimexpr-\tud@dim@areavskip-\tud@dim@areaheadvskip\relax%
}
-\newcommand*\tud@cd@innerskip{.25\baselineskip}%
-\newcommand*\tud@cd@afterskip{%
- .75\baselineskip \@plus .05\baselineskip \@minus .1\baselineskip%
+\newcommand*\tud@cd@innervskip@@dim{%
+ \dimexpr(\tud@sec@baselineskip@@dim)/5\relax%
+}%
+\newcommand*\tud@cd@aftervskip@@glue{%
+ \glueexpr
+ \dimexpr(\tud@sec@baselineskip@@dim)*4/5\relax
+ \@plus\dimexpr(\tud@sec@baselineskip@@dim)/20\relax
+ \@minus\dimexpr(\tud@sec@baselineskip@@dim)/10\relax
+ \relax
}
-\newcommand*\tud@cd@headstartvskip{%
- \@tempskipa=\glueexpr\tud@cd@beforeskip\relax\relax%
- \ifdim\@tempskipa<\z@\@tempskipa-\@tempskipa\fi%
- \null\vskip-\baselineskip\vskip\@tempskipa%
+\newcommand*\tud@cd@headstart@vskip{%
+ \tud@setdim\@tempdima{\tud@cd@beforevskip@@dim}%
+ \tud@length@setabsolute\@tempdima%
+ \null\vskip\dimexpr\glueexpr\@tempdima-\f@baselineskip-\parskip\relax\relax%
}
\newcommand*\tud@cd@vphantom{%
\begingroup%
- \usekomafont{partnumber}{\nobreak\tud@sec@strut}%
- \setlength\@tempskipa{\tud@cd@innerskip}%
- \par\nobreak\vskip\@tempskipa%
+ \usekomafont{partnumber}{%
+ \tud@sec@format{\vskip\tud@cd@innervskip@@dim}%
+ }%
\endgroup%
}
\newcommand*\tud@part@subtitle{}
\newcommand*\setpartsubtitle[1]{\gdef\tud@part@subtitle{#1}}
\newkomafont{partsubtitle}{%
- \tud@thesis@fontsize%
- \fontseries{\tud@cdfont@bf}\selectfont%
+ \tud@subtitle@fontsizecmd%
+ \fontseriesforce{\tud@cdfont@bf}\selectfont%
\tud@color{\tud@part@fontcolor}%
}
\aliaskomafont{parttitle}{partsubtitle}
\newcommand*\tud@sec@subtitle[1]{%
\ifcsvoid{tud@#1@subtitle}{}{%
- {\usekomafont{#1subtitle}{\tud@sec@format{\csuse{tud@#1@subtitle}}}}\par%
+ {\usekomafont{#1subtitle}{%
+ \vskip-1\parskip%
+ \tud@sec@format{\csuse{tud@#1@subtitle}}%
+ }}\par%
\global\cslet{tud@#1@subtitle}{\@empty}%
}%
}
\newcommand*\tud@partheadstartvskip{}
\let\tud@partheadstartvskip\partheadstartvskip
-\pretocmd{\tud@partheadstartvskip}{%
+\pretocmd\tud@partheadstartvskip{%
\renewcommand*\tud@part@fontcolor{}% false/true
\ifcase\tud@cd@part@num\relax\or\else% *color
\renewcommand*\tud@part@fontcolor{HKS41}%
@@ -6067,25 +6274,30 @@
\edef\tud@partformat{\noexpand\tud@sec@format{\expandonce\partformat}}%
\let\partformat\tud@partformat%
\IfUseNumber{}{\tud@cd@vphantom}%
- #2\tud@sec@format[#1]{#3}%
+ #2\tud@sec@format[{#1}]{#3}%
\tud@sec@subtitle{#1}%
}
+\if@tud@cdoldfont@active
+ \patchcmd\tud@partlineswithprefixformat
+ {#2\tud@sec@format[{#1}]{#3}}
+ {#2\tud@sec@format[{#1}]{}\addtokomafont{#1}{\tud@sec@format}#3}
+ {}{\tud@patch@wrn{tud@partlineswithprefixformat}}
+\fi
\At@startsection{%
\renewcommand*\tud@section@fontcolor{}%
\ifcase\tud@cd@section@num\relax\or\else% *color
- \ifstr{\tud@pagecolor}{HKS41}{}{%
+ \tud@if@strequal{\tud@pagecolor}{HKS41}{}{%
\renewcommand*\tud@section@fontcolor{HKS41}%
}%
\fi%
}
\newcommand*\tud@sectionlinesformat[4]{%
- \@hangfrom{\hskip #2#3}{\tud@sec@format[#1]{#4}}%
+ \@hangfrom{\hskip #2#3}{\tud@sec@format*[{#1}]{#4}}%
}
\newcommand*\tud@sectioncatchphraseformat[4]{%
- \let\tud@sec@strut\relax%
- \hskip #2#3\tud@sec@format[#1]{#4}%
+ \hskip #2#3\tud@sec@format*[{#1}]{#4}%
}
-%%% From File: tudscr-title.dtx
+%%%% From File: tudscr-title.dtx (no git version info was found)
\newkomafont{titlepage}{%
\raggedtitle%
\sffamily%
@@ -6111,7 +6323,9 @@
\tud@cs@use{maketitle}[\tud@title@pagenumber]%
\fi%
\tud@if@tudheadings{\currentpagestyle}{%
- \ifstr{\titlepagestyle}{empty}{\thispagestyle{empty.tudheadings}}{}%
+ \tud@if@strequal{\titlepagestyle}{empty}%
+ {\thispagestyle{empty.tudheadings}}%
+ {}%
}{}%
\else% !false
\if@tud@parameter@ps@font@set\else%
@@ -6139,7 +6353,9 @@
}
\tud@cs@store{maketitle}
\let\maketitle\tud@maketitle
-\patchcmd{\titlepage}{\thispagestyle{empty}}{%
+\patchcmd\titlepage{%
+ \thispagestyle{empty}%
+}{%
\tud@if@tudheadings{\currentpagestyle}{%
\thispagestyle{empty.tudheadings}%
}{%
@@ -6149,7 +6365,9 @@
\newcommand*\tud@maketitle@inpage{%
\renewcommand*\tud@title@fontcolor{}%
\ifcase\tud@cd@title@num\relax\or\else% *color
- \ifstr{\tud@pagecolor}{HKS41}{}{\renewcommand*\tud@title@fontcolor{HKS41}}%
+ \tud@if@strequal{\tud@pagecolor}{HKS41}%
+ {}%
+ {\renewcommand*\tud@title@fontcolor{HKS41}}%
\fi%
\par%
\ifx\tud@title@pagenumber\relax\else%
@@ -6173,7 +6391,7 @@
\ifx\@extratitle\@empty%
\ifx\@frontispiece\@empty\else%
\if@twoside\null\fi%
- \fi
+ \fi%
\else%
\tud@res@a{\@makeextratitle}%
\fi%
@@ -6189,21 +6407,19 @@
}
\newcommand*\tud@maketitle@@inpage{%
\global\@topnum=\z@%
- \tud@cd@headstartvskip%
+ \vspace*{-\baselineskip}%
+ \tud@cd@headstart@vskip%
\setparsizes{\z@}{\z@}{\z@\@plus1fil}\par@updaterelative%
{\usekomafont{titlepage}{%
\tud@x@hyperref@realfootnotes%
\tud@maketitle@head%
{\usekomafont{title}{\tud@title@format{\@title}\par}}%
\ifx\@subtitle\@empty\else%
- \vskip 1ex\@plus.5ex\@minus.5ex%
- {\usekomafont{subtitle}{\tud@title@format{\@subtitle}\par}}%
+ {\usekomafont{subtitle}{\tud@title@format[partnumber]{\@subtitle}\par}}%
\fi%
\vskip 2ex\@plus1ex\@minus1ex%
\ifnum\col@number>\@ne\relax%
- \ifdefvoid{\multicolsep}{}{%
- \ifisskip{\multicolsep}{\vspace{-\multicolsep}}{}%
- }%
+ \tud@if@lengthregister{\multicolsep}{\vspace{-\multicolsep}}{}%
\fi%
\tud@if@v@lower{2.03}{\tud@ddc@enlargepage[\titlepagestyle]}{}%
}}%
@@ -6211,49 +6427,34 @@
\newcommand*\tud@maketitle@head{%
\setbox\z@\vbox{%
\ifx\@titlehead\@empty\else%
- {\usekomafont{titlehead}{%
- \begin{minipage}[t]{\textwidth}%
- \@titlehead\tud@sec@strut%
- \end{minipage}%
- }}%
+ \begin{minipage}[t]{\textwidth}%
+ \usekomafont{titlehead}{\@titlehead\strut\par}%
+ \end{minipage}%
\fi%
\ifx\@subject\@empty\else%
\par\medskip%
- {\usekomafont{subject}{%
- \@subject\tud@sec@strut%
- }}%
+ {\usekomafont{subject}{\tud@sec@format[partnumber]{\@subject}}}%
\fi%
}%
- \setlength\@tempdima{\dimexpr\ht\z@+\dp\z@\relax}%
+ \tud@setdim\@tempdima{\ht\z@+\dp\z@}%
\ifdim\@tempdima>\z@\relax%
\usebox\z@\par\medskip%
\fi%
}
-\newcommand*\tud@title@format[1]{%
+\newcommand*\tud@title@format[2][]{%
\begingroup%
\let\\\newline%
- \let\tud@thanks\relax%
- \def\thanks##1{\gdef\tud@thanks{##1}}%
- \let\footnote\thanks%
- \sbox\z@{#1}%
- \let\thanks\@gobble%
- \let\footnote\@gobble%
- \tud@sec@format{#1}%
- \edef\tud@res@a{%
- \endgroup%
- \ifx\tud@thanks\relax\else%
- \noexpand\thanks{\expandonce\tud@thanks}%
- \fi%
- }%
- \tud@res@a%
+ \tud@sec@format[{#1}]{#2}%
+ \endgroup%
}
\newcommand\maketitleonecolumn[2][]{%
\if@twocolumn%
- \tud@title@twocolumn{\tud@maketitle[#1]{#2}}%
+ \tud@title@twocolumn{\tud@maketitle[{#1}]#2}%
\else%
\ClassError{\TUD@Class@Name}{%
`\string\maketitleonecolumn' can only be used in twocolumn mode%
- }{}%
+ }{You should use `\string\maketitle' instead.}%
+ \tud@maketitle[{#1}]#2%
\fi%
}
\newsavebox\tud@title@box
@@ -6263,14 +6464,14 @@
\let\clearpage\relax%
\let\newpage\relax%
\global\setbox\tud@title@box\vbox{%
- \vspace*{.9\baselineskip}#1\bigskip%
+ \vspace*{\dimexpr1\baselineskip*9/10\relax}#1\bigskip%
}%
\endgroup%
- \setlength\@tempdima{\textheight}%
+ \tud@setdim\@tempdima{\textheight}%
\tud@if@v@lower{2.03}{%
\tud@ddc@check%
\ifcase\@tempb\relax\else% \tud@ddc@foot@num!=false
- \setlength\@tempdima{\dimexpr\textheight-\tud@len@ddcdiff\relax}%
+ \tud@setdim\@tempdima{\textheight-\tud@dim@ddcdiff}%
\@tempswatrue%
\fi%
}{}%
@@ -6280,7 +6481,7 @@
\splitmaxdepth\maxdepth%
\vsplit\tud@title@box to \@tempdima%
\clearpage%
- \setlength\@tempdima{\textheight}%
+ \tud@setdim\@tempdima{\textheight}%
\tud@if@v@lower{2.03}{\@tempswafalse}{}%
}%
\else%
@@ -6293,13 +6494,13 @@
You are using a two-column title along with\MessageBreak%
the DDC-logo. Unfortunately in this case, the\MessageBreak%
type area has to be adjusted manually. Please\MessageBreak%
- use `\string\enlargethispage{-\the\tud@len@ddcdiff}'\MessageBreak%
+ use `\string\enlargethispage{-\the\tud@dim@ddcdiff}'\MessageBreak%
in both columns after the title%
}%
\fi%
}{}%
}
-%%% From File: tudscr-frontmatter.dtx
+%%%% From File: tudscr-frontmatter.dtx (no git version info was found)
\newcommand*\tud@fm@check[2]{%
\global\let\tud@fm@set\tud@fm@first%
#2%
@@ -6351,19 +6552,20 @@
\ifcase\csuse{tud@#1@level@num}\relax% false
\if@titlepage\endgraf\fi%
\csuse{phantomsection}%
- \ifstr{\@currenvir}{\tud@quoting}{}{%
+ \tud@if@strequal{\@currenvir}{\tud@quoting}{}{%
\if@twocolumn%
- \vskip\dimexpr\smallskipamount-\parskip\relax%
+ \vskip\smallskipamount%
\else%
- \vskip\dimexpr\bigskipamount-\parskip\relax%
+ \vskip\bigskipamount%
\fi%
+ \vskip-\parskip%
}%
\or% true
\if@titlepage\endgraf\fi%
\csuse{phantomsection}%
\@afterindentfalse%
- \ifstr{\@currenvir}{\tud@quoting}{}{%
- \vskip\dimexpr\bigskipamount-\parskip\relax%
+ \tud@if@strequal{\@currenvir}{\tud@quoting}{}{%
+ \vskip\bigskipamount\vskip-\parskip%
}%
\begingroup%
\noindent\centering%
@@ -6372,7 +6574,7 @@
\endgraf%
\endgroup%
\nopagebreak%
- \vskip\dimexpr\medskipamount-\parskip\relax%
+ \vskip\medskipamount\vskip-\parskip%
\@afterheading%
\or% section
\section*{#2}%
@@ -6396,7 +6598,7 @@
}%
}[%
\ifnum\tud@abstract@level@num=\tw@\relax%
- \vskip\dimexpr\bigskipamount-\parskip\relax%
+ \vskip\bigskipamount\vskip-\parskip%
\fi%
]
\TUD@parameter@family{abstract}{%
@@ -6412,63 +6614,15 @@
the environment `abstract'.%
}%
}
-%%% From File: tudscr-comp.dtx
-\newlength\footlogoheight
-\setlength\footlogoheight{\maxdimen}
-\TUD@deprecated@cs{professorship}{chair}
-\TUD@deprecated@cs{location}{place}
-\TUD@deprecated@cs{logofile}{headlogo}
-\TUD@deprecated@cs{logofilename}{headlogo}
-\AfterPackage{tudscrsupervisor}{%
- \TUD@deprecated@cs{startdate}{issuedate}%
- \TUD@deprecated@cs{finaldate}{duedate}%
- \TUD@deprecated@cs{maturitydate}{duedate}%
-}
-\TUD@deprecated@cs{textcdfont}{textcd}%
-\TUD@deprecated@cs{tudfont}{cdfont}%
-\TUD@deprecated@cs{univln}{cdfontln}%
-\TUD@deprecated@cs{univrn}{cdfontrn}%
-\TUD@deprecated@cs{univbn}{cdfontsn}%
-\TUD@deprecated@cs{univxn}{cdfontbn}%
-\TUD@deprecated@cs{univls}{cdfontli}%
-\TUD@deprecated@cs{univrs}{cdfontri}%
-\TUD@deprecated@cs{univbs}{cdfontsi}%
-\TUD@deprecated@cs{univxs}{cdfontbi}%
-\TUD@deprecated@cs{textuln}{textcdln}%
-\TUD@deprecated@cs{texturn}{textcdrn}%
-\TUD@deprecated@cs{textubn}{textcdsn}%
-\TUD@deprecated@cs{textuxn}{textcdbn}%
-\TUD@deprecated@cs{textuls}{textcdli}%
-\TUD@deprecated@cs{texturs}{textcdri}%
-\TUD@deprecated@cs{textubs}{textcdsi}%
-\TUD@deprecated@cs{textuxs}{textcdbi}%
-\TUD@deprecated@cs{dinbn}{cdfontxn}%
-\TUD@deprecated@cs{textdbn}{textcdxn}%
-\TUD@deprecated@cs{ifdin}{@secondoftwo}
-\newrobustcmd*\tud@ifdin{%
- \ifx\f@family\tud@cdfont@db%
- \expandafter\@firstoftwo%
- \else%
- \expandafter\@secondoftwo%
- \fi%
-}
-\if@tud@cdoldfont@active
- \newcommand*\ifdin{}%
- \let\ifdin\tud@ifdin%
-\fi
-\def\tud@res@a#1{%
- \TUD@deprecated@cs{var#1}{it#1}%
-}
-\tud@math@loop@greeks@uc\tud@res@a%
-%%% From File: tudscr-misc.dtx
+%%%% From File: tudscr-misc.dtx (no git version info was found)
\newcommand*\tudbookmark[1][]{\@gobbletwo}
\newcommand*\tud@x@hyperref@realfootnotes{}
\AfterPackage{hyperref}{%
- \renewcommand*\tudbookmark[3][]{%
+ \renewcommand*\tudbookmark[3][0]{%
\relax%
\if@tud@bookmarks%
- \phantomsection%
- \ifblank{#1}{\pdfbookmark{#2}{#3}}{\pdfbookmark[#1]{#2}{#3}}%
+ \csuse{phantomsection}%
+ \pdfbookmark[{#1}]{#2}{#3}%
\fi%
}%
\renewcommand*\tud@x@hyperref@realfootnotes{%
@@ -6477,7 +6631,6 @@
\let\@footnotemark\H@@footnotemark%
\let\@footnotetext\H@@footnotetext%
}%
- \pdfstringdefDisableCommands{\let\NoCaseChange\@firstofone}%
}
\newcommand*\tud@x@bookmark@startatroot{\relax}
\AfterPackage{bookmark}{%
@@ -6485,13 +6638,13 @@
\if@tud@bookmarks\bookmarksetup{startatroot}\fi%
}%
}
-\pretocmd{\tud@maketitle@inpage}{%
+\pretocmd\tud@maketitle@inpage{%
\tud@x@bookmark@startatroot%
\tudbookmark[%
1%
]{\titlename}{title}%
}{}{\tud@patch@wrn{tud@maketitle@inpage}}
-\pretocmd{\@maketitle}{%
+\pretocmd\@maketitle{%
\tud@x@bookmark@startatroot%
\tudbookmark[%
1%
@@ -6518,10 +6671,10 @@
\AtBeginDocument{%
\if@tud@x@scr@fontsize@set\else%
\@tud@res@swafalse%
- \ifdim\tud@len@layoutwidth<208mm\relax\@tud@res@swatrue\fi%
- \ifdim\tud@len@layoutwidth>212mm\relax\@tud@res@swatrue\fi%
- \ifdim\tud@len@layoutheight<295mm\relax\@tud@res@swatrue\fi%
- \ifdim\tud@len@layoutheight>299mm\relax\@tud@res@swatrue\fi%
+ \ifdim\tud@dim@layoutwidth<208mm\relax\@tud@res@swatrue\fi%
+ \ifdim\tud@dim@layoutwidth>212mm\relax\@tud@res@swatrue\fi%
+ \ifdim\tud@dim@layoutheight<295mm\relax\@tud@res@swatrue\fi%
+ \ifdim\tud@dim@layoutheight>299mm\relax\@tud@res@swatrue\fi%
\if@tud@res@swa%
\ClassWarningNoLine{\TUD@Class@Name}{%
You've set a layout size, which is different from\MessageBreak%
@@ -6532,22 +6685,43 @@
\fi%
\fi%
}
-\newif\if@tud@font@set
-\newif\if@tud@math@set
-\newif\if@tud@font@skip@set
-\newif\if@tud@x@scr@headings@reset
-\newif\if@tud@cd@process
-\newif\if@tud@cdgeometry@process
+\newcommand*\tud@here@begin[1]{%
+ \def\@captype{#1}%
+ \vskip\intextsep%
+ \color@vbox%
+ \normalcolor%
+ \vbox\bgroup%
+ \hsize=\columnwidth%
+ \@parboxrestore%
+ \@floatboxreset%
+ \@setnobreak%
+ \ignorespaces%
+}
+\newcommand*\tud@here@end{%
+ \vskip\intextsep%
+ \@minipagefalse%
+ \outer@nobreak%
+ \egroup%
+ \color@endbox%
+}
+\newenvironment{figurehere}{\tud@here@begin{figure}}{\tud@here@end}
+\newenvironment{tablehere}{\tud@here@begin{table}}{\tud@here@end}
+\tud@newif\if@tud@font@set
+\tud@newif\if@tud@math@set
+\tud@newif\if@tud@relspacing@set
+\tud@newif\if@tud@x@scr@headings@reset
+\tud@newif\if@tud@cd@process
+\tud@newif\if@tud@cdgeometry@process
\newcommand*\tud@atdocument@process{%
\if@tud@font@set%
\tud@font@set%
\global\@tud@font@setfalse%
- \global\@tud@font@skip@setfalse%
+ \global\@tud@relspacing@setfalse%
\global\@tud@cd@processfalse%
\fi%
- \if@tud@font@skip@set%
- \tud@font@skip@set%
- \global\@tud@font@skip@setfalse%
+ \if@tud@relspacing@set%
+ \tud@relspacing@set%
+ \global\@tud@relspacing@setfalse%
\fi%
\if@tud@math@set%
\tud@math@set%
@@ -6567,22 +6741,54 @@
\global\@tud@cdgeometry@processfalse%
\fi%
}
+%%%% From File: tudscr-comp.dtx (no git version info was found)
+\tud@newglue\footlogoheight
+\tud@setdim\footlogoheight{\maxdimen}
+\TUD@deprecated@cs{professorship}{chair}
+\TUD@deprecated@cs{location}{place}
+\TUD@deprecated@cs{logofile}{headlogo}
+\TUD@deprecated@cs{logofilename}{headlogo}
+\AfterPackage{tudscrsupervisor}{%
+ \TUD@deprecated@cs{startdate}{issuedate}%
+ \TUD@deprecated@cs{finaldate}{duedate}%
+ \TUD@deprecated@cs{maturitydate}{duedate}%
+}
+\TUD@deprecated@cs{textcdfont}{textcd}%
+\TUD@deprecated@cs{tudfont}{cdfont}%
+\TUD@deprecated@cs{univln}{cdfontln}%
+\TUD@deprecated@cs{univrn}{cdfontrn}%
+\TUD@deprecated@cs{univbn}{cdfontsn}%
+\TUD@deprecated@cs{univxn}{cdfontbn}%
+\TUD@deprecated@cs{univls}{cdfontli}%
+\TUD@deprecated@cs{univrs}{cdfontri}%
+\TUD@deprecated@cs{univbs}{cdfontsi}%
+\TUD@deprecated@cs{univxs}{cdfontbi}%
+\TUD@deprecated@cs{textuln}{textcdln}%
+\TUD@deprecated@cs{texturn}{textcdrn}%
+\TUD@deprecated@cs{textubn}{textcdsn}%
+\TUD@deprecated@cs{textuxn}{textcdbn}%
+\TUD@deprecated@cs{textuls}{textcdli}%
+\TUD@deprecated@cs{texturs}{textcdri}%
+\TUD@deprecated@cs{textubs}{textcdsi}%
+\TUD@deprecated@cs{textuxs}{textcdbi}%
+\TUD@deprecated@cs{dinbn}{cdfontxn}%
+\TUD@deprecated@cs{textdbn}{textcdxn}%
+\TUD@deprecated@cs{ifdin}{@secondoftwo}
+\newrobustcmd*\tud@ifdin{%
+ \ifx\f@family\tud@cdfont@db%
+ \expandafter\@firstoftwo%
+ \else%
+ \expandafter\@secondoftwo%
+ \fi%
+}
\if@tud@cdoldfont@active
- \RequirePackage{textcase}[2004/10/07]
- \AfterPackage*{textcase}{%
- \robustify\NoCaseChange%
- \newcommand*\tud@x@textcase@uclcnotmath{%
- \@nonchangecase\hologo%
- \def\footnote##1##{\toks@{\noexpand\footnote##1}\@footnote}%
- \def\@footnote##1{\NoCaseChange{\the\toks@{##1}}}%
- \def\@mkboth##1##2{\NoCaseChange{\@mkboth{##1}{##2}}}%
- }%
- \patchcmd{\@uclcnotmath}{\@nonchangecase\ensuremath}{%
- \@nonchangecase\ensuremath\tud@x@textcase@uclcnotmath%
- }{}{\tud@patch@wrn{@uclcnotmath}}%
- }%
+ \newcommand*\ifdin{}
+ \let\ifdin\tud@ifdin
\fi
-\TUD@deprecated@cs{NoCaseChange}{@firstofone}
+\def\tud@res@a#1{%
+ \TUD@deprecated@cs{var#1}{it#1}%
+}
+\tud@math@loop@greeks@uc\tud@res@a%
\endinput
%%
%% End of file `tudscrposter.cls'.