summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/tudscr
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2022-08-09 20:01:54 +0000
committerKarl Berry <karl@freefriends.org>2022-08-09 20:01:54 +0000
commitc933b55e9ab028dafd369d7bc0cf16ea24473f45 (patch)
treed7598bec16bf78b2054511106c91d5ccf8550eec /Master/texmf-dist/tex/latex/tudscr
parent4e8c785c29a3d68045a3187b9e63158a778725ed (diff)
tudscr (9aug22)
git-svn-id: svn://tug.org/texlive/trunk@64085 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/tudscr')
-rw-r--r--Master/texmf-dist/tex/latex/tudscr/fix-tudscrfonts.sty230
-rw-r--r--Master/texmf-dist/tex/latex/tudscr/mathswap.sty22
-rw-r--r--Master/texmf-dist/tex/latex/tudscr/tudscr-gitinfo.sty220
-rw-r--r--Master/texmf-dist/tex/latex/tudscr/tudscrartcl.cls3553
-rw-r--r--Master/texmf-dist/tex/latex/tudscr/tudscrbase.sty793
-rw-r--r--Master/texmf-dist/tex/latex/tudscr/tudscrbook.cls3677
-rw-r--r--Master/texmf-dist/tex/latex/tudscr/tudscrcolor.sty244
-rw-r--r--Master/texmf-dist/tex/latex/tudscr/tudscrcomp-book.sty198
-rw-r--r--Master/texmf-dist/tex/latex/tudscr/tudscrcomp-poster.sty353
-rw-r--r--Master/texmf-dist/tex/latex/tudscr/tudscrcomp.sty474
-rw-r--r--Master/texmf-dist/tex/latex/tudscr/tudscrdoc.cls2134
-rw-r--r--Master/texmf-dist/tex/latex/tudscr/tudscrfonts.sty1190
-rw-r--r--Master/texmf-dist/tex/latex/tudscr/tudscrmanual.cls1044
-rw-r--r--Master/texmf-dist/tex/latex/tudscr/tudscrmanual.sty (renamed from Master/texmf-dist/tex/latex/tudscr/tudscrtutorial.sty)799
-rw-r--r--Master/texmf-dist/tex/latex/tudscr/tudscrposter.cls3232
-rw-r--r--Master/texmf-dist/tex/latex/tudscr/tudscrreprt.cls3677
-rw-r--r--Master/texmf-dist/tex/latex/tudscr/tudscrsupervisor.sty316
-rw-r--r--Master/texmf-dist/tex/latex/tudscr/twocolfix.sty14
18 files changed, 11936 insertions, 10234 deletions
diff --git a/Master/texmf-dist/tex/latex/tudscr/fix-tudscrfonts.sty b/Master/texmf-dist/tex/latex/tudscr/fix-tudscrfonts.sty
index cc9ec653bc8..d77d604c88a 100644
--- a/Master/texmf-dist/tex/latex/tudscr/fix-tudscrfonts.sty
+++ b/Master/texmf-dist/tex/latex/tudscr/fix-tudscrfonts.sty
@@ -4,7 +4,7 @@
%%
%% The original source files were:
%%
-%% tudscr-version.dtx (with options: `package,fixfonts')
+%% tudscr-version.dtx (with options: `package,fixfonts,identify')
%% tudscr-comp.dtx (with options: `package,fixfonts,identify')
%% tudscr-base.dtx (with options: `package,fixfonts,load')
%% tudscr-layout.dtx (with options: `package,fixfonts,option')
@@ -13,10 +13,11 @@
%% tudscr-comp.dtx (with options: `package,fixfonts,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.
%% ----------------------------------------------------------------------------
@@ -32,59 +33,65 @@
%%
%% 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}
\@ifundefined{TUDScript}{%
\DeclareRobustCommand\TUDScript{%
- \textsf{%
- T\kern.05em U\kern.05em D\kern.1em-\kern.1em Script%
- }%
- \ifcsname xspace\endcsname%
- \xspace%
- \fi%
+ \mbox{%
+ \textsf{%
+ T\kern.05em U\kern.05em D\kern.1em-\kern.1em Script%
+ }%
+ }\ifcsname xspace\endcsname\xspace\fi%
}%
}{}
-%%% From File: tudscr-comp.dtx
-\ProvidesPackage{fix-tudscrfonts}[%
- 2021/07/15 v2.06n TUD-Script
+\providecommand*\TUDScriptContact{hanisch.latex@outlook.com}
+\providecommand*\TUDScriptRepository{https://github.com/tud-cd/tudscr}
+\providecommand*\TUDScriptForum{https://latex.wcms-file3.tu-dresden.de/phpBB3/}
+%%%% From File: tudscr-comp.dtx (no git version info was found)
+\ProvidesPackage{fix-tudscrfonts}%
+[%
+ 2022/08/09 v2.06o TUD-Script
package for font fixes
(compatibility for old tud(scr) classes)%
]
-%%% From File: tudscr-base.dtx
-\RequirePackage{tudscrbase}[\TUD@Version]
-%%% From File: tudscr-layout.dtx
-\newif\if@tud@heavyheadings
+%%%% From File: tudscr-base.dtx (no git version info was found)
+\RequirePackage{tudscrbase}[%
+ 2022/08/09 v2.06o TUD-Script
+]
+%%%% From File: tudscr-layout.dtx (no git version info was found)
+\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}%
@@ -97,29 +104,39 @@
\fi%
\fi%
}
-%%% From File: tudscr-misc.dtx
+%%%% From File: tudscr-misc.dtx (no git version info was found)
+\TUDExecuteOptions{%
+ headings=heavy%
+}
\DeclareOption*{%
\expandafter\PassOptionsToPackage\expandafter{\CurrentOption}%
{tudscrfonts}%
}
-\TUDExecuteOptions{%
- headings=heavy%
-}
\TUDProcessOptions\relax
-%%% From File: tudscr-layout.dtx
+%%%% From File: tudscr-layout.dtx (no git version info was found)
\AfterPackage{tudscrfonts}{%
\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%
+ \else%
+ \fontfamily{\tud@cdfont@fam}%
+ \if@tud@heavyheadings%
+ \let\bfdefault\tud@cdfont@ebf%
+ \else%
+ \let\bfdefault\tud@cdfont@bf%
\fi%
- \let\bfdefault\tud@cdfont@ebf%
- \fontseries{\tud@cdfont@ebf}%
- \fi\fi%
+ \fontseriesforce{\bfdefault}%
+ \fi%
\selectfont%
}
\if@tud@cdoldfont@active
@@ -131,48 +148,39 @@
\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%
+\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%
+ \IfArgIsEmpty{#2}%
+ {\let\tud@res@a\@firstofone}%
+ {\def\tud@res@a{\usekomafont{#2}}}%
+ \tud@res@a{%
+ \nobreak#1\nobreak\vphantom{\textsuperscript{\tud@font@phantomglyphs}}%
}%
- \if@tud@res@swa%
- \tud@sec@uppercase{#2}%
- \else%
- #2%
- \fi%
- }%
-\fi
-\newrobustcmd*\tud@sec@strut{%
+ \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
}
-%%% From File: tudscr-comp.dtx
+%%%% From File: tudscr-comp.dtx (no git version info was found)
\AtEndPreamble{%
\tud@fixfonts@class@check%
- \RequirePackage{tudscrfonts}[\TUD@Version]%
+ \RequirePackage{tudscrfonts}[%
+ 2022/08/09 v2.06o TUD-Script
+ ]%
}
\ifx\usepackage\RequirePackage
\newcommand*\tud@fixfonts@class@check{%
@@ -215,6 +223,8 @@
\tud@cs@store{shapedefault}%
\tud@cs@store{normalfont}%
\let\normalfont\relax%
+ \let\abovecaptionskip\relax%
+ \let\belowcaptionskip\relax%
\PassOptionsToClass{serifmath}{#1}%
}%
\AfterClass{#1}{%
@@ -235,6 +245,10 @@
\tud@cs@restore{seriesdefault}%
\tud@cs@restore{shapedefault}%
\tud@cs@restore{normalfont}%
+ \newlength\abovecaptionskip%
+ \newlength\belowcaptionskip%
+ \setlength\abovecaptionskip{10\p@}%
+ \setlength\belowcaptionskip{0\p@}%
#2%
\AfterPackage{tudscrfonts}{%
\def\dinBold{\dinbn}%
@@ -325,29 +339,41 @@
\tud@fixfonts@class@adapt{tudposter}{}
\tud@fixfonts@class@adapt{tudbeamer}{}
\tud@fixfonts@class@adapt{tudbook}{%
- \patchcmd{\@makechapterhead}{\dinBold\Huge\bfseries}{%
+ \patchcmd\@makechapterhead{%
+ \dinBold\Huge\bfseries%
+ }{%
\tud@sec@fontface%
\if@color\color{HKS41-100}\fi%
\Huge%
}{}{\tud@patch@wrn{@makechapterhead}}%
- \patchcmd{\@makechapterhead}{\MakeUppercase}{%
+ \patchcmd\@makechapterhead{%
+ \MakeUppercase%
+ }{%
\tud@sec@format%
}{}{\tud@patch@wrn{@makechapterhead}}%
- \patchcmd{\@makeschapterhead}{\dinBold\Huge\bfseries}{%
+ \patchcmd\@makeschapterhead{%
+ \dinBold\Huge\bfseries%
+ }{%
\tud@sec@fontface%
\if@color\color{HKS41-100}\fi%
\Huge%
}{}{\tud@patch@wrn{@makeschapterhead}}%
- \patchcmd{\@makeschapterhead}{\MakeUppercase}{%
+ \patchcmd\@makeschapterhead{%
+ \MakeUppercase%
+ }{%
\tud@sec@format%
}{}{\tud@patch@wrn{@makeschapterhead}}%
- \patchcmd{\section}{\dinBold\Large\bfseries\MakeUppercase}{%
+ \patchcmd\section{%
+ \dinBold\Large\bfseries\MakeUppercase%
+ }{%
\tud@sec@fontface%
\if@color\color{HKS41-100}\fi%
\Large%
\tud@sec@format%
}{}{\tud@patch@wrn{section}}%
- \patchcmd{\showtitle}{\dinBold\Huge\bfseries\MakeUppercase}{%
+ \patchcmd\showtitle{%
+ \dinBold\Huge\bfseries\MakeUppercase%
+ }{%
\tud@sec@fontface%
\if@colortitle\color{HKS41-30}\fi%
\Huge%
@@ -355,6 +381,7 @@
}{}{\tud@patch@wrn{showtitle}}%
}
\tud@fixfonts@class@adapt{tudmathposter}{%
+ \ifunivers\PassOptionsToPackage{cdoldfont}{tudscrfonts}\fi%
\def\raggedtitle{\tud@raggedright}%
\renewcommand*\raggedpart{\tud@raggedright}%
\renewcommand*\raggedsection{\tud@raggedright}%
@@ -382,32 +409,31 @@
\fi
}%
}%
- \apptocmd{\maketitle}{\vspace{-6ex}}{}{\tud@patch@wrn{maketitle}}%
+ \apptocmd\maketitle{%
+ \vspace{-6ex}%
+ }{}{\tud@patch@wrn{maketitle}}%
\renewcommand*\subtitlefont{%
\unskip%
\tud@sec@fontface%
\huge%
}%
\renewcommand*\preprocesstitle[1]{\raggedtitle\tud@sec@format{#1}}%
- \if@mathevorgabe%
- \undef\sectionfont%
- \undef\subsectionfont%
- \fi%
- \newcommand*\sectionfont{\bfseries\LARGE}%
- \newcommand*\subsectionfont{\sectionfont\large}%
- \patchcmd{\ps@tudposter}{\textbf{\@einrichtung}}{%
- \textbf{\fontseries{b}\selectfont\@einrichtung}%
+ \def\sectionfont{\tud@sec@fontface\LARGE}%
+ \def\subsectionfont{\tud@sec@fontface\large}%
+ \patchcmd\ps@tudposter{%
+ \textbf{\@einrichtung}%
+ }{%
+ {\fontseries{b}\selectfont\@einrichtung}%
}{}{\tud@patch@wrn{ps@tudposter}}%
\pagestyle{tudposter}%
}
\newcommand*\tud@x@tudfonts@prevent{%
- \RequirePackage{amsmath}%
- \RequirePackage{amsfonts}%
\newif\if@tudfonts@nodin%
\let\DeclareTudMathSizes\@gobblefour%
\let\tud@x@tudfonts@prevent\relax%
}
\PreventPackageFromLoading[\tud@x@tudfonts@prevent]{tudfonts}
+\PreventPackageFromLoading{opensans}
\endinput
%%
%% End of file `fix-tudscrfonts.sty'.
diff --git a/Master/texmf-dist/tex/latex/tudscr/mathswap.sty b/Master/texmf-dist/tex/latex/tudscr/mathswap.sty
index 7a9a9de6438..276040a8ed9 100644
--- a/Master/texmf-dist/tex/latex/tudscr/mathswap.sty
+++ b/Master/texmf-dist/tex/latex/tudscr/mathswap.sty
@@ -7,10 +7,11 @@
%% tudscr-mathswap.dtx (with options: `package')
%%
%% 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.
%% ----------------------------------------------------------------------------
@@ -26,12 +27,11 @@
%%
%% The current maintainer and author of this work is Falk Hanisch.
%%
-%%% From File: tudscr-mathswap.dtx
+%%%% From File: tudscr-mathswap.dtx (no git version info was found)
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{mathswap}[%
- 2021/07/15 v2.06n TUD-Script
- package
- (swap mathematical separators)%
+ 2022/08/09 v2.06o TUD-Script
+ package (swap mathematical separators)%
]
\newcommand*\@commaswap{,}
\newcommand*\commaswap[1]{\gdef\@commaswap{#1}\ignorespaces}
@@ -81,10 +81,10 @@
}
\newcommand*\ms@token{}
\begingroup
- \catcode`,=\active
- \gdef,{\futurelet\ms@token\ms@smartcomma}
- \catcode`.=\active
- \gdef.{\futurelet\ms@token\ms@smartdot}
+ \catcode`,=\active%
+ \gdef,{\futurelet\ms@token\ms@smartcomma}%
+ \catcode`.=\active%
+ \gdef.{\futurelet\ms@token\ms@smartdot}%
\endgroup
\newcommand*\ms@smartcomma{\ms@ifnum{\ms@commaswap}{\ms@commachar}}
\newcommand*\ms@smartdot{\ms@ifnum{\ms@dotswap}{\ms@dotchar}}
diff --git a/Master/texmf-dist/tex/latex/tudscr/tudscr-gitinfo.sty b/Master/texmf-dist/tex/latex/tudscr/tudscr-gitinfo.sty
new file mode 100644
index 00000000000..1ba983a1777
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/tudscr/tudscr-gitinfo.sty
@@ -0,0 +1,220 @@
+%%
+%% This is file `tudscr-gitinfo.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% tudscr-version.dtx (with options: `package,git,identify')
+%% tudscr-gitinfo.dtx (with options: `identify,package')
+%%
+%% TUD-Script -- Corporate Design of Technische Universitaet Dresden
+%% 2022/08/09 v2.06o TUD-Script
+%%
+%% 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.
+%% ----------------------------------------------------------------------------
+%%
+%% This work may be distributed and/or modified under the conditions of the
+%% LaTeX Project Public License, either version 1.3c of this license or
+%% any later version. The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of
+%% LaTeX version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status "maintained".
+%%
+%% The current maintainer and author of this work is Falk Hanisch.
+%%
+%%%% 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[2]{%
+ \gdef\TUD@Version{#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%
+ }%
+ \fi%
+ }%
+ \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
+\@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/}
+%%%% From File: tudscr-gitinfo.dtx (no git version info was found)
+\def\GitContainerFile{tudscr-gitinfo-ver.aux}
+\ProvidesPackage{tudscr-gitinfo}[%
+ 2022/08/09 v2.06o TUD-Script
+ package (obtaining git version)%
+]
+\ifcsname ver@\GitContainerFile\endcsname\else
+ \InputIfFileExists{\GitContainerFile}{}{}%
+\fi
+\def\GetFileInfo{\tud@GetFileInfo}
+\newcommand*\tud@git@file@list{}
+\newcommand*\tud@GetFileInfo[1]{%
+ \filename@parse{#1}%
+ \ifx\filename@ext\relax%
+ \edef\filename{\filename@area\filename@base.dtx}%
+ \expandafter\IfFileExists\expandafter{\filename}{}{%
+ \edef\filename{\filename@area\filename@base.tex}%
+ }%
+ \else%
+ \edef\filename{#1}%
+ \fi%
+ \expandafter\tud@git@log\expandafter{\filename}%
+ \ifcsname\filename-ver\endcsname%
+ \def\@tempa##1 ##2 ##3\@nil{%
+ \def\filedate{##1}%
+ \let\fileversion\@empty%
+ \def\filerevision{##3}%
+ }%
+ \edef\@tempb{\csname\filename-ver\endcsname}%
+ \expandafter\@tempa\@tempb\@nil%
+ \let\fileinfo\@empty%
+ \edef\tud@git@file@list{\tud@git@file@list,\filename}%
+ \else%
+ \PackageWarningNoLine{tudscr-gitinfo}{No git info found for \filename}%
+ \expandafter\tud@@GetFileInfo\expandafter{\filename}%
+ \fi%
+}
+\newcommand*\tud@@GetFileInfo[1]{%
+ \@ifundefined{filedate}{\def\filedate{?}}{}%
+ \@ifundefined{fileversion}{\def\fileversion{?}}{}%
+ \@ifundefined{filerevision}{\let\filerevision\@empty}{}%
+ \@ifundefined{fileinfo}{\let\fileinfo\@empty}{}%
+ \ifcsname ver@\filename\endcsname%
+ \def\@tempa##1 ##2 ##3\relax##4\relax{%
+ \def\@tempb####1\relax?####2\@nil{\edef\@tempc{####1}}%
+ \@tempb##1\relax?\@nil%
+ \ifx\@tempc\@empty\else%
+ \let\filedate\@tempc%
+ \@tempb##2\relax?\@nil%
+ \ifx\@tempc\@empty\else%
+ \let\fileversion\@tempc%
+ \@tempb##3\relax?\@nil%
+ \ifx\@tempc\@empty\else%
+ \let\fileinfo\@tempc%
+ \fi%
+ \fi%
+ \fi%
+ }%
+ \edef\@tempb{\csname ver@#1\endcsname}%
+ \expandafter\@tempa\@tempb\relax? ? \relax\relax%
+ \fi%
+}
+\RequirePackage{scrlfile}[%
+ 2022/05/01 v3.36 KOMA-Script
+]
+\AfterPackage*{doc}{\def\GetFileInfo{\tud@GetFileInfo}}
+\RequirePackage{pdftexcmds}
+\newcommand*\tud@git@log[1]{%
+ \ifnum\pdf@shellescape=\@ne%
+ \begingroup%
+ \endlinechar=\m@ne%
+ \everyeof{\noexpand}%
+ \edef\@tempa{\tud@git@@log{#1}}%
+ \ifx\@tempa\@empty\else%
+ \edef\@tempa{%
+ \unexpanded{\expandafter\gdef\csname #1-ver\endcsname}{\@tempa}%
+ }%
+ \@tempa%
+ \fi%
+ \endgroup%
+ \fi%
+}
+\begingroup
+\@makeother\|
+\newcommand*\tud@git@@log[1]{}
+\xdef\tud@git@@log#1{%
+ \noexpand\@@input|"git log -1 %
+ --format='\@percentchar ad \@percentchar h' %
+ --date=format:'\@percentchar Y/\@percentchar m/\@percentchar d %
+ \@percentchar H:\@percentchar M:\@percentchar S' %
+ -- #1" %
+}
+\endgroup
+\AtEndDocument{%
+ \ifnum\pdf@shellescape=\@ne%
+ \ifx\tud@git@file@list\@empty\else%
+ \edef\tud@git@file@list{\expandafter\@gobble\tud@git@file@list}%
+ \def\@tempa{%
+ \@percentchar\@percentchar\space%
+ This file was generated with `tudscr-gitinfo.sty'^^J%
+ \@percentchar\@percentchar\space%
+ It is intended to be used for generating either a documentation^^J%
+ \@percentchar\@percentchar\space%
+ with class `tudscrdoc' or installation files with `docstrip'%
+ }%
+ \chardef\reserved@c15 %
+ \ch@ck7\reserved@c\write%
+ \immediate\openout\reserved@c\GitContainerFile\relax%
+ \immediate\write\reserved@c{\@tempa}%
+ \@for\@tempa:=\tud@git@file@list\do{%
+ \edef\@tempb{%
+ \unexpanded{\expandafter\gdef\csname}%
+ \@tempa-ver%
+ \noexpand\endcsname%
+ {\csname\@tempa-ver\endcsname}%
+ }%
+ \immediate\write\reserved@c{\unexpanded\expandafter{\@tempb}}%
+ }%
+ \immediate\closeout\reserved@c%
+ \fi%
+ \fi%
+}
+\AtEndOfPackage{%
+ \GetFileInfo{\jobname}%
+ \edef\@tempa{%
+ \filedate\space\fileversion\space%
+ \ifx\filerevision\@empty\else%
+ \filerevision\ifx\fileinfo\@empty\else\space\fi%
+ \fi%
+ \fileinfo%
+ }%
+ \ifcsname ver@\filename\endcsname%
+ \edef\@tempb{\csname ver@\filename\endcsname}%
+ \ifx\@tempb\filedate\else%
+ \PackageWarningNoLine{tudscr-gitinfo}{%
+ The obtained info for \filename\space is\MessageBreak%
+ \@tempa\MessageBreak%
+ so the current info\MessageBreak%
+ \csname ver@\filename\endcsname\MessageBreak%
+ is overwritten%
+ }%
+ \fi%
+ \fi%
+ \ProvidesFile{\filename}[\@tempa]%
+}
+\endinput
+%%
+%% End of file `tudscr-gitinfo.sty'.
diff --git a/Master/texmf-dist/tex/latex/tudscr/tudscrartcl.cls b/Master/texmf-dist/tex/latex/tudscr/tudscrartcl.cls
index d1adf523696..d19991b92fc 100644
--- a/Master/texmf-dist/tex/latex/tudscr/tudscrartcl.cls
+++ b/Master/texmf-dist/tex/latex/tudscr/tudscrartcl.cls
@@ -4,7 +4,7 @@
%%
%% The original source files were:
%%
-%% tudscr-version.dtx (with options: `class,article')
+%% tudscr-version.dtx (with options: `class,article,identify')
%% tudscr-base.dtx (with options: `class,article,load')
%% tudscr-base.dtx (with options: `class,article,option')
%% tudscr-fonts.dtx (with options: `class,article,option')
@@ -25,14 +25,15 @@
%% tudscr-layout.dtx (with options: `class,article,body')
%% tudscr-title.dtx (with options: `class,article,body')
%% tudscr-frontmatter.dtx (with options: `class,article,body')
-%% tudscr-comp.dtx (with options: `class,article,body')
%% tudscr-misc.dtx (with options: `class,article,body')
+%% tudscr-comp.dtx (with options: `class,article,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{tudscrartcl}{scrartcl}{document 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}%
+ \TUD@set@dimkey{footlogoheight}{\tud@footlogoheight@dim}{#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%
+ \tud@length@setabsolute\tud@footlogoheight@dim%
\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}%
- \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%
-}
-%%% 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,%
@@ -794,13 +818,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@cover@num{0}
@@ -832,19 +856,28 @@
\fi%
}
\newcommand*\tud@pagecolor{}%
-\newcommand*\tud@dim@pageheadingsvskip{0pt}
-\TUD@key{pageheadingsvskip}{%
- \TUD@set@dimenkey{pageheadingsvskip}{\tud@dim@pageheadingsvskip}{#1}%
+\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%
+ }%
}
-\newcommand*\tud@dim@headingsvskip{0pt}
+\newcommand*\tud@headingsvskip@dim{0pt}
\TUD@key{headingsvskip}{%
- \TUD@set@dimenkey{headingsvskip}{\tud@dim@headingsvskip}{#1}%
+ \TUD@set@dimkey{headingsvskip}{\tud@headingsvskip@dim}{#1}%
}
-\newif\if@tud@heavyheadings
+\newcommand*\tud@pageheadingsvskip@dim{\tud@headingsvskip@dim}
+\TUD@key{pageheadingsvskip}{%
+ \TUD@set@dimkey{pageheadingsvskip}{\tud@pageheadingsvskip@dim}{#1}%
+}
+\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}%
@@ -859,19 +892,19 @@
}
\DefineFamilyMember{KOMA}
\DefineFamilyKey{KOMA}{headings}{%
+ \FamilyKeyStateUnknownValue%
\TUD@SpecialOptionAtDocument{tud@x@scr@headings@reset}%
- \FamilyKeyStateProcessed%
}
-%%% From File: tudscr-title.dtx
-\newif\if@tud@subjectthesis
+%%%% From File: tudscr-title.dtx (no git version info was found)
+\tud@newif\if@tud@subjectthesis
\TUD@key{subjectthesis}[true]{%
\TUD@set@ifkey{subjectthesis}{@tud@subjectthesis}{#1}%
}
-\newif\if@tud@titlesignature
+\tud@newif\if@tud@titlesignature
\TUD@key{titlesignature}[true]{%
\TUD@set@ifkey{titlesignature}{@tud@titlesignature}{#1}%
}
-%%% 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},%
@@ -890,11 +923,11 @@
}
\newcommand*\tud@abstract@level@num{0}
\tud@locked@newnum{tud@abstract@toc@num}{0}
-\newif\if@tud@abstract@multi
+\tud@newif\if@tud@abstract@multi
\@tud@abstract@multitrue
-\newif\if@tud@abstract@fil
+\tud@newif\if@tud@abstract@fil
\@tud@abstract@filtrue
-\newif\if@tud@abstract@markboth
+\tud@newif\if@tud@abstract@markboth
\TUD@key{abstract}[true]{%
\edef\@tempb{\TUD@bool@numkey,\tud@fm@switch}%
\TUD@set@numkey{abstract}{@tempa}{\@tempb}{#1}%
@@ -951,15 +984,16 @@
}
\DefineFamilyMember{KOMA}
\DefineFamilyKey{KOMA}{abstract}[true]{%
+ \FamilyKeyStateUnknownValue%
\AtEndOfFamilyOptions{\TUDoptions{abstract=#1}}%
}
\newcommand*\tud@declaration@level@num{1}
\tud@locked@newnum{tud@declaration@toc@num}{0}
-\newif\if@tud@declaration@multi
+\tud@newif\if@tud@declaration@multi
\@tud@declaration@multitrue
-\newif\if@tud@declaration@fil
+\tud@newif\if@tud@declaration@fil
\@tud@declaration@filtrue
-\newif\if@tud@declaration@markboth
+\tud@newif\if@tud@declaration@markboth
\TUD@key{declaration}[true]{%
\edef\@tempb{\TUD@bool@numkey,\tud@fm@switch}%
\TUD@set@numkey{declaration}{@tempa}{\@tempb}{#1}%
@@ -1014,8 +1048,8 @@
\fi%
\fi%
}
-%%% 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}%
}
@@ -1025,7 +1059,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
@@ -1042,7 +1076,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}%
{%
@@ -1093,16 +1127,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}
@@ -1130,88 +1171,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}%
{%
@@ -1220,6 +1208,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%
}
@@ -1362,7 +1356,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%
@@ -1377,12 +1371,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}%
}{%
@@ -1397,34 +1391,36 @@
\TUD@key@preset{ttfont}{roboto}%
\TUD@key@preset{headings}{heavy}%
}
-\DeclareOption*{\tud@x@scr@checkoptions}
\TUDExecuteOptions{%
cd=true,tudbookmarks=true%
}
+\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%
@@ -1444,14 +1440,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}{%
@@ -1490,11 +1488,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}
@@ -1507,12 +1503,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}{%
@@ -1520,8 +1521,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}%
@@ -1538,6 +1539,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][-]{%
@@ -1572,7 +1584,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%
@@ -1589,7 +1601,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}%
@@ -1597,8 +1612,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}%
@@ -1612,7 +1631,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%
@@ -1630,7 +1649,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{%
@@ -1644,8 +1663,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 %
@@ -1662,40 +1681,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{%
@@ -1725,7 +1716,7 @@
}%
\edef\tud@res@a{%
\endgroup%
- \noexpand\DeclareRobustCommand%
+ \noexpand\renewrobustcmd*%
\expandafter\noexpand\csname #1family\endcsname{%
\expandafter\noexpand\csname tud@x@fontspec@fam@#2\endcsname%
}%
@@ -1733,8 +1724,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}%
@@ -1759,13 +1751,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%
@@ -1814,12 +1799,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%
@@ -1833,7 +1825,6 @@
\fi%
\tud@cdfont@@set%
\fi%
- \tud@cdfont@wrn%
}
\newcommand*\tud@cdfont@md{m}
\newcommand*\tud@cdfont@bf{b}
@@ -1901,7 +1892,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%
@@ -1922,35 +1913,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}%
- \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}%
+ \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@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{%
@@ -1991,28 +2004,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}
- \fi%
+ \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{}%
@@ -2035,7 +2053,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{%
@@ -2053,23 +2071,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{}%
@@ -2097,26 +2118,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{%
@@ -2135,7 +2136,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}%
@@ -2144,7 +2145,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%
@@ -2186,7 +2187,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]{%
@@ -2194,29 +2195,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}%
@@ -2225,20 +2226,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}%
@@ -2246,8 +2247,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{_}{}%
@@ -2256,9 +2256,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}%
@@ -2268,8 +2268,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{_}{}%
@@ -2312,12 +2311,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%
@@ -2402,24 +2401,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%
@@ -2434,8 +2433,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%
}
@@ -2519,7 +2528,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}}%
}{}%
@@ -2547,7 +2556,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{%
@@ -2560,7 +2569,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{%
@@ -2659,26 +2668,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%
@@ -2686,43 +2688,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}{}{%
@@ -2768,12 +2736,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%
@@ -2783,104 +2750,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}%
- \fi%
+ \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{%
@@ -2889,14 +2880,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{%
@@ -2909,18 +2900,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{}
@@ -2949,7 +2995,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%
@@ -2972,7 +3018,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}%
@@ -3075,7 +3121,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}%
@@ -3084,13 +3130,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%
@@ -3105,7 +3150,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}{}{%
@@ -3119,49 +3164,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@set{%
@@ -3181,14 +3184,14 @@
\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}%
\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}%
\fi%
\ifcase\tud@head@font@num\relax\else% true/heavy
\tud@head@cdfont@set%
@@ -3227,7 +3230,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}%
@@ -3253,20 +3359,26 @@
\newcommand*\@department{}
\newcommand*\@institute{}
\newcommand*\@chair{}
-\newcommand*\faculty[2][]{\tud@head@text@field{faculty}{#2}}
-\newcommand*\department[2][]{\tud@head@text@field{department}{#2}}
-\newcommand*\institute[2][]{\tud@head@text@field{institute}{#2}}
-\newcommand*\chair[2][]{\tud@head@text@field{chair}{#2}}
+\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}%
\global\@tud@head@text@settrue%
}
+\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%
@@ -3277,7 +3389,7 @@
}
\newcommand*\@@author{}
\renewcommand*\author[1]{%
- \gdef\@author{#1}%
+ \tud@trim@field\@author{#1}%
\begingroup%
\let\thanks\@gobble%
\let\footnote\@gobble%
@@ -3309,128 +3421,160 @@
\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*\@matriculationnumber{}
-\newrobustcmd*\matriculationnumber[1]{%
- \gdef\@matriculationnumber{#1}\ignorespaces%
-}
+\newrobustcmd*\matriculationnumber[1]{\tud@trim@field\@matriculationnumber{#1}}
\newcommand*\@matriculationyear{}
-\newrobustcmd*\matriculationyear[1]{\gdef\@matriculationyear{#1}\ignorespaces}
+\newrobustcmd*\matriculationyear[1]{\tud@trim@field\@matriculationyear{#1}}
\newcommand*\@placeofbirth{}
-\newrobustcmd*\placeofbirth[1]{\gdef\@placeofbirth{#1}\ignorespaces}
+\newrobustcmd*\placeofbirth[1]{\tud@trim@field\@placeofbirth{#1}}
\newcommand*\@thesis{}
\newcommand*\@@thesis{}
-\newcommand*\thesis[1]{\tud@thesis@do{thesis}{#1}}
-\renewcommand*\subject[1]{\tud@thesis@do{subject}{#1}}
-\newcommand*\tud@thanks{}
-\newcommand*\tud@thesis@do[2]{%
+\newcommand*\thesis[1]{\tud@thesis@evaluate{thesis}{#1}}
+\CheckCommand*\subject[1]{\gdef\@subject{#1}}
+\newcommand*\@@subject{}
+\renewcommand*\subject[1]{\tud@thesis@evaluate{subject}{#1}}
+\newcommand*\tud@thesis@evaluate[2]{%
\begingroup%
- \global\let\tud@thanks\relax%
- \def\thanks##1{\gdef\tud@thanks{##1}}%
+ \expandafter\tud@trim@field\csname @#1\endcsname{#2}%
+ \let\tud@res@c\@empty%
+ \def\thanks##1{\listgadd\tud@res@c{##1}}%
\let\footnote\thanks%
\sbox\z@{#2}%
\let\thanks\@gobble%
\let\footnote\@gobble%
- \tud@lowerstring{\@tempa}{#2}%
- \ifstr{#1}{thesis}{\protected@xdef\@@thesis{#2}}{}%
- \protected@edef\@tempa{%
- \endgroup%
- \def\noexpand\@tempa{\@tempa}%
- }%
- \@tempa%
- \ifstr{\@tempa}{diss}{\tud@thesis@@do{#1}{\dissertationname}}{%
- \ifstr{\@tempa}{doctoral}{\tud@thesis@@do{#1}{\dissertationname}}{%
- \ifstr{\@tempa}{phd}{\tud@thesis@@do{#1}{\dissertationname}}{%
- \ifstr{\@tempa}{diploma}{\tud@thesis@@do{#1}{\diplomathesisname}}{%
- \ifstr{\@tempa}{master}{\tud@thesis@@do{#1}{\masterthesisname}}{%
- \ifstr{\@tempa}{bachelor}{\tud@thesis@@do{#1}{\bachelorthesisname}}{%
- \ifstr{\@tempa}{student}{\tud@thesis@@do{#1}{\studentthesisname}}{%
- \ifstr{\@tempa}{evidence}{\tud@thesis@@do{#1}{\studentresearchname}}{%
- \ifstr{\@tempa}{project}{\tud@thesis@@do{#1}{\projectpapername}}{%
- \ifstr{\@tempa}{seminar}{\tud@thesis@@do{#1}{\seminarpapername}}{%
- \ifstr{\@tempa}{term}{\tud@thesis@@do{#1}{\termpapername}}{%
- \ifstr{\@tempa}{research}{\tud@thesis@@do{#1}{\researchname}}{%
- \ifstr{\@tempa}{log}{\tud@thesis@@do{#1}{\logname}}{%
- \ifstr{\@tempa}{report}{\tud@thesis@@do{#1}{\reportname}}{%
- \ifstr{\@tempa}{internship}{\tud@thesis@@do{#1}{\internshipname}}{%
- \csdef{@#1}{#2}%
- }}}}}}}}}}}}}}}%
-}
-\newcommand*\tud@thesis@@do[2]{%
- \ifstr{#1}{subject}{%
- \ifx\@thesis\@empty\else%
- \ClassWarning{\TUD@Class@Name}{%
- Field `thesis' is overwritten by `subject'%
- }%
+ \protected@csxdef{@@#1}{\trim@spaces{#2}}%
+ \letcs\tud@res@a{@@#1}%
+ \TUD@set@numkey{thesis}{@tempa}{%
+ {habil}{0},
+ {diss}{1},{doctoral}{1},{phd}{1},
+ {diploma}{2},
+ {master}{3},
+ {bachelor}{4},
+ {student}{5},
+ {evidence}{6},
+ {project}{7},
+ {seminar}{8},
+ {term}{9},
+ {research}{10},
+ {log}{11},
+ {report}{12},
+ {internship}{13}
+ }{\tud@res@a}%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed%
+ \ifcase\@tempa\relax% habil
+ \def\tud@res@a{\habilitationname}%
+ \or% diss
+ \def\tud@res@a{\dissertationname}%
+ \or% diploma
+ \def\tud@res@a{\diplomathesisname}%
+ \or% master
+ \def\tud@res@a{\masterthesisname}%
+ \or% bachelor
+ \def\tud@res@a{\bachelorthesisname}%
+ \or% student
+ \def\tud@res@a{\studentthesisname}%
+ \or% evidence
+ \def\tud@res@a{\studentresearchname}%
+ \or% project
+ \def\tud@res@a{\projectpapername}%
+ \or% seminar
+ \def\tud@res@a{\seminarpapername}%
+ \or% term
+ \def\tud@res@a{\termpapername}%
+ \or% research
+ \def\tud@res@a{\researchname}%
+ \or% log
+ \def\tud@res@a{\logname}%
+ \or% report
+ \def\tud@res@a{\reportname}%
+ \or% internship
+ \def\tud@res@a{\internshipname}%
+ \else%
+ \FamilyKeyStateUnknownValue%
+ \fi%
\fi%
- \TUD@key@preset{subjectthesis}{true}%
- }{%
- \TUD@key@preset{subjectthesis}{false}%
- }%
- \ifx\tud@thanks\relax%
- \gdef\@thesis{#2}%
- \else%
- \protected@xdef\@thesis{\noexpand#2\noexpand\thanks{\tud@thanks}}%
- \fi%
- \protected@xdef\@@thesis{\trim@spaces{#2}}%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed%
+ \global\cslet{@@#1}\tud@res@a%
+ \tud@if@strequal{#1}{subject}{%
+ \ifx\@@thesis\@empty\global\let\@@thesis\@@subject\fi%
+ }{}%
+ \def\do##1{\appto\tud@res@a{\thanks{##1}}}%
+ \dolistloop{\tud@res@c}%
+ \fi%
+ \edef\tud@res@a{%
+ \endgroup%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed%
+ \noexpand\csgdef{@#1}{\expandonce\tud@res@a}%
+ \fi%
+ }%
+ \tud@res@a%
}
\newcommand*\@graduation{}
\newcommand*\@graduationabbreviation{}
\newcommand*\graduation[2][]{%
- \gdef\@graduationabbreviation{}%
- \ifxblank{#1}{}{\gdef\@graduationabbreviation{(#1)}}%
- \gdef\@graduation{#2}%
+ \tud@trim@field\@graduationabbreviation{#1}%
+ \tud@trim@field\@graduation{#2}%
}
\newcommand*\@professor{}
-\newcommand*\professor[1]{\gdef\@professor{#1}}
+\newcommand*\professor[1]{\tud@trim@field\@professor{#1}}
\newcommand*\@supervisor{}
-\newcommand*\supervisor[1]{\gdef\@supervisor{#1}}
+\newcommand*\supervisor[1]{\tud@trim@field\@supervisor{#1}}
\newcommand*\@supporter{}
-\newcommand*\supporter[1]{\gdef\@supporter{#1}}
+\newcommand*\supporter[1]{\tud@trim@field\@supporter{#1}}
\newcommand*\@company{}
-\newcommand*\company[1]{\gdef\@company{#1}}
+\newcommand*\company[1]{\tud@trim@field\@company{#1}}
\newcommand*\@referee{}
-\newcommand*\referee[1]{\gdef\@referee{#1}}
+\newcommand*\referee[1]{\tud@trim@field\@referee{#1}}
\newcommand*\@advisor{}
-\newcommand*\advisor[1]{\gdef\@advisor{#1}}
-\newlength\tud@len@signatureskip
-\setlength\tud@len@signatureskip{8ex plus 6ex minus 6ex}
+\newcommand*\advisor[1]{\tud@trim@field\@advisor{#1}}
+\tud@newglue\tud@glue@signaturevskip
+\tud@setglue\tud@glue@signaturevskip{8ex plus 6ex minus 6ex}
\newcommand*\@confirmationclosing{%
\tud@date@check%
\ifx\@date\@empty\else%
\medskip\noindent%
\ifx\@place\@empty\else\@place,\nobreakspace\fi\@date%
\fi%
- \vskip\tud@len@signatureskip\noindent%
+ \vskip\tud@glue@signaturevskip\noindent%
\begingroup%
\let\and\hfil%
\@@author\hfil%
\endgroup%
}
-\newcommand*\confirmationclosing[1]{\gdef\@confirmationclosing{#1}}
+\newcommand*\confirmationclosing[1]{\tud@trim@field\@confirmationclosing{#1}}
\newcommand*\@place{Dresden}
-\newcommand*\place[1]{\gdef\@place{#1}}
+\newcommand*\place[1]{\tud@trim@field\@place{#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}}
\TUD@UnwindPackage{isodate}{%
\@ifpackageloaded{datetime2}{%
@@ -3443,9 +3587,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{%
@@ -3491,26 +3636,43 @@
}
\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*\@defensedate{}
\newcommand*\defensedate[1]{\tud@printdate{\@defensedate}{#1}}
\newcommand*\@dateofbirth{}
-\newrobustcmd*\dateofbirth[1]{%
- \tud@printdate{\@dateofbirth}{#1}\ignorespaces%
+\newrobustcmd*\dateofbirth[1]{\tud@printdate{\@dateofbirth}{#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{%
@@ -3520,20 +3682,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}%
@@ -3549,6 +3718,7 @@
\tud@cs@restore{@##1}%
\global\csletcs{@##1}{@##1}%
}{}%
+ \ifcsdef{##1}{\tud@cs@restore{##1}}{}%
}%
\letcs\@tempb{tud@split#1@list}%
\let\and\relax%
@@ -3557,16 +3727,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%
@@ -3584,7 +3754,7 @@
matriculationnumber,studentid,matriculationid,%
placeofbirth,birthplace,dateofbirth,birthday,%
}
-%%% 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}{%
@@ -3594,7 +3764,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.%
}%
}%
@@ -3625,6 +3795,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}
@@ -3749,6 +3920,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}
@@ -3854,6 +4026,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}
@@ -3877,8 +4050,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
@@ -3888,73 +4061,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}%
@@ -3977,58 +4150,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%
@@ -4039,50 +4212,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{}
@@ -4098,8 +4269,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%
@@ -4113,11 +4284,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
@@ -4255,7 +4426,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}%
@@ -4269,7 +4440,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%
@@ -4278,11 +4449,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}%
@@ -4290,15 +4461,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%
}%
@@ -4319,16 +4490,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%
@@ -4367,11 +4541,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}%
}%
@@ -4388,25 +4562,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{%
@@ -4417,20 +4591,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%
@@ -4439,7 +4617,7 @@
\fi\fi\fi\fi%
\if@tempswa%
\@tempswafalse%
- \IfArgIsEmpty{##2}{}{\ifnumber{##2}{\@tempswatrue}{}}%
+ \IfArgIsEmpty{##2}{}{\Ifnumber{##2}{\@tempswatrue}{}}%
\fi%
}%
\expandafter\@tempb\@tempa\@nil%
@@ -4455,7 +4633,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}%
}{}%
@@ -4490,7 +4668,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}%
}%
}%
@@ -4505,16 +4683,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%
}%
}%
@@ -4523,24 +4701,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]{%
@@ -4591,7 +4770,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,%
@@ -4609,8 +4788,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,%
@@ -4621,7 +4799,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,%
@@ -4643,8 +4822,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,%
@@ -4658,37 +4836,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%
@@ -4707,45 +4891,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%
@@ -4766,68 +4948,69 @@
\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%
- \setlength\tud@len@areaheadvskip{.22\tud@len@topmargin}%
+ \ifdim\tud@dim@areadiff<\z@\relax\tud@setdim\tud@dim@areadiff{\z@}\fi%
+ \global\tud@dim@areadiff=\tud@dim@areadiff%
+ \tud@setdim\tud@dim@areaheadvskip{\tud@dim@topmargin*11/50}%
\if@tud@cdgeometry@adjust%
- \setlength\tud@len@areaheadvskip{.5\tud@len@areaheadvskip}%
+ \tud@setdim\tud@dim@areaheadvskip{\tud@dim@areaheadvskip/2}%
\fi%
- \global\tud@len@areaheadvskip=\tud@len@areaheadvskip%
+ \global\tud@dim@areaheadvskip=\tud@dim@areaheadvskip%
\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%
}%
@@ -4862,11 +5045,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%
@@ -4893,12 +5076,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%
@@ -4924,14 +5107,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}%
@@ -4942,90 +5125,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%
@@ -5033,17 +5210,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}%
}%
@@ -5057,8 +5234,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{}%
@@ -5073,41 +5250,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%
@@ -5116,10 +5304,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}%
@@ -5129,24 +5317,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%
@@ -5155,8 +5343,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%
@@ -5165,9 +5353,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%
@@ -5176,10 +5363,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%
@@ -5188,11 +5375,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%
@@ -5201,16 +5387,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%
@@ -5225,7 +5411,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}%
@@ -5235,7 +5423,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%
@@ -5247,7 +5435,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%
@@ -5255,7 +5445,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
@@ -5268,13 +5458,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}%
@@ -5282,16 +5468,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}%
@@ -5303,7 +5486,7 @@
background,%
]{tudheadings.last}%
\DeclareNewPageStyleByLayers[%
- onselect=\tud@ps@onselect,onbackground=\tud@ps@onbackground%
+ onbackground=\tud@ps@onbackground%
]{tudheadings}{%
tudheadings.head.back,%
tudheadings.head.content,%
@@ -5327,7 +5510,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,%
@@ -5353,7 +5536,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,%
@@ -5375,12 +5558,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}%
@@ -5389,6 +5570,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}
@@ -5397,13 +5594,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}}
@@ -5419,26 +5618,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}
@@ -5478,7 +5672,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}%
@@ -5503,8 +5697,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{}
@@ -5512,13 +5708,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%
@@ -5529,7 +5725,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%
@@ -5541,7 +5737,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{%
@@ -5555,7 +5751,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%
@@ -5567,16 +5763,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}%
@@ -5584,16 +5780,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%
@@ -5601,33 +5799,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}{%
@@ -5642,14 +5881,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}%
}
@@ -5659,26 +5902,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}}%
@@ -5689,18 +5923,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}%
}%
@@ -5719,11 +5954,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%
@@ -5737,57 +5982,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%
@@ -5799,12 +6046,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%
}%
}%
@@ -5822,14 +6069,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}%
@@ -5859,11 +6107,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.%
@@ -5877,26 +6128,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%
}%
@@ -5908,22 +6160,22 @@
}
\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@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%
@@ -5933,44 +6185,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%
}%
@@ -5978,39 +6215,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}%
@@ -6039,11 +6262,11 @@
\newcommand*\tud@envir@ps{tudheadings}
\newcommand*\tud@envir@selectps{%
\expandafter\pagestyle\expandafter{\tud@envir@ps}%
- \ifstr{\GetRealPageStyle{\tud@envir@ps}}{empty}{%
+ \tud@if@strequal{\GetRealPageStyle{\tud@envir@ps}}{empty}{%
\renewcommand*\titlepagestyle{empty}%
\renewcommand*\indexpagestyle{empty}%
}{}%
- \ifstr{\GetRealPageStyle{\tud@envir@ps}}{empty.tudheadings}{%
+ \tud@if@strequal{\GetRealPageStyle{\tud@envir@ps}}{empty.tudheadings}{%
\renewcommand*\titlepagestyle{empty.tudheadings}%
\renewcommand*\indexpagestyle{empty.tudheadings}%
}{}%
@@ -6082,11 +6305,12 @@
\TUD@parameter@def{language}{\selectlanguage{#1}}%
\TUD@parameter@def{columns}{\renewcommand*\tud@x@multicol@num{#1}}%
\TUD@parameter@def{pagestyle}{%
- \tud@if@tudheadings{#1}{\renewcommand*\tud@envir@ps{#1}}{%
- \ifstr{#1}{empty}{\renewcommand*\tud@envir@ps{empty.tudheadings}}{%
- \ifstr{#1}{plain}{\renewcommand*\tud@envir@ps{plain.tudheadings}}{%
- \ifstr{#1}{headings}{\renewcommand*\tud@envir@ps{tudheadings}}{%
- \TUD@parameter@error{pagestyle}{%
+ \tud@if@tudheadings{#1}{\def\tud@envir@ps{#1}}{%
+ \def\tud@envir@ps{tudheadings}%
+ \tud@if@strequal{#1}{empty}{\def\tud@envir@ps{empty.tudheadings}}{%
+ \tud@if@strequal{#1}{plain}{\def\tud@envir@ps{plain.tudheadings}}{%
+ \tud@if@strequal{#1}{headings}{}{%
+ \TUD@parameter@err{pagestyle}{%
headings, plain, empty or any tudheadings page style type%
}%
}}}%
@@ -6102,38 +6326,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[%
@@ -6151,15 +6387,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
@@ -6171,46 +6417,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{}
@@ -6233,16 +6465,17 @@
\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}%
}%
\tud@komafont@set{author}{\usekomafont{subject}}%
@@ -6250,28 +6483,31 @@
\tud@komafont@set{date}{\usekomafont{titlepage}}%
\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}%
@@ -6315,12 +6551,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%
@@ -6336,42 +6572,51 @@
\tud@cs@store{footnoterule}%
\let\footnoterule\relax%
}
-\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}%
@@ -6382,28 +6627,33 @@
\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{thesis}{%
\usekomafont{title}%
- \tud@thesis@fontsize%
+ \tud@subtitle@fontsizecmd%
}
\newkomafont{titlepage}{%
\raggedtitle%
@@ -6417,6 +6667,8 @@
\newcommand*\tud@title@pagenumber{}
\let\tud@title@pagenumber\relax
\newcommand*\tud@maketitle[1][]{%
+ \TUD@deprecated@length\pageheadingsvskip%
+ \TUD@deprecated@length\headingsvskip%
\begingroup%
\cleardoublepage%
\TUD@parameter@set{title}{#1}%
@@ -6430,7 +6682,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%
@@ -6464,7 +6718,9 @@
}
\tud@cs@store{maketitle}
\let\maketitle\tud@maketitle
-\patchcmd{\titlepage}{\thispagestyle{empty}}{%
+\patchcmd\titlepage{%
+ \thispagestyle{empty}%
+}{%
\tud@if@tudheadings{\currentpagestyle}{%
\thispagestyle{empty.tudheadings}%
}{%
@@ -6534,19 +6790,18 @@
\fi%
\next@tdpage%
\fi%
- \tud@cd@headstartvskip%
- \TUD@deprecated@lengthcs{pageheadingsvskip}%
- \vspace*{\tud@dim@pageheadingsvskip}%
+ \vspace*{-\baselineskip}%
+ \tud@cd@headstart@vskip%
+ \vspace*{\dimexpr\tud@pageheadingsvskip@dim\relax}%
\tud@cd@vphantom%
\setparsizes{\z@}{\z@}{\z@\@plus1fil}\par@updaterelative%
{\usekomafont{titlepage}{%
\tud@maketitle@head%
{\usekomafont{title}{\tud@title@format{\@title}\par}}%
\ifx\@subtitle\@empty\else%
- {\usekomafont{partnumber}{\nobreak\tud@sec@strut}}%
- {\usekomafont{subtitle}{\tud@title@format{\@subtitle}\par}}%
+ {\usekomafont{subtitle}{\tud@title@format[partnumber]{\@subtitle}\par}}%
\fi%
- \vskip 2\bigskipamount%
+ \vskip\glueexpr\bigskipamount*2\relax%
\let\tud@split@author@do\tud@split@author@title%
\tud@multiple@split{@author}\par%
\vskip 2ex\@plus1ex\@minus1ex%
@@ -6569,7 +6824,7 @@
\def\@tempc{%
\@graduation%
\ifx\@graduationabbreviation\@empty\else%
- \nobreakspace\@graduationabbreviation%
+ \nobreakspace(\@graduationabbreviation)%
\fi%
}%
{\usekomafont{titlepage}{\graduationtext\par}}%
@@ -6589,10 +6844,10 @@
\tud@date@check%
\ifx\@date\@empty\else%
\vskip 2ex\@plus1ex\@minus1ex%
- \ifxblank{\datetext}{}{\datetext\tud@title@delimiter}%
+ \tud@if@strblank{\datetext}{}{\datetext\tud@title@delimiter}%
{\usekomafont{date}{\tud@date@print\par}}%
\ifx\@defensedate\@empty\else%
- \ifxblank{\defensedatetext}{}{%
+ \tud@if@strblank{\defensedatetext}{}{%
\defensedatetext\tud@title@delimiter%
}%
{\usekomafont{date}{\@defensedate\par}}%
@@ -6601,7 +6856,7 @@
\fi%
\if@tud@titlesignature%
\let\tud@split@@author@do\tud@split@author@signature%
- \vskip\tud@len@signatureskip\noindent%
+ \vskip\tud@glue@signaturevskip\noindent%
\tud@ifin@and{\@@author}{}{\hfill}%
\tud@multiple@split{@@author}%
\fi%
@@ -6680,7 +6935,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%
@@ -6704,7 +6961,7 @@
\ifx\@extratitle\@empty%
\ifx\@frontispiece\@empty\else%
\if@twoside\null\fi%
- \fi
+ \fi%
\else%
\tud@res@a{\@makeextratitle}%
\fi%
@@ -6720,9 +6977,9 @@
}
\newcommand*\tud@maketitle@@inpage{%
\global\@topnum=\z@%
- \tud@cd@headstartvskip%
- \TUD@deprecated@lengthcs{headingsvskip}%
- \vspace*{\tud@dim@headingsvskip}%
+ \vspace*{-\baselineskip}%
+ \tud@cd@headstart@vskip%
+ \vspace*{\dimexpr\tud@headingsvskip@dim\relax}%
\tud@cd@vphantom%
\setparsizes{\z@}{\z@}{\z@\@plus1fil}\par@updaterelative%
{\usekomafont{titlepage}{%
@@ -6731,11 +6988,10 @@
\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%
- \vskip 2\bigskipamount%
+ \vskip\bigskipamount%
\let\tud@split@author@do\tud@split@author@title%
\tud@multiple@split{@author}\par%
\ifx\@date\@empty\else%
@@ -6755,11 +7011,9 @@
\ifx\@advisor\@empty\else\tud@title@wrn{advisor}\fi%
\ifx\@supervisor\@empty\else\tud@title@wrn{supervisor}\fi%
\ifx\@professor\@empty\else\tud@title@wrn{professor}\fi%
- \vskip 2\bigskipamount%
+ \vskip\bigskipamount%
\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]}{}%
}}%
@@ -6767,43 +7021,27 @@
\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%
\tud@thesis@tosubject%
\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%
- \vskip\dimexpr-\@tempdima-\p@-\medskipamount\relax%
+ \vskip\dimexpr-\@tempdima-\p@-1\medskipamount\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*\tud@thesis@tosubject{%
\if@tud@subjectthesis\ifx\@thesis\@empty\else%
@@ -6854,7 +7092,9 @@
\ifx\@dateofbirth\@empty\else%
\if@titlepage%
\tud@newline@title%
- \ifxblank{\dateofbirthtext}{}{\dateofbirthtext\tud@title@delimiter}%
+ \tud@if@strblank{\dateofbirthtext}%
+ {}%
+ {\dateofbirthtext\tud@title@delimiter}%
\@dateofbirth%
\ifx\@placeofbirth\@empty\else%
\nobreakspace\placeofbirthtext\nobreakspace\@placeofbirth%
@@ -6864,15 +7104,17 @@
\fi%
\fi%
\def\@tempc##1{%
- \ifstr{\csuse{@##1}}{}{}{%
+ \expandafter\ifx\csname @##1\endcsname\@empty\else%
\if@titlepage%
\tud@newline@title%
- \ifstr{\csuse{##1name}}{}{}{\csuse{##1name}\tud@title@delimiter}%
+ \tud@if@strblank{\csuse{##1name}}%
+ {}%
+ {\csuse{##1name}\tud@title@delimiter}%
\csuse{@##1}%
\else%
\tud@title@wrn{##1}%
\fi%
- }%
+ \fi%
}%
\@tempc{course}%
\@tempc{discipline}%
@@ -6891,9 +7133,9 @@
\newcommand*\tud@split@author@signature[2]{%
\tud@multiple@fields@store{@author}{#1}%
\vbox{%
- \hsize=.3\textwidth%
+ \hsize=\dimexpr\textwidth*3/10\relax%
\centering%
- \rule{.3\textwidth}{.05pt}\newline%
+ \rule{\dimexpr\textwidth*3/10\relax}{.05pt}\newline%
\ignorespaces#1\strut\unskip%
}%
\tud@multiple@fields@restore{@author}%
@@ -6902,15 +7144,16 @@
\newcommand\maketitleonecolumn[2][]{%
\if@twocolumn%
\if@titlepage%
- \tud@maketitle[#1]%
- \onecolumn{#2}\twocolumn%
+ \tud@maketitle[{#1}]%
+ \onecolumn#2\twocolumn%
\else%
- \tud@title@twocolumn{\tud@maketitle[#1]{#2}}%
+ \tud@title@twocolumn{\tud@maketitle[{#1}]#2}%
\fi%
\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
@@ -6920,14 +7163,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%
}{}%
@@ -6937,7 +7180,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%
@@ -6950,13 +7193,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%
}{}%
}
-\newif\if@tud@coverpage
+\tud@newif\if@tud@coverpage
\newcommand*\makecover[1][]{%
\if@titlepageiscoverpage%
\ClassWarning{\TUD@Class@Name}{%
@@ -6993,23 +7236,22 @@
\if@tud@cdgeometry@cover%
\if@tud@coverpage%
\def\coverpagetopmargin{%
- \dimexpr\tud@len@topmargin+\tud@len@barheight%
- +\tud@len@headsep\relax%
+ \tud@dim@topmargin+\tud@dim@barheight+\tud@dim@headsep%
}%
\else%
\tud@if@v@lower{2.03}{%
- \def\coverpagetopmargin{.5\tud@len@both}%
+ \def\coverpagetopmargin{\tud@dim@bothmargin/2}%
}{%
- \def\coverpagetopmargin{\tud@len@slimmargin}%
+ \def\coverpagetopmargin{\tud@dim@slimmargin}%
}%
\fi%
\tud@if@v@lower{2.03}{%
- \def\coverpagebottommargin{.5\tud@len@both}%
+ \def\coverpagebottommargin{\tud@dim@bothmargin/2}%
}{%
- \def\coverpagebottommargin{\tud@len@widemargin}%
+ \def\coverpagebottommargin{\tud@dim@widemargin}%
}%
- \def\coverpageleftmargin{\tud@len@widemargin}%
- \def\coverpagerightmargin{\tud@len@slimmargin}%
+ \def\coverpageleftmargin{\tud@dim@widemargin}%
+ \def\coverpagerightmargin{\tud@dim@slimmargin}%
\fi%
\if@tud@coverpage%
\edef\titlepage@restore{%
@@ -7022,7 +7264,7 @@
}%
\begingroup%
\tud@cover@setmargins%
- \tud@len@areavskip=\z@%
+ \tud@setdim\tud@dim@areavskip{\z@}%
\tud@maketitle%
\clearpage%
\titlepage@restore%
@@ -7053,41 +7295,37 @@
\TUD@parameter@ps@def{#1}%
\TUD@parameter@handler@value{pagenumber}%
}
-\renewcommand*{\coverpagetopmargin}{%
+\renewcommand*\coverpagetopmargin{%
\if@tud@coverpage%
- \dimexpr\tud@len@topmargin+\tud@len@barheight+\tud@len@headsep\relax%
+ \tud@dim@topmargin+\tud@dim@barheight+\tud@dim@headsep%
\else%
- \dimexpr\topmargin+1in\relax%
+ \topmargin+1in%
\fi%
}
-\renewcommand*{\coverpagebottommargin}{%
+\renewcommand*\coverpagebottommargin{%
\if@tud@coverpage%
- \dimexpr\tud@len@widemargin\relax%
+ \tud@dim@widemargin%
\else%
- 2\dimexpr\coverpagetopmargin\relax%
+ \coverpagetopmargin*2%
\fi%
}
\newcommand*\tud@cover@fixmargins{%
\begingroup%
\tud@cdgeometry@assignlayout%
\tud@x@geometry@fixmargins%
- \setlength\@tempdima{%
- \dimexpr\coverpagebottommargin-\tud@len@layoutvoffset
- +\paperheight-\tud@len@layoutheight\relax%
+ \tud@setdim\@tempdima{%
+ \coverpagebottommargin-\tud@dim@layoutvoffset%
+ +\paperheight-\tud@dim@layoutheight%
}%
\edef\coverpagebottommargin{\the\@tempdima}%
- \setlength\@tempdima{%
- \dimexpr\coverpagetopmargin+\tud@len@layoutvoffset\relax%
- }%
+ \tud@setdim\@tempdima{\coverpagetopmargin+\tud@dim@layoutvoffset}%
\edef\coverpagetopmargin{\the\@tempdima}%
- \setlength\@tempdima{%
- \dimexpr\coverpagerightmargin-\tud@len@layouthoffset
- +\paperwidth-\tud@len@layoutwidth\relax%
+ \tud@setdim\@tempdima{%
+ \coverpagerightmargin-\tud@dim@layouthoffset%
+ +\paperwidth-\tud@dim@layoutwidth%
}%
\edef\coverpagerightmargin{\the\@tempdima}%
- \setlength\@tempdima{%
- \dimexpr\coverpageleftmargin+\tud@len@layouthoffset\relax%
- }%
+ \tud@setdim\@tempdima{\coverpageleftmargin+\tud@dim@layouthoffset}%
\edef\coverpageleftmargin{\the\@tempdima}%
\edef\tud@res@a{%
\endgroup%
@@ -7109,7 +7347,7 @@
-\coverpagebottommargin\relax%
\headheight=0pt%
\headsep=0pt%
- \footskip=\baselineskip%
+ \footskip=1\baselineskip%
\@colht=\textheight%
\@colroom=\textheight%
\vsize=\textheight%
@@ -7117,10 +7355,10 @@
\hsize=\columnwidth%
\linewidth=\hsize%
}
-%%% 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%
- \ifnumless{\csuse{tud@#1@level@num}}{3}{% false/true/section
+ \ifnum\csuse{tud@#1@level@num}<3\relax% false/true/section
\ifboolexpr{%
bool {@titlepage} and bool {@tud@#1@fil} and bool {@tud@#1@multi}%
}{%
@@ -7139,8 +7377,8 @@
\boolfalse{@tud@#1@fil}%
\fi%
}{}%
- }{% chapter
- }%
+ \else% chapter
+ \fi%
\ifnum\csuse{tud@#1@toc@num}>\tw@\relax%
\tud@fm@toc{#1}{#2}%
\fi%
@@ -7148,26 +7386,27 @@
#2%
}
\newcommand*\tud@fm@@toc{}
-\newcommand*\tud@fm@@@toc{}
\newcommand*\tud@fm@toc[2]{%
\ifbool{@tud@#1@multi}{%
\begingroup%
- \let\tud@fm@@@toc\@empty%
+ \let\tud@fm@@toc\@empty%
\renewcommand*\tud@fm@head[2]{%
- \protected@edef\@tempa{##2}%
- \protected@xdef\tud@fm@@toc{\tud@fm@@@toc\@tempa}%
- \protected@xdef\tud@fm@@@toc{\tud@fm@@toc/}%
+ \protected@xdef\tud@fm@@toc{%
+ \ifx\tud@fm@@toc\@empty\else\tud@fm@@toc/\fi##2%
+ }%
}%
\let\clearpage\relax%
\sbox\z@{\vbox{#2}}%
\csuse{phantomsection}%
\protected@edef\@tempa{%
- \noexpand\endgroup%
- \noexpand\ifnumodd{\csname tud@#1@toc@num\endcsname}{%
- \noexpand\addsectiontocentry{}{\tud@fm@@toc}%
- }{%
- \noexpand\addsubsectiontocentry{}{\tud@fm@@toc}%
- }%
+ \endgroup%
+ \ifx\tud@fm@@toc\@empty\else%
+ \ifodd\csuse{tud@#1@toc@num}\relax
+ \noexpand\addsectiontocentry{}{\tud@fm@@toc}%
+ \else
+ \noexpand\addsubsectiontocentry{}{\tud@fm@@toc}%
+ \fi
+ \fi%
}%
\@tempa%
}{%
@@ -7243,19 +7482,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%
@@ -7264,7 +7504,7 @@
\endgraf%
\endgroup%
\nopagebreak%
- \vskip\dimexpr\medskipamount-\parskip\relax%
+ \vskip\medskipamount\vskip-\parskip%
\@afterheading%
\or% section
\section*{#2}%
@@ -7330,7 +7570,7 @@
\clearpage%
\else%
\ifnum\tud@abstract@level@num=\tw@\relax%
- \vskip\dimexpr\bigskipamount-\parskip\relax%
+ \vskip\bigskipamount\vskip-\parskip%
\fi%
\fi%
]
@@ -7339,7 +7579,7 @@
\TUD@parameter@def{columns}{\renewcommand*\tud@x@multicol@num{#1}}%
\TUD@parameter@def{pagestyle}{\tud@fm@pagestyle{abstract}{#1}}%
\TUD@parameter@def{markboth}[true]{%
- \ifstrbool{#1}{%
+ \tud@if@strbool{#1}{%
\@tud@abstract@markbothtrue%
\ifx\tud@envir@ps\relax\def\tud@envir@ps{headings}\fi%
}{%
@@ -7360,7 +7600,7 @@
the environment `abstract'.%
}%
}
-\newif\if@tud@declarations
+\tud@newif\if@tud@declarations
\NewEnviron{declarations}[1][]{%
\@tud@declarationstrue%
\let\tud@envir@ps\relax%
@@ -7388,7 +7628,7 @@
\clearpage%
\else%
\ifnum\tud@declaration@level@num=\tw@\relax%
- \vskip\dimexpr\bigskipamount-\parskip\relax%
+ \vskip\bigskipamount\vskip-\parskip%
\fi%
\fi%
]
@@ -7397,7 +7637,7 @@
\TUD@parameter@def{columns}{\renewcommand*\tud@x@multicol@num{#1}}%
\TUD@parameter@def{pagestyle}{\tud@fm@pagestyle{declaration}{#1}}%
\TUD@parameter@def{markboth}[true]{%
- \ifstrbool{#1}{%
+ \tud@if@strbool{#1}{%
\@tud@declaration@markbothtrue%
\ifx\tud@envir@ps\relax\def\tud@envir@ps{headings}\fi%
}{%
@@ -7428,29 +7668,29 @@
}%
}
\newcommand*\tud@fm@declaration[1][]{%
- \ifbool{@tud@declarations}{%
+ \if@tud@declarations%
\begingroup%
- \tud@fm@@confirmation[\tud@fm@supporter,#1]%
- \tud@fm@blocking[#1]%
+ \tud@fm@@confirmation[{\tud@fm@supporter,#1}]%
+ \tud@fm@blocking[{#1}]%
\endgroup%
- }{%
- \begin{declarations}[\tud@fm@supporter,#1]%
+ \else%
+ \begin{declarations}[{\tud@fm@supporter,#1}]%
\tud@fm@@confirmation%
\tud@fm@blocking%
\end{declarations}%
- }%
+ \fi%
}
\newcommand*\nextdeclaration[3][]{%
- \ifbool{@tud@declarations}{%
+ \if@tud@declarations%
\tud@fm@body@start{declaration}{#1}{#2}%
#3%
\tud@fm@body@end{declaration}%
- }{%
+ \else%
\ClassError{\TUD@Class@Name}{Incorrect usage of `\string\nextdeclaration'}{%
The command `\string\nextdeclaration' can only be used\MessageBreak%
within the environment `declarations'.%
}%
- }%
+ \fi%
}
\newcommand*\confirmation{%
\kernel@ifstar{%
@@ -7465,18 +7705,18 @@
\begingroup%
\TUD@parameter@handler@default[declaration]{supporter}%
\undef\KV@declaration@company%
- \ifbool{@tud@declarations}{%
- \tud@fm@@confirmation[\tud@fm@supporter,#1]%
- }{%
- \begin{declarations}[\tud@fm@supporter,#1]%
+ \if@tud@declarations%
+ \tud@fm@@confirmation[{\tud@fm@supporter,#1}]%
+ \else%
+ \begin{declarations}[{\tud@fm@supporter,#1}]%
\tud@fm@@confirmation%
\end{declarations}%
- }%
+ \fi%
\endgroup%
}
\newcommand*\tud@fm@@confirmation[1][]{%
\tud@fm@body@start{declaration}{#1}{\confirmationname}%
- \confirmationtext\vskip\z@\@confirmationclosing%
+ \confirmationtext\vskip\z@skip\@confirmationclosing%
\tud@fm@body@end{declaration}%
}
\newcommand*\blocking[1][]{%
@@ -7485,13 +7725,13 @@
\undef\KV@declaration@supporter%
\undef\KV@declaration@closing%
\undef\KV@declaration@confirmationclosing%
- \ifbool{@tud@declarations}{%
- \tud@fm@blocking[#1]%
- }{%
- \begin{declarations}[#1]%
+ \if@tud@declarations%
+ \tud@fm@blocking[{#1}]%
+ \else%
+ \begin{declarations}[{#1}]%
\tud@fm@blocking%
\end{declarations}%
- }%
+ \fi%
\endgroup%
}
\newcommand*\tud@fm@blocking[1][]{%
@@ -7499,74 +7739,15 @@
\blockingtext%
\tud@fm@body@end{declaration}%
}
-%%% From File: tudscr-comp.dtx
-\newlength\footlogoheight
-\setlength\footlogoheight{\maxdimen}
-\newlength\pageheadingsvskip
-\setlength\pageheadingsvskip{\maxdimen}
-\newlength\headingsvskip
-\setlength\headingsvskip{\maxdimen}
-\TUD@deprecated@cs{professorship}{chair}
-\TUD@deprecated@cs{studentid}{matriculationnumber}
-\TUD@deprecated@cs{matriculationid}{matriculationnumber}
-\TUD@deprecated@cs{enrolmentyear}{matriculationyear}
-\TUD@deprecated@cs{birthplace}{placeofbirth}
-\TUD@deprecated@cs{submissiondate}{date}
-\TUD@deprecated@cs{oralexaminationdate}{defensedate}
-\TUD@deprecated@cs{birthday}{dateofbirth}
-\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{%
@@ -7575,7 +7756,6 @@
\let\@footnotemark\H@@footnotemark%
\let\@footnotetext\H@@footnotetext%
}%
- \pdfstringdefDisableCommands{\let\NoCaseChange\@firstofone}%
}
\newcommand*\tud@x@bookmark@startatroot{\relax}
\AfterPackage{bookmark}{%
@@ -7583,7 +7763,7 @@
\if@tud@bookmarks\bookmarksetup{startatroot}\fi%
}%
}
-\apptocmd{\titlepage}{%
+\apptocmd\titlepage{%
\tud@x@bookmark@startatroot%
\@tud@res@swafalse%
\if@tud@coverpage\@tud@res@swatrue\fi%
@@ -7598,13 +7778,13 @@
]{\titlepagename}{title}%
\fi%
}{}{\tud@patch@wrn{titlepage}}
-\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%
@@ -7631,10 +7811,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%
@@ -7645,22 +7825,22 @@
\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
+\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%
@@ -7680,22 +7860,65 @@
\global\@tud@cdgeometry@processfalse%
\fi%
}
+%%%% From File: tudscr-comp.dtx (no git version info was found)
+\tud@newglue\footlogoheight
+\tud@setdim\footlogoheight{\maxdimen}
+\tud@newglue\pageheadingsvskip
+\tud@setdim\pageheadingsvskip{\maxdimen}
+\tud@newglue\headingsvskip
+\tud@setdim\headingsvskip{\maxdimen}
+\TUD@deprecated@cs{professorship}{chair}
+\TUD@deprecated@cs{studentid}{matriculationnumber}
+\TUD@deprecated@cs{matriculationid}{matriculationnumber}
+\TUD@deprecated@cs{enrolmentyear}{matriculationyear}
+\TUD@deprecated@cs{birthplace}{placeofbirth}
+\TUD@deprecated@cs{submissiondate}{date}
+\TUD@deprecated@cs{oralexaminationdate}{defensedate}
+\TUD@deprecated@cs{birthday}{dateofbirth}
+\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 `tudscrartcl.cls'.
diff --git a/Master/texmf-dist/tex/latex/tudscr/tudscrbase.sty b/Master/texmf-dist/tex/latex/tudscr/tudscrbase.sty
index c7024addb8e..34ca264af1b 100644
--- a/Master/texmf-dist/tex/latex/tudscr/tudscrbase.sty
+++ b/Master/texmf-dist/tex/latex/tudscr/tudscrbase.sty
@@ -4,14 +4,15 @@
%%
%% The original source files were:
%%
-%% tudscr-version.dtx (with options: `package,base')
+%% tudscr-version.dtx (with options: `package,base,identify')
%% tudscr-base.dtx (with options: `package,base')
%%
%% 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.
%% ----------------------------------------------------------------------------
@@ -27,101 +28,257 @@
%%
%% 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}
\@ifundefined{TUDScript}{%
\DeclareRobustCommand\TUDScript{%
- \textsf{%
- T\kern.05em U\kern.05em D\kern.1em-\kern.1em Script%
- }%
- \ifcsname xspace\endcsname%
- \xspace%
- \fi%
+ \mbox{%
+ \textsf{%
+ T\kern.05em U\kern.05em D\kern.1em-\kern.1em Script%
+ }%
+ }\ifcsname xspace\endcsname\xspace\fi%
}%
}{}
-%%% From File: tudscr-base.dtx
+\providecommand*\TUDScriptContact{hanisch.latex@outlook.com}
+\providecommand*\TUDScriptRepository{https://github.com/tud-cd/tudscr}
+\providecommand*\TUDScriptForum{https://latex.wcms-file3.tu-dresden.de/phpBB3/}
+%%%% From File: tudscr-base.dtx (no git version info was found)
\ProvidesPackage{tudscrbase}[%
- 2021/07/15 v2.06n TUD-Script
- package
- (basics for the bundle)%
+ 2022/08/09 v2.06o TUD-Script
+ package (basics for the bundle)%
+]
+\AtBeginDocument{%
+ \ifcsundef{scr@v@first}{}{%
+ \ifcsundef{scr@v@\TUD@KOMAVersionNumber}{%
+ \PackageError{tudscrbase}{%
+ KOMA-Script v\TUD@KOMAVersionNumber\space is required%
+ }{%
+ \TUD@Version\space must be used at least with\MessageBreak%
+ \TUD@KOMAVersion, but only\MessageBreak%
+ \KOMAScriptVersion\space was found.%
+ }%
+ }{%
+ \expandafter\ifnum\scr@v@is@lt{3.12}\relax%
+ \PackageError{tudscrbase}{%
+ KOMA-Script compatibility level too low%
+ }{%
+ \TUD@Version\space must be used at least with\MessageBreak%
+ `version=3.12' KOMA-Script compatibility option.%
+ }%
+ \fi%
+ }%
+ }%
+}
+\RequirePackage{scrbase}[%
+ 2022/05/01 v3.36 KOMA-Script
]
-\providecommand*{\ifstr}{\Ifstr}
-\providecommand*{\ifstrstart}{\Ifstrstart}
-\providecommand*{\ifisskip}{\Ifisskip}
-\providecommand*{\ifdimen}{\Ifdimen}
-\providecommand*{\ifisdimen}{\Ifisdimen}
-\providecommand*{\ifisdimension}{\Ifisdimension}
-\providecommand*{\ifnumber}{\Ifnumber}
-\RequirePackage{scrbase}[2020/09/21]
-\RequirePackage{iftex}[2019/11/07]
-\RequirePackage{etoolbox}[2011/01/03]
-\RequirePackage{xpatch}[2012/10/02]
-\RequirePackage{letltxmacro}[2016/05/16]
-\RequirePackage{etexcmds}[2011/02/16]
-\RequirePackage{kvsetkeys}[2012/04/25]
-\RequirePackage{trimspaces}[2009/09/17]
+\RequirePackage{iftex}
+\RequirePackage{etoolbox}
+\RequirePackage{xpatch}
+\RequirePackage{letltxmacro}
+\RequirePackage{kvsetkeys}
+\RequirePackage{trimspaces}
+\AfterPackage*{hyperref}{%
+ \pdfstringdefDisableCommands{%
+ \def\TUDScript{TUD-Script}%
+ \def\KOMAScript{KOMA-Script}%
+ }%
+}
+\newcommand*\tud@newif[1]{\@ifdefinable#1{\newif#1}}
+\newcommand*\tud@newcount[1]{\@ifdefinable#1{\newcount#1}}
+\newcommand*\tud@newtoks[1]{\@ifdefinable#1{\newtoks#1}}
+\newcommand*\tud@newread[1]{\@ifdefinable#1{\newread#1}}
+\newcommand*\tud@newwrite[1]{\@ifdefinable#1{\newwrite#1}}
+\newcommand*\tud@newglue[1]{\@ifdefinable#1{\newskip#1}}
+\newcommand*\tud@newdim[1]{\@ifdefinable#1{\newdimen#1}}
+\newrobustcmd*\tud@setglue[2]{%
+ \ifdefdimen{#1}{%
+ \PackageWarning{tudscrbase}{%
+ You tried to assign dimen \string#1\MessageBreak%
+ so \string\tud@setdim\space is used%
+ }%
+ \tud@setdim{#1}{#2}%
+ }{%
+ \setlength#1{\glueexpr#2\relax}%
+ }%
+}
+\newrobustcmd*\tud@setdim[2]{%
+ \begingroup%
+ \@tud@res@swafalse%
+ \setlength\@tempskipa{\glueexpr#2\relax}%
+ \ifdim\gluestretch\@tempskipa=\z@\relax\else%
+ \@tud@res@swatrue%
+ \fi%
+ \ifdim\glueshrink\glueexpr\@tempskipa\relax=\z@\relax\else%
+ \@tud@res@swatrue%
+ \fi%
+ \if@tud@res@swa%
+ \PackageWarning{tudscrbase}{%
+ You tried to use \string\tud@setdim\string#1\MessageBreak%
+ with glue \detokenize{#2} (\the\@tempskipa)\MessageBreak%
+ but only the base value is used%
+ }%
+ \fi%
+ \endgroup%
+ \setlength#1{\dimexpr\glueexpr#2\relax\relax}%
+}
+\newrobustcmd*\tud@addtoglue[2]{%
+ \tud@setglue#1{\glueexpr#1+#2\relax}%
+}
+\newrobustcmd*\tud@addtodim[2]{%
+ \tud@setdim#1{\glueexpr#1+#2\relax}%
+}
+\tud@newglue\tud@res@glue
+\newcommand*\tud@if@lengthregister[1]{%
+ \begingroup%
+ \@tud@res@swafalse%
+ \ifdeflength{#1}{\@tud@res@swatrue}{}%
+ \ifdefdimen{#1}{\@tud@res@swatrue}{}%
+ \if@tud@res@swa%
+ \aftergroup\@firstoftwo%
+ \else%
+ \aftergroup\@secondoftwo%
+ \fi%
+ \endgroup%
+}
+\newcommand*\tud@length@setabsolute[1]{%
+ \tud@if@lengthregister{#1}{%
+ \ifdim#1<\z@%
+ \setlength#1{-\glueexpr#1\relax}%
+ \fi%
+ }{%
+ \protected@edef#1{%
+ \noexpand\ifdim\noexpand\glueexpr\expandonce#1\relax<\z@-\noexpand\fi%
+ \noexpand\glueexpr\expandonce#1\relax%
+ }%
+ }%
+}
\newcommand*\tud@reserved{}
\newcommand*\tud@res@a{}
\newcommand*\tud@res@b{}
\newcommand*\tud@res@c{}
-\newif\if@tud@res@swa
-\newcount\tud@res@cnt
-\newread\tud@res@read
-\newtoks\tud@toks@
-\newcommand*\eaddto@hook[2]{%
+\newcommand*\tud@res@d{}
+\tud@newif\if@tud@res@swa
+\tud@newcount\tud@res@cnt
+\tud@newtoks\tud@toks@
+\newcommand*\addto@hook@expandafter[2]{%
\expandafter\addto@hook\expandafter#1\expandafter{#2}%
}
-\newcommand*\ifxblank{\ifstr{}}
-\newcommand*\ifstrbool[4]{%
- \ifstr{#1}{true}{#2}{%
- \ifstr{#1}{on}{#2}{%
- \ifstr{#1}{yes}{#2}{%
- \ifstr{#1}{false}{#3}{%
- \ifstr{#1}{no}{#3}{%
- \ifstr{#1}{off}{#3}{%
- #4%
- }%
- }%
- }%
+\newcommand*\tud@if@preamble{}
+\let\tud@if@preamble\@firstoftwo
+\AfterEndPreamble{\let\tud@if@preamble\@secondoftwo}
+\newcommand*\tud@if@strequal[2]{%
+ \begingroup%
+ \protected@edef\tud@res@a{%
+ \endgroup%
+ \noexpand\ifstrequal{#1}{#2}%
+ }%
+ \tud@res@a%
+}
+\newcommand*\tud@if@strstart[2]{%
+ \begingroup%
+ \protected@edef\tud@res@a{%
+ \endgroup%
+ \noexpand\Ifstrstart{\noexpand\detokenize{#1}}{\noexpand\detokenize{#2}}%
+ }%
+ \tud@res@a%
+}
+\newcommand*\tud@if@strempty{\tud@if@strequal{}}
+\newcommand*\tud@if@strblank[1]{%
+ \begingroup%
+ \protected@edef\tud@res@a{%
+ \endgroup%
+ \noexpand\ifblank{#1}%
+ }%
+ \tud@res@a%
+}
+\newcommand*\tud@if@strbool[4]{%
+ \TUD@set@ifkey{strbool}{@tempswa}{#1}%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed%
+ \if@tempswa#2\else#3\fi%
+ \else%
+ #4
+ \fi%
+}
+\newcommand*\tud@strlowercase[2]{%
+ \protected@edef#1{%
+ \lowercase{\def\noexpand#1{#2}}%
+ }#1%
+}
+\newcommand*\tud@strlength[2]{%
+ \begingroup%
+ \def\tud@res@c{\glueexpr#2\relax}%
+ \edef\tud@res@a{\strip@pt\dimexpr\tud@res@c\relax pt}%
+ \edef\tud@res@b{\strip@pt\dimexpr\gluestretch\tud@res@c\relax}%
+ \ifdim\tud@res@b\p@=\z@\relax\else%
+ \eappto\tud@res@a{%
+ \space\@plus\space\tud@res@b%
+ \ifcase\gluestretchorder\tud@res@c pt\or fil\or fill\or filll\fi%
+ }%
+ \fi%
+ \edef\tud@res@b{\strip@pt\dimexpr\glueshrink\tud@res@c\relax}%
+ \ifdim\tud@res@b\p@=\z@\relax\else%
+ \eappto\tud@res@a{%
+ \space\@minus\space\tud@res@b%
+ \ifcase\glueshrinkorder\tud@res@c pt\or fil\or fill\or filll\fi%
}%
+ \fi%
+ \edef\tud@res@a{%
+ \endgroup%
+ \unexpanded{\def#1}{\tud@res@a}%
}%
- }%
+ \tud@res@a%
}
-\newcommand*\iflanguageloaded[1]{%
- \PackageWarning{tudscrbase}{%
- Whether package `babel' nor package `polyglossia' has been loaded%
+\newcommand*\tud@remove@spaces@within[1]{%
+ \begingroup%
+ \protected@edef\tud@res@a{\noexpand\zap@space#1\space\noexpand\@empty}%
+ \protected@edef\tud@res@a{%
+ \endgroup%
+ \unexpanded{\def#1}{\tud@res@a}%
+ }%
+ \tud@res@a%
+}
+\AtEndPreamble{%
+ \providecommand*\iflanguageloaded[1]{%
+ \PackageWarning{tudscrbase}{%
+ `\string\iflanguageloaded' is not defined. Loading\MessageBreak%
+ either package `babel' or package `polyglossia'\MessageBreak%
+ is recommended%
+ }%
+ \def\iflanguageloaded##1{\expandafter\@secondoftwo}%
+ \iflanguageloaded{#1}%
}%
- \expandafter\@secondoftwo%
}
\AfterPackage*{babel}{%
- \renewcommand*\iflanguageloaded[1]{%
+ \providecommand*\iflanguageloaded[1]{%
\@expandtwoargs\in@{,#1,}{,\bbl@loaded,}%
\ifin@%
\expandafter\@firstoftwo%
@@ -130,7 +287,6 @@
\fi%
}%
}
-\BeforePackage{polyglossia}{\undef\iflanguageloaded}
\providecommand*\protected@expandtwoargs[3]{%
\protected@edef\reserved@a{\noexpand#1{#2}{#3}}\reserved@a%
}
@@ -140,41 +296,35 @@
\@defaultunits\@tempdimb #3pt\relax\@nnil%
\ifdim\@tempdima>\@tempdimb\relax%
\@whiledim\@tempdimb>1pt\relax\do{%
- \setlength\@tempdima{.1\@tempdima}%
- \setlength\@tempdimb{.1\@tempdimb}%
+ \setlength\@tempdima{\dimexpr\@tempdima/10\relax}%
+ \setlength\@tempdimb{\dimexpr\@tempdimb/10\relax}%
}%
\setlength\@tempdimc{\@tempdima}%
\else%
\@whiledim\@tempdima>1pt\relax\do{%
- \setlength\@tempdima{.1\@tempdima}%
- \setlength\@tempdimb{.1\@tempdimb}%
+ \setlength\@tempdima{\dimexpr\@tempdima/10\relax}%
+ \setlength\@tempdimb{\dimexpr\@tempdimb/10\relax}%
}%
\setlength\@tempdimc{\@tempdimb}%
\fi%
\@tempcnta=1\relax%
- \@whiledim\dimexpr\@tempcnta\@tempdimc\relax<.01\maxdimen\do{%
+ \@whiledim%
+ \dimexpr\@tempcnta\@tempdimc\relax<\dimexpr\maxdimen/100\relax%
+ \do{%
\multiply\@tempcnta by 10\relax%
}%
- \setlength\@tempdimc{%
- \dimexpr(\@tempcnta\@tempdima / \@tempdimb * \p@)\relax%
- }%
- \setlength\@tempdimc{\dimexpr \@tempdimc/\@tempcnta\relax}%
+ \setlength\@tempdimc{\dimexpr(\@tempcnta\@tempdima/\@tempdimb*\p@)\relax}%
+ \setlength\@tempdimc{\dimexpr\@tempdimc/\@tempcnta\relax}%
\edef\@tempa{\endgroup\def\noexpand#1{\strip@pt\@tempdimc}}%
\@tempa%
}
-\newcommand*\tud@lowerstring[2]{%
- \protected@edef#1{#2}%
- \lowercase\expandafter{%
- \expandafter\def\expandafter #1\expandafter{#1}%
- }%
-}
\newcommand*\tud@if@fdfileexists[2]{%
\begingroup%
\@tud@res@swatrue%
- \tud@lowerstring\tud@res@a{#1#2.fd}%
+ \tud@strlowercase\tud@res@a{#1#2.fd}%
\IfFileExists{\tud@res@a}{\@tud@res@swafalse}{}%
\if@tud@res@swa%
- \tud@lowerstring\tud@res@a{#1}%
+ \tud@strlowercase\tud@res@a{#1}%
\edef\tud@res@a{\tud@res@a#2.fd}%
\IfFileExists{\tud@res@a}{\@tud@res@swafalse}{}%
\fi%
@@ -194,9 +344,10 @@
\expandafter\csname #1\expandafter\endcsname\csname #2\endcsname%
}
\newrobustcmd*\tud@cs@store[1]{%
- \tud@cs@check{#1}%
- \ifcsdef{@@tud@#1}{}{%
- \tud@cs@letltx{@@tud@#1}{#1}%
+ \tud@cs@check{#1}{%
+ \ifcsdef{@@tud@#1}{}{%
+ \tud@cs@letltx{@@tud@#1}{#1}%
+ }%
}%
}
\newrobustcmd*\tud@cs@restore[1]{%
@@ -205,92 +356,109 @@
\cslet{#1}{\relax}%
}{}%
}%
- \tud@cs@check{#1}%
- \ifcsdef{@@tud@#1}{%
- \tud@cs@letltx{#1}{@@tud@#1}%
- \csundef{@@tud@#1}%
- }{}%
+ \tud@cs@check{#1}{%
+ \ifcsdef{@@tud@#1}{%
+ \tud@cs@letltx{#1}{@@tud@#1}%
+ \csundef{@@tud@#1}%
+ }{}%
+ }%
}
\newrobustcmd*\tud@cs@reset[1]{%
- \tud@cs@check{#1}%
- \ifcsdef{@@tud@#1}{%
- \tud@cs@letltx{#1}{@@tud@#1}%
- }{}%
+ \tud@cs@check{#1}{%
+ \ifcsdef{@@tud@#1}{%
+ \tud@cs@letltx{#1}{@@tud@#1}%
+ }{}%
+ }%
}
\newrobustcmd*\tud@cs@update[1]{%
- \tud@cs@check{#1}%
- \ifcsdef{@@tud@#1}{%
- \tud@cs@letltx{@@tud@#1}{#1}%
- }{}%
-}
-\newrobustcmd*\tud@cs@use[1]{%
- \tud@cs@check{#1}%
- \ifcsdef{@@tud@#1}{%
- \csuse{@@tud@#1}%
- }{%
- \csuse{#1}%
+ \tud@cs@check{#1}{%
+ \ifcsdef{@@tud@#1}{%
+ \tud@cs@letltx{@@tud@#1}{#1}%
+ }{}%
}%
}
-\newrobustcmd*\tud@cs@check[1]{%
- \ifcsdef{#1}{}{%
- \PackageError{tudscrbase}{%
- `\@backslashchar#1' is not defined}{%
- The command `\@backslashchar#1' was never defined. \MessageBreak%
- Please contact the TUD-Script maintainer\MessageBreak%
- via \tudscrmail. A bugfix is urgently required.%
+\newrobustcmd*\tud@cs@use[1]{%
+ \tud@cs@check{#1}{%
+ \ifcsdef{@@tud@#1}{%
+ \csuse{@@tud@#1}%
+ }{%
+ \csuse{#1}%
}%
}%
}
-\newcommand*\tud@skip@store[1]{%
- \tud@skip@check{#1}{%
- \ifcsdef{@@tud@skip@#1}{}{%
- \csedef{@@tud@skip@#1}{\expandafter\the\csname #1\endcsname}%
- }%
- }%
+\newrobustcmd*\tud@cs@check[1]{%
+ \begingroup%
+ \ifcsdef{#1}{\@tud@res@swatrue}{\@tud@res@swafalse}%
+ \if@tud@res@swa%
+ \ifcscounter{#1}{\@tud@res@swafalse}{}%
+ \ifcslength{#1}{\@tud@res@swafalse}{}%
+ \ifcsdimen{#1}{\@tud@res@swafalse}{}%
+ \fi%
+ \if@tud@res@swa%
+ \aftergroup\@firstofone%
+ \else%
+ \PackageError{tudscrbase}{`\@backslashchar#1' is not a defined macro}{%
+ The macro `\@backslashchar#1' was never defined. \MessageBreak%
+ Please contact the TUD-Script maintainer\MessageBreak%
+ via \TUDScriptContact. A bugfix is urgently required.%
+ }%
+ \aftergroup\@gobble%
+ \fi%
+ \endgroup%
}
-\newcommand*\tud@skip@restore[1]{%
- \tud@skip@check{#1}{%
- \ifcsdef{@@tud@skip@#1}{%
- \csname #1\endcsname=\csname @@tud@skip@#1\endcsname%
- \csundef{@@tud@skip@#1}%
+\newcommand*\tud@cslength@store[1]{%
+ \tud@cslength@check{#1}{%
+ \ifcsundef{@@tud@length@#1}{%
+ \csedef{@@tud@length@#1}{\expandafter\the\csname #1\endcsname}%
}{}%
}%
}
-\newcommand*\tud@skip@reset[1]{%
- \tud@skip@check{#1}{%
- \ifcsdef{@@tud@skip@#1}{%
- \csname#1\endcsname=\csname @@tud@skip@#1\endcsname%
- }{}%
+\newcommand*\tud@cslength@restore[1]{%
+ \tud@cslength@check{#1}{%
+ \ifcsundef{@@tud@length@#1}{}{%
+ \expandafter\setlength\csname #1\endcsname{%
+ \csname @@tud@length@#1\endcsname%
+ }%
+ \csundef{@@tud@length@#1}%
+ }%
}%
}
-\newcommand*\tud@skip@set[2]{%
- \tud@skip@check{#1}{%
- \expandafter\setlength\csname #1\endcsname{#2}%
+\newcommand*\tud@cslength@reset[1]{%
+ \tud@cslength@check{#1}{%
+ \ifcsundef{@@tud@length@#1}{}{%
+ \expandafter\setlength\csname #1\endcsname{%
+ \csname @@tud@length@#1\endcsname%
+ }%
+ }%
}%
}
-\newcommand*\tud@skip@check[1]{%
- \begingroup%
- \@tempswafalse%
- \expandafter\ifisskip\expandafter{\csname#1\endcsname}{\@tempswatrue}{}%
- \expandafter\ifisdimen\expandafter{\csname#1\endcsname}{\@tempswatrue}{}%
- \if@tempswa%
- \aftergroup\@firstofone%
- \else%
- \aftergroup\@gobble%
- \fi%
- \endgroup%
+\newcommand*\tud@cslength@check[1]{%
+ \expandafter\tud@if@lengthregister\expandafter{\csname #1\endcsname}{%
+ \expandafter\@firstofone%
+ }{%
+ \PackageError{tudscrbase}{`\@backslashchar#1' is not a defined length}{%
+ The length `\@backslashchar#1' was never defined. \MessageBreak%
+ Please contact the TUD-Script maintainer\MessageBreak%
+ via \TUDScriptContact. A bugfix is urgently required.%
+ }%
+ \expandafter\@gobble%
+ }%
}
\newcommand*\tud@patch@wrn[1]{%
\PackageWarning{tudscrbase}{%
It wasn't possible to patch `\@backslashchar#1'\MessageBreak%
Please contact the TUD-Script maintainer\MessageBreak%
- via \tudscrmail. Without a bugfix an\MessageBreak%
+ via \TUDScriptContact. Without a bugfix an\MessageBreak%
erroneous output may occur%
}%
}
\DefineFamily{TUD}
-\newcommand*\TUDProcessOptions{\FamilyProcessOptions{TUD}}
-\newcommand*\TUDExecuteOptions{\FamilyExecuteOptions{TUD}}
+\newcommand*\TUDProcessOptions[1][.\@currname.\@currext]{%
+ \FamilyProcessOptions[{#1}]{TUD}%
+}
+\newcommand*\TUDExecuteOptions[1][.\@currname.\@currext]{%
+ \FamilyExecuteOptions[{#1}]{TUD}%
+}
\newcommand*\TUDoptions{\FamilyOptions{TUD}}
\newcommand*\TUDoption{\FamilyOption{TUD}}
\newcommand*\TUD@key[2][.\@currname.\@currext]{%
@@ -325,29 +493,215 @@
}%
}
\newcommand*\TUD@set@ifkey[3]{%
- \tud@lowerstring\tud@res@a{#3}%
- \edef\tud@res@b{%
- \etex@unexpanded{\FamilySetBool{TUD}{#1}{#2}}{\tud@res@a}%
- }\tud@res@b%
+ \begingroup%
+ \tud@strlowercase\tud@res@a{#3}%
+ \edef\tud@res@a{%
+ \endgroup%
+ \unexpanded{\FamilySetBool{TUD}{#1}{#2}}{\tud@res@a}%
+ }%
+ \tud@res@a%
}
\newcommand*\TUD@set@numkey[4]{%
- \tud@lowerstring\tud@res@a{#4}%
- \edef\tud@res@b{%
- \etex@unexpanded{\FamilySetNumerical{TUD}{#1}{#2}{#3}}{\tud@res@a}%
- }\tud@res@b%
+ \begingroup%
+ \tud@strlowercase\tud@res@a{#4}%
+ \edef\tud@res@a{%
+ \endgroup%
+ \unexpanded{\FamilySetNumerical{TUD}{#1}{#2}{#3}}{\tud@res@a}%
+ }%
+ \tud@res@a%
}
\newcommand*\TUD@bool@numkey{%
{false}{0},{off}{0},{no}{0},{true}{1},{on}{1},{yes}{1}%
}
-\newcommand*\TUD@set@dimenkey[3]{%
- \tud@lowerstring\tud@res@a{#3}%
- \edef\tud@res@b{%
- \etex@unexpanded{\FamilySetUseLengthMacro{TUD}{#1}{#2}}{\tud@res@a}%
- }\tud@res@b%
+\newcommand*\TUD@set@gluekey[4][pt]{%
+ \begingroup%
+ \tud@strlowercase\tud@res@a{#4}%
+ \edef\tud@res@b{\detokenize\expandafter{\tud@res@a}}%
+ \edef\tud@res@c{\detokenize\expandafter{\@backslashchar}}%
+ \@expandtwoargs\in@{\tud@res@c}{\tud@res@b}%
+ \ifin@\else%
+ \tud@normalize@gluekey\tud@res@a{#1}%
+ \fi%
+ \protected@edef\tud@res@a{%
+ \endgroup%
+ \ifx\tud@res@a\@empty%
+ \noexpand\FamilyKeyStateUnknownValue%
+ \else%
+ \unexpanded{\tud@validate@gluekey{#2}}{\tud@res@a}{#4}%
+ \unexpanded{\FamilySetUseLengthMacro{TUD}{#2}{#3}}{\tud@res@a}%
+ \fi%
+ }%
+ \tud@res@a%
+}
+\newcommand*\tud@normalize@gluekey[2]{%
+ \begingroup%
+ \edef\tud@res@c{#1}%
+ \def\tud@res@a##1plus##2plus##3\@nil{%
+ \let\tud@res@a\@empty%
+ \tud@res@b##1minusminus\@nil%
+ \tud@res@b##2minusminus\@nil%
+ }%
+ \def\tud@res@b##1minus##2minus##3\@nil{%
+ \eappto\tud@res@a{{\trim@spaces{##1}}{\trim@spaces{##2}}}%
+ }%
+ \expandafter\tud@res@a\tud@res@c plusplus\@nil%
+ \def\tud@res@b##1##2##3##4{%
+ \IfArgIsEmpty{##2}{%
+ \def\tud@res@a{{##1}{##3}{##4}}%
+ }{%
+ \def\tud@res@a{{##1}{##3}{##2}}%
+ }%
+ }%
+ \expandafter\tud@res@b\tud@res@a%
+ \edef\tud@res@b{%
+ \unexpanded{\@tfor\tud@res@b:=}\tud@res@a%
+ }%
+ \let\tud@res@c\@empty%
+ \@tud@res@swatrue%
+ \tud@res@b\do{%
+ \tud@normalize@@gluekey\tud@res@a{\tud@res@b}{#2}%
+ \ifx\tud@res@a\relax%
+ \@tud@res@swafalse%
+ \@break@tfor%
+ \else%
+ \eappto\tud@res@c{{\tud@res@a}}%
+ \fi%
+ }%
+ \let\tud@res@a\@empty%
+ \if@tud@res@swa%
+ \def\tud@res@b##1##2##3{%
+ \IfArgIsEmpty{##1}{\def\tud@res@b{0#2}}{\def\tud@res@b{##1}}%
+ \Ifdimen{\tud@res@b}{%
+ \edef\tud@res@a{%
+ \tud@res@b%
+ \IfArgIsEmpty{##2}{}{\space\@plus\space##2}%
+ \IfArgIsEmpty{##3}{}{\space\@minus\space##3}%
+ }%
+ }{}%
+ }%
+ \expandafter\tud@res@b\tud@res@c%
+ \fi%
+ \edef\tud@res@c{%
+ \endgroup%
+ \unexpanded{\def#1}{\tud@res@a}%
+ }%
+ \tud@res@c%
+}
+\newcommand*\tud@normalize@@gluekey[3]{%
+ \begingroup%
+ \edef\tud@res@a{#2}%
+ \@tud@res@swafalse%
+ \expandafter\if\expandafter\@car\tud@res@a\relax\@nil+\@tud@res@swatrue\fi%
+ \expandafter\if\expandafter\@car\tud@res@a\relax\@nil-\@tud@res@swatrue\fi%
+ \if@tud@res@swa%
+ \protected@edef\tud@res@b{\expandafter\@car\tud@res@a\relax\@nil}%
+ \protected@edef\tud@res@a{\expandafter\@gobble\tud@res@a}%
+ \else%
+ \let\tud@res@b\@empty%
+ \fi%
+ \@tud@res@swatrue%
+ \Ifdimen{\tud@res@a}{}{%
+ \Ifdimen{\tud@res@a#3}{%
+ \appto\tud@res@a{#3}%
+ }{%
+ \@tud@res@swafalse%
+ }%
+ }%
+ \if@tud@res@swa%
+ \Ifisdimension{\tud@res@a}{}{%
+ \let\tud@res@a\@empty%
+ \let\tud@res@b\@empty%
+ }%
+ \else%
+ \def\tud@res@c##1fil##2fil##3\@nil{%
+ \IfArgIsEmpty{##1}{\def\tud@res@a{1}}{\def\tud@res@a{##1}}%
+ \Ifdimen{\tud@res@a pt}{\@tud@res@swatrue}{\@tud@res@swafalse}%
+ \if@tud@res@swa%
+ \appto\tud@res@a{fil##2}%
+ \tud@if@strequal{##2}{}{}{%
+ \tud@if@strequal{##2}{l}{}{%
+ \tud@if@strequal{##2}{ll}{}{\@tud@res@swafalse}%
+ }%
+ }%
+ \fi%
+ }%
+ \expandafter\tud@res@c\tud@res@a filfil\@nil%
+ \fi%
+ \edef\tud@res@c{%
+ \endgroup%
+ \if@tud@res@swa%
+ \unexpanded{\def#1}{\tud@res@b\tud@res@a}%
+ \else%
+ \unexpanded{\let#1\relax}%
+ \fi%
+ }%
+ \tud@res@c%
+}
+\newcommand*\tud@validate@gluekey[3]{%
+ \begingroup%
+ \protected@edef\tud@res@a{#2}%
+ \protected@edef\tud@res@b{#3}%
+ \tud@remove@spaces@within\tud@res@a%
+ \tud@remove@spaces@within\tud@res@b%
+ \ifx\tud@res@a\tud@res@b%
+ \aftergroup\@gobble%
+ \else%
+ \aftergroup\@firstofone%
+ \fi%
+ \endgroup{%
+ \PackageWarning{tudscrbase}{%
+ The length `#3'\MessageBreak%
+ seems to be wrong formatted. Assuming, you meant\MessageBreak%
+ `#1=#2'%
+ }%
+ }%
+}
+\newcommand*\TUD@set@dimkey[4][pt]{%
+ \begingroup%
+ \TUD@set@gluekey[{#1}]{#2}{\tud@res@a}{#4}%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed%
+ \@tud@res@swafalse%
+ \Ifisskip{\tud@res@a}{%
+ \protected@edef\tud@res@a{\dimexpr\tud@res@a\relax}%
+ \def\tud@res@b{a \string\skip\space register}%
+ \@tud@res@swatrue%
+ }{%
+ \Ifisglueexpr{\tud@res@a}{%
+ \protected@edef\tud@res@a{\dimexpr\tud@res@a\relax}%
+ \def\tud@res@b{a glue expression}%
+ \@tud@res@swatrue%
+ }{%
+ \Ifisglue{\tud@res@a}{%
+ \Ifisdimension{\tud@res@a}{}{%
+ \setlength\@tempdima{\dimexpr\glueexpr\tud@res@a\relax\relax}%
+ \tud@strlength\tud@res@a{\@tempdima}%
+ \def\tud@res@b{something containing glue}%
+ \@tud@res@swatrue%
+ }%
+ }{}%
+ }%
+ }%
+ \if@tud@res@swa%
+ \PackageWarning{tudscrbase}{%
+ Using option `#2' with\MessageBreak%
+ \tud@res@b\space(#4)\MessageBreak%
+ is not recommended. You should consider to use\MessageBreak%
+ an expression for a dimen instead. Setting\MessageBreak%
+ `#2=\tud@res@a'%
+ }%
+ \fi%
+ \protected@edef\tud@res@a{%
+ \endgroup%
+ \unexpanded{\FamilySetUseLengthMacro{TUD}{#2}{#3}}{\tud@res@a}%
+ }%
+ \else%
+ \def\tud@res@a{\endgroup\FamilyKeyStateUnknownValue}%
+ \fi%
+ \tud@res@a%
}
\newcommand*\TUD@unknown@keyval{\FamilyUnknownKeyValue{TUD}}
\newcommand*\tud@locked@newnum[2]{%
- \expandafter\newcommand\expandafter*\csname#1\endcsname{#2}%
+ \expandafter\newcommand\expandafter*\csname #1\endcsname{#2}%
\newbool{#1@locked}%
\tud@num@set{#1}{#2}%
}
@@ -362,8 +716,15 @@
\booltrue{#1@locked}%
}
\newcommand*\tud@num@set[2]{%
- \ifcsdef{#1}{%
- \ifnumber{#2}{%
+ \ifcsundef{#1}{%
+ \PackageError{tudscrbase}{%
+ `\@backslashchar#1' was never defined%
+ }{%
+ You tried using the numerical expression `\@backslashchar#1'\MessageBreak%
+ but you didn't define it with `\string\tud@locked@newnum'.%
+ }%
+ }{%
+ \Ifnumber{#2}{%
\csdef{#1}{#2}%
}{%
\PackageError{tudscrbase}{%
@@ -373,13 +734,6 @@
to value `#2', which isn't numerical.%
}%
}%
- }{%
- \PackageError{tudscrbase}{%
- `\@backslashchar#1' was never defined%
- }{%
- You tried using the numerical expression `\@backslashchar#1'\MessageBreak%
- but you didn't define it with `\string\tud@locked@newnum'.%
- }%
}%
}
\newcommand*\tud@locked@newbool[2][false]{%
@@ -398,7 +752,7 @@
\booltrue{#1@locked}%
}
\newcommand*\tud@bool@set[2]{%
- \ifstrbool{#2}{\booltrue{#1}}{\boolfalse{#1}}{%
+ \tud@if@strbool{#2}{\booltrue{#1}}{\boolfalse{#1}}{%
\PackageError{tudscrbase}{%
`#2' is not a valid boolean expression%
}{%
@@ -415,7 +769,7 @@
\gdef\TUD@parameter@@family{}%
}
\newcommand*\TUD@parameter@checkfamily[2]{%
- \ifxblank{#1}{%
+ \tud@if@strblank{#1}{%
\PackageError{tudscrbase}{%
No family for \@backslashchar#2 defined%
}{%
@@ -470,7 +824,7 @@
\newcommand*\TUD@parameter@handler@macro[3][\TUD@parameter@@family]{%
\TUD@parameter@checkfamily{#1}{TUD@parameter@handler@macro}%
\expandafter\kv@set@family@handler\expandafter{#1}{%
- \ifstr{\kv@key}{\TUD@parameter@nokey}{#3}{#2}%
+ \tud@if@strequal{\kv@key}{\TUD@parameter@nokey}{#3}{#2}%
}%
}
\newcommand*\TUD@parameter@handler@value[2][\TUD@parameter@@family]{%
@@ -478,27 +832,29 @@
\protected@edef\@tempa{%
\noexpand\TUD@parameter@set{#1}{#2=\noexpand\kv@value}%
}%
- \def\@tempb{\TUD@parameter@handler@macro[#1]{\kv@handled@false}}%
+ \def\@tempb{\TUD@parameter@handler@macro[{#1}]{\kv@handled@false}}%
\expandafter\@tempb\expandafter{\@tempa}%
}
\newcommand*\TUD@parameter@handler@default[2][\TUD@parameter@@family]{%
\TUD@parameter@checkfamily{#1}{TUD@parameter@handler@default}%
- \ifxblank{#2}{%
+ \tud@if@strblank{#2}{%
\def\@tempa{\let\tud@reserved\relax}%
}{%
\def\@tempa{\def\tud@reserved{#2=\kv@value}}%
}%
\appto\@tempa{%
- \ifstr{\kv@value}{twocolumn}{\def\kv@value{2}}{}%
- \ifnumber{\kv@value}{\def\tud@reserved{columns=\kv@value}}{}%
+ \tud@if@strequal{\kv@value}{twocolumn}{\def\kv@value{2}}{}%
+ \Ifnumber{\kv@value}{\def\tud@reserved{columns=\kv@value}}{}%
\iflanguageloaded{\kv@value}{\def\tud@reserved{language=\kv@value}}{}%
\ifx\tud@reserved\relax%
- \PackageError{tudscrbase}{%
- Unknown default value `\kv@value'%
- }{%
- If `\kv@value' is a language, you haven't loaded it. \MessageBreak%
- Otherwise, there's no handler for the given value. \MessageBreak%
- You should specify a certian key (<key>=\kv@value).%
+ \tud@if@strblank{\kv@value}{}{%
+ \PackageError{tudscrbase}{%
+ Unknown default value `\kv@value'%
+ }{%
+ If `\kv@value' is a language, you haven't loaded it. \MessageBreak%
+ Otherwise, there's no handler for the given value. \MessageBreak%
+ You should specify a certian key (<key>=\kv@value).%
+ }%
}%
\fi%
}%
@@ -507,21 +863,25 @@
\noexpand\TUD@parameter@set{#1}{\noexpand\tud@reserved}%
\noexpand\fi%
}%
- \def\@tempb{\TUD@parameter@handler@macro[#1]{\kv@handled@false}}%
+ \def\@tempb{\TUD@parameter@handler@macro[{#1}]{\kv@handled@false}}%
\expandafter\@tempb\expandafter{\@tempa}%
}
-\newcommand*\TUD@parameter@error[2]{%
+\newcommand*\TUD@parameter@err[2]{%
\PackageError{tudscrbase}{Unsupported value for parameter `#1'}{%
`#1' can only be used with values:\MessageBreak#2%
+ \MessageBreak Please choose a valid one.%
}%
}
-\newcommand*\TUD@UnwindPackage[2]{\AtEndPreamble{\@ifpackageloaded{#1}{}{#2}}}
+\NewDocumentCommand\TUD@UnwindPackage{s m m}{%
+ \IfBooleanT{#1}{\AfterPackage*{#2}{#3}}%
+ \AtEndPreamble{\@ifpackageloaded{#2}{}{#3}}%
+}
\@onlypreamble\TUD@UnwindPackage
\newcommand*\TUD@CheckPackage[2]{%
\tud@if@packagelater@exists{#1}{#2}{}{%
\PackageWarningNoLine{tudscrbase}{%
The version `#2' of package `#1'\MessageBreak%
- is urgently required. An erroneous output\MessageBreak
+ is urgently required. An erroneous output\MessageBreak%
may occur. Please update your distribution%
}%
\IfFileExists{#1.sty}{}{\RequirePackage{#1}[#2]}%
@@ -533,37 +893,38 @@
\let\tud@res@a\@empty%
\def\tud@res@b[##1]{\def\tud@res@a{##1}}%
\def\ProvidesPackage##1{%
- \@ifnextchar[%]
- {\tud@res@b}{\tud@res@b[]}%
+ \kernel@ifnextchar[%]
+ {\tud@res@b}%
+ {\tud@res@b[]}%
}%
\IfFileExists{#1.sty}{%
- \openin\tud@res@read=#1.sty%
+ \openin\@inputcheck=#1.sty%
\@tud@res@swatrue%
\loop%
- \read\tud@res@read to\tud@res@c%
+ \read\@inputcheck to\tud@res@c%
\@expandtwoargs\in@{\string\ProvidesPackage}%
{\expandafter\detokenize\expandafter{\tud@res@c}}%
\ifin@%
\@tud@res@swafalse%
\tud@res@c%
\fi%
- \ifeof\tud@res@read\@tud@res@swafalse\fi%
+ \ifeof\@inputcheck\@tud@res@swafalse\fi%
\if@tud@res@swa%
\repeat%
- \closein\tud@res@read%
+ \closein\@inputcheck%
}{}%
- \edef\tud@res@a{\endgroup\noexpand\@ifl@t@r{\tud@res@a}{#2}}
+ \edef\tud@res@a{\endgroup\noexpand\@ifl@t@r{\tud@res@a}{#2}}%
\tud@res@a%
}
\@onlypreamble\tud@if@packagelater@exists
\newcommand*\TUD@RecommendPackage[1]{%
\kernel@ifnextchar[%]
- {\TUD@@RecommendPackage#1}%
- {\TUD@@RecommendPackage#1[]}%
+ {\TUD@Recommend@Package#1}%
+ {\TUD@Recommend@Package#1[]}%
}
\@onlypreamble\TUD@RecommendPackage
-\newcommand*\TUD@@RecommendPackage{}
-\def\TUD@@RecommendPackage#1[#2]{%
+\newcommand*\TUD@Recommend@Package{}
+\def\TUD@Recommend@Package#1[#2]{%
\IfFileExists{#1.sty}{%
\RequirePackage{#1}[#2]%
}{%
@@ -573,23 +934,22 @@
}%
}%
}
-\@onlypreamble\TUD@@RecommendPackage
+\@onlypreamble\TUD@Recommend@Package
\newcommand*\TUD@AfterPackage@set[1]{%
\newbool{@tud@#1@loaded}%
\AfterAtEndOfPackage*{#1}{\booltrue{@tud@#1@loaded}}%
}
\newcommand*\TUD@AfterPackage@do[2]{%
- \ifcsdef{if@tud@#1@loaded}{%
- \if@atdocument%
- \ifbool{@tud@#1@loaded}{#2}{}%
- \else%
- \AfterAtEndOfPackage*{#1}{#2}%
- \fi%
- }{%
+ \ifcsundef{if@tud@#1@loaded}{%
\PackageError{tudscrbase}{\string\TUD@AfterPackage@set{#1} missing}{%
You have to set \string\TUD@AfterPackage@set{#1} before\MessageBreak%
- the usage of \string\TUD@AfterPackage@do{#1}{<code>} is\MessageBreak%
- possible.%
+ using \string\TUD@AfterPackage@do{#1}{<code>}.%
+ }%
+ }{%
+ \tud@if@preamble{%
+ \AfterAtEndOfPackage*{#1}{#2}%
+ }{%
+ \ifbool{@tud@#1@loaded}{#2}{}%
}%
}%
}
@@ -597,13 +957,14 @@
\ifundef{\KOMAClassName}{%
\renewcommand*\TUD@KOMAoptions[1]{%
\PackageWarning{tudscrbase}{%
- You should load package `scrextend' right after the\MessageBreak%
- documentclass. Option \string\TUD@KOMAoptions{`#1'} is gobbled%
+ You should load package `scrextend' right after\MessageBreak%
+ the documentclass. The following option is gobbled:\MessageBreak%
+ \string\KOMAoptions{`#1'}%
}%
}%
- \AfterPackage*{scrextend}{\let\TUD@KOMAoptions\KOMAoptions}%
+ \AfterPackage*{scrextend}{\def\TUD@KOMAoptions{\KOMAoptions}}%
}{%
- \let\TUD@KOMAoptions\KOMAoptions%
+ \def\TUD@KOMAoptions{\KOMAoptions}%
}
\endinput
%%
diff --git a/Master/texmf-dist/tex/latex/tudscr/tudscrbook.cls b/Master/texmf-dist/tex/latex/tudscr/tudscrbook.cls
index c1f10f56c1a..5ac84b10711 100644
--- a/Master/texmf-dist/tex/latex/tudscr/tudscrbook.cls
+++ b/Master/texmf-dist/tex/latex/tudscr/tudscrbook.cls
@@ -4,7 +4,7 @@
%%
%% The original source files were:
%%
-%% tudscr-version.dtx (with options: `class,book')
+%% tudscr-version.dtx (with options: `class,book,identify')
%% tudscr-base.dtx (with options: `class,book,load')
%% tudscr-base.dtx (with options: `class,book,option')
%% tudscr-fonts.dtx (with options: `class,book,option')
@@ -25,14 +25,15 @@
%% tudscr-layout.dtx (with options: `class,book,body')
%% tudscr-title.dtx (with options: `class,book,body')
%% tudscr-frontmatter.dtx (with options: `class,book,body')
-%% tudscr-comp.dtx (with options: `class,book,body')
%% tudscr-misc.dtx (with options: `class,book,body')
+%% tudscr-comp.dtx (with options: `class,book,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{tudscrbook}{scrbook}{document 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,%
@@ -795,13 +819,13 @@
\TUD@key@preset{cdchapter}{#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@cover@num{0}
@@ -844,15 +868,15 @@
\TUD@SpecialOptionAtDocument{tud@cd@process}%
\fi%
}
-\newif\if@tud@parttitle
+\tud@newif\if@tud@parttitle
\TUD@key{parttitle}[true]{%
\TUD@set@ifkey{parttitle}{@tud@parttitle}{#1}%
}
-\newif\if@tud@chapterpage
+\tud@newif\if@tud@chapterpage
\TUD@key{chapterpage}[true]{%
\TUD@set@ifkey{chapterpage}{@tud@chapterpage}{#1}%
}
-\newif\if@tud@clearcolor
+\tud@newif\if@tud@clearcolor
\newcommand*\tud@cleardoublepage{\cleardoubleoddpage}
\TUD@key{cleardoublespecialpage}[true]{%
\TUD@set@numkey{cleardoublespecialpage}{@tempa}{%
@@ -877,7 +901,7 @@
\renewcommand*\tud@cleardoublepage{\cleardoubleoddstandardpage}%
\fi%
\else%
- \AfterPreamble{%
+ \AfterEndPreamble{%
\ifcsundef{ps@#1}{%
\ClassError{\TUD@Class@Name}{`#1' is no valid pagestyle}{%
You tried to use `#1' as a pagestyle for option\MessageBreak%
@@ -891,19 +915,28 @@
\fi%
}
\newcommand*\tud@pagecolor{}%
-\newcommand*\tud@dim@pageheadingsvskip{0pt}
-\TUD@key{pageheadingsvskip}{%
- \TUD@set@dimenkey{pageheadingsvskip}{\tud@dim@pageheadingsvskip}{#1}%
+\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%
+ }%
}
-\newcommand*\tud@dim@headingsvskip{0pt}
+\newcommand*\tud@headingsvskip@dim{0pt}
\TUD@key{headingsvskip}{%
- \TUD@set@dimenkey{headingsvskip}{\tud@dim@headingsvskip}{#1}%
+ \TUD@set@dimkey{headingsvskip}{\tud@headingsvskip@dim}{#1}%
+}
+\newcommand*\tud@pageheadingsvskip@dim{\tud@headingsvskip@dim}
+\TUD@key{pageheadingsvskip}{%
+ \TUD@set@dimkey{pageheadingsvskip}{\tud@pageheadingsvskip@dim}{#1}%
}
-\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}%
@@ -918,27 +951,27 @@
}
\DefineFamilyMember{KOMA}
\DefineFamilyKey{KOMA}{headings}{%
+ \FamilyKeyStateUnknownValue%
\TUD@SpecialOptionAtDocument{tud@x@scr@headings@reset}%
- \FamilyKeyStateProcessed%
}
\DefineFamilyKey{KOMA}{open}{%
+ \FamilyKeyStateUnknownValue%
\TUD@SpecialOptionAtDocument{tud@x@scr@headings@reset}%
- \FamilyKeyStateProcessed%
}
\DefineFamilyKey{KOMA}{chapterprefix}{%
+ \FamilyKeyStateUnknownValue%
\TUD@SpecialOptionAtDocument{tud@x@scr@headings@reset}%
- \FamilyKeyStateProcessed%
}
-%%% From File: tudscr-title.dtx
-\newif\if@tud@subjectthesis
+%%%% From File: tudscr-title.dtx (no git version info was found)
+\tud@newif\if@tud@subjectthesis
\TUD@key{subjectthesis}[true]{%
\TUD@set@ifkey{subjectthesis}{@tud@subjectthesis}{#1}%
}
-\newif\if@tud@titlesignature
+\tud@newif\if@tud@titlesignature
\TUD@key{titlesignature}[true]{%
\TUD@set@ifkey{titlesignature}{@tud@titlesignature}{#1}%
}
-%%% 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},%
{chapter}{3},{chap}{3},{addchap}{3},%
@@ -958,11 +991,11 @@
}
\newcommand*\tud@abstract@level@num{3}
\tud@locked@newnum{tud@abstract@toc@num}{1}
-\newif\if@tud@abstract@multi
+\tud@newif\if@tud@abstract@multi
\@tud@abstract@multitrue
-\newif\if@tud@abstract@fil
+\tud@newif\if@tud@abstract@fil
\@tud@abstract@filtrue
-\newif\if@tud@abstract@markboth
+\tud@newif\if@tud@abstract@markboth
\TUD@key{abstract}[chapter]{%
\edef\@tempb{\tud@fm@switch}%
\TUD@set@numkey{abstract}{@tempa}{\@tempb}{#1}%
@@ -1017,15 +1050,16 @@
}
\DefineFamilyMember{KOMA}
\DefineFamilyKey{KOMA}{abstract}[true]{%
+ \FamilyKeyStateUnknownValue%
\AtEndOfFamilyOptions{\TUDoptions{abstract=#1}}%
}
\newcommand*\tud@declaration@level@num{3}
\tud@locked@newnum{tud@declaration@toc@num}{1}
-\newif\if@tud@declaration@multi
+\tud@newif\if@tud@declaration@multi
\@tud@declaration@multitrue
-\newif\if@tud@declaration@fil
+\tud@newif\if@tud@declaration@fil
\@tud@declaration@filtrue
-\newif\if@tud@declaration@markboth
+\tud@newif\if@tud@declaration@markboth
\TUD@key{declaration}[chapter]{%
\edef\@tempb{\TUD@bool@numkey,\tud@fm@switch}%
\TUD@set@numkey{declaration}{@tempa}{\@tempb}{#1}%
@@ -1082,8 +1116,8 @@
\fi%
\fi%
}
-%%% 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}%
}
@@ -1093,7 +1127,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
@@ -1110,7 +1144,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}%
{%
@@ -1161,16 +1195,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}
@@ -1198,88 +1239,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}%
{%
@@ -1288,6 +1276,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%
}
@@ -1441,7 +1435,7 @@
\fi%
}
\TUD@key{clearcolour}[true]{\TUDoptions{clearcolor=#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%
@@ -1456,12 +1450,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}%
}{%
@@ -1476,34 +1470,36 @@
\TUD@key@preset{ttfont}{roboto}%
\TUD@key@preset{headings}{heavy}%
}
-\DeclareOption*{\tud@x@scr@checkoptions}
\TUDExecuteOptions{%
cd=true,tudbookmarks=true%
}
+\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%
@@ -1523,14 +1519,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}{%
@@ -1569,11 +1567,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}
@@ -1586,12 +1582,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}{%
@@ -1599,8 +1600,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}%
@@ -1617,6 +1618,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][-]{%
@@ -1651,7 +1663,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%
@@ -1668,7 +1680,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}%
@@ -1676,8 +1691,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}%
@@ -1691,7 +1710,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%
@@ -1709,7 +1728,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{%
@@ -1723,8 +1742,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 %
@@ -1741,40 +1760,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{%
@@ -1804,7 +1795,7 @@
}%
\edef\tud@res@a{%
\endgroup%
- \noexpand\DeclareRobustCommand%
+ \noexpand\renewrobustcmd*%
\expandafter\noexpand\csname #1family\endcsname{%
\expandafter\noexpand\csname tud@x@fontspec@fam@#2\endcsname%
}%
@@ -1812,8 +1803,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}%
@@ -1838,13 +1830,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%
@@ -1893,12 +1878,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%
@@ -1912,7 +1904,6 @@
\fi%
\tud@cdfont@@set%
\fi%
- \tud@cdfont@wrn%
}
\newcommand*\tud@cdfont@md{m}
\newcommand*\tud@cdfont@bf{b}
@@ -1980,7 +1971,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%
@@ -2001,35 +1992,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}%
- \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}%
+ \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@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{%
@@ -2070,28 +2083,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}
- \fi%
+ \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{}%
@@ -2114,7 +2132,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{%
@@ -2132,23 +2150,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{}%
@@ -2176,26 +2197,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{%
@@ -2214,7 +2215,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}%
@@ -2223,7 +2224,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%
@@ -2265,7 +2266,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]{%
@@ -2273,29 +2274,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}%
@@ -2304,20 +2305,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}%
@@ -2325,8 +2326,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{_}{}%
@@ -2335,9 +2335,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}%
@@ -2347,8 +2347,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{_}{}%
@@ -2391,12 +2390,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%
@@ -2481,24 +2480,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%
@@ -2513,8 +2512,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%
}
@@ -2598,7 +2607,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}}%
}{}%
@@ -2626,7 +2635,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{%
@@ -2639,7 +2648,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{%
@@ -2738,26 +2747,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%
@@ -2765,43 +2767,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}{}{%
@@ -2847,12 +2815,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%
@@ -2862,104 +2829,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}%
- \fi%
+ \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{%
@@ -2968,14 +2959,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{%
@@ -2988,18 +2979,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{}
@@ -3028,7 +3074,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%
@@ -3051,7 +3097,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}%
@@ -3154,7 +3200,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}%
@@ -3163,13 +3209,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%
@@ -3184,7 +3229,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}{}{%
@@ -3198,49 +3243,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@set{%
@@ -3260,14 +3263,14 @@
\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}%
\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}%
\fi%
\ifcase\tud@head@font@num\relax\else% true/heavy
\tud@head@cdfont@set%
@@ -3306,7 +3309,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}%
@@ -3332,20 +3438,26 @@
\newcommand*\@department{}
\newcommand*\@institute{}
\newcommand*\@chair{}
-\newcommand*\faculty[2][]{\tud@head@text@field{faculty}{#2}}
-\newcommand*\department[2][]{\tud@head@text@field{department}{#2}}
-\newcommand*\institute[2][]{\tud@head@text@field{institute}{#2}}
-\newcommand*\chair[2][]{\tud@head@text@field{chair}{#2}}
+\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}%
\global\@tud@head@text@settrue%
}
+\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%
@@ -3356,7 +3468,7 @@
}
\newcommand*\@@author{}
\renewcommand*\author[1]{%
- \gdef\@author{#1}%
+ \tud@trim@field\@author{#1}%
\begingroup%
\let\thanks\@gobble%
\let\footnote\@gobble%
@@ -3388,128 +3500,160 @@
\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*\@matriculationnumber{}
-\newrobustcmd*\matriculationnumber[1]{%
- \gdef\@matriculationnumber{#1}\ignorespaces%
-}
+\newrobustcmd*\matriculationnumber[1]{\tud@trim@field\@matriculationnumber{#1}}
\newcommand*\@matriculationyear{}
-\newrobustcmd*\matriculationyear[1]{\gdef\@matriculationyear{#1}\ignorespaces}
+\newrobustcmd*\matriculationyear[1]{\tud@trim@field\@matriculationyear{#1}}
\newcommand*\@placeofbirth{}
-\newrobustcmd*\placeofbirth[1]{\gdef\@placeofbirth{#1}\ignorespaces}
+\newrobustcmd*\placeofbirth[1]{\tud@trim@field\@placeofbirth{#1}}
\newcommand*\@thesis{}
\newcommand*\@@thesis{}
-\newcommand*\thesis[1]{\tud@thesis@do{thesis}{#1}}
-\renewcommand*\subject[1]{\tud@thesis@do{subject}{#1}}
-\newcommand*\tud@thanks{}
-\newcommand*\tud@thesis@do[2]{%
+\newcommand*\thesis[1]{\tud@thesis@evaluate{thesis}{#1}}
+\CheckCommand*\subject[1]{\gdef\@subject{#1}}
+\newcommand*\@@subject{}
+\renewcommand*\subject[1]{\tud@thesis@evaluate{subject}{#1}}
+\newcommand*\tud@thesis@evaluate[2]{%
\begingroup%
- \global\let\tud@thanks\relax%
- \def\thanks##1{\gdef\tud@thanks{##1}}%
+ \expandafter\tud@trim@field\csname @#1\endcsname{#2}%
+ \let\tud@res@c\@empty%
+ \def\thanks##1{\listgadd\tud@res@c{##1}}%
\let\footnote\thanks%
\sbox\z@{#2}%
\let\thanks\@gobble%
\let\footnote\@gobble%
- \tud@lowerstring{\@tempa}{#2}%
- \ifstr{#1}{thesis}{\protected@xdef\@@thesis{#2}}{}%
- \protected@edef\@tempa{%
+ \protected@csxdef{@@#1}{\trim@spaces{#2}}%
+ \letcs\tud@res@a{@@#1}%
+ \TUD@set@numkey{thesis}{@tempa}{%
+ {habil}{0},
+ {diss}{1},{doctoral}{1},{phd}{1},
+ {diploma}{2},
+ {master}{3},
+ {bachelor}{4},
+ {student}{5},
+ {evidence}{6},
+ {project}{7},
+ {seminar}{8},
+ {term}{9},
+ {research}{10},
+ {log}{11},
+ {report}{12},
+ {internship}{13}
+ }{\tud@res@a}%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed%
+ \ifcase\@tempa\relax% habil
+ \def\tud@res@a{\habilitationname}%
+ \or% diss
+ \def\tud@res@a{\dissertationname}%
+ \or% diploma
+ \def\tud@res@a{\diplomathesisname}%
+ \or% master
+ \def\tud@res@a{\masterthesisname}%
+ \or% bachelor
+ \def\tud@res@a{\bachelorthesisname}%
+ \or% student
+ \def\tud@res@a{\studentthesisname}%
+ \or% evidence
+ \def\tud@res@a{\studentresearchname}%
+ \or% project
+ \def\tud@res@a{\projectpapername}%
+ \or% seminar
+ \def\tud@res@a{\seminarpapername}%
+ \or% term
+ \def\tud@res@a{\termpapername}%
+ \or% research
+ \def\tud@res@a{\researchname}%
+ \or% log
+ \def\tud@res@a{\logname}%
+ \or% report
+ \def\tud@res@a{\reportname}%
+ \or% internship
+ \def\tud@res@a{\internshipname}%
+ \else%
+ \FamilyKeyStateUnknownValue%
+ \fi%
+ \fi%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed%
+ \global\cslet{@@#1}\tud@res@a%
+ \tud@if@strequal{#1}{subject}{%
+ \ifx\@@thesis\@empty\global\let\@@thesis\@@subject\fi%
+ }{}%
+ \def\do##1{\appto\tud@res@a{\thanks{##1}}}%
+ \dolistloop{\tud@res@c}%
+ \fi%
+ \edef\tud@res@a{%
\endgroup%
- \def\noexpand\@tempa{\@tempa}%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed%
+ \noexpand\csgdef{@#1}{\expandonce\tud@res@a}%
+ \fi%
}%
- \@tempa%
- \ifstr{\@tempa}{diss}{\tud@thesis@@do{#1}{\dissertationname}}{%
- \ifstr{\@tempa}{doctoral}{\tud@thesis@@do{#1}{\dissertationname}}{%
- \ifstr{\@tempa}{phd}{\tud@thesis@@do{#1}{\dissertationname}}{%
- \ifstr{\@tempa}{diploma}{\tud@thesis@@do{#1}{\diplomathesisname}}{%
- \ifstr{\@tempa}{master}{\tud@thesis@@do{#1}{\masterthesisname}}{%
- \ifstr{\@tempa}{bachelor}{\tud@thesis@@do{#1}{\bachelorthesisname}}{%
- \ifstr{\@tempa}{student}{\tud@thesis@@do{#1}{\studentthesisname}}{%
- \ifstr{\@tempa}{evidence}{\tud@thesis@@do{#1}{\studentresearchname}}{%
- \ifstr{\@tempa}{project}{\tud@thesis@@do{#1}{\projectpapername}}{%
- \ifstr{\@tempa}{seminar}{\tud@thesis@@do{#1}{\seminarpapername}}{%
- \ifstr{\@tempa}{term}{\tud@thesis@@do{#1}{\termpapername}}{%
- \ifstr{\@tempa}{research}{\tud@thesis@@do{#1}{\researchname}}{%
- \ifstr{\@tempa}{log}{\tud@thesis@@do{#1}{\logname}}{%
- \ifstr{\@tempa}{report}{\tud@thesis@@do{#1}{\reportname}}{%
- \ifstr{\@tempa}{internship}{\tud@thesis@@do{#1}{\internshipname}}{%
- \csdef{@#1}{#2}%
- }}}}}}}}}}}}}}}%
-}
-\newcommand*\tud@thesis@@do[2]{%
- \ifstr{#1}{subject}{%
- \ifx\@thesis\@empty\else%
- \ClassWarning{\TUD@Class@Name}{%
- Field `thesis' is overwritten by `subject'%
- }%
- \fi%
- \TUD@key@preset{subjectthesis}{true}%
- }{%
- \TUD@key@preset{subjectthesis}{false}%
- }%
- \ifx\tud@thanks\relax%
- \gdef\@thesis{#2}%
- \else%
- \protected@xdef\@thesis{\noexpand#2\noexpand\thanks{\tud@thanks}}%
- \fi%
- \protected@xdef\@@thesis{\trim@spaces{#2}}%
+ \tud@res@a%
}
\newcommand*\@graduation{}
\newcommand*\@graduationabbreviation{}
\newcommand*\graduation[2][]{%
- \gdef\@graduationabbreviation{}%
- \ifxblank{#1}{}{\gdef\@graduationabbreviation{(#1)}}%
- \gdef\@graduation{#2}%
+ \tud@trim@field\@graduationabbreviation{#1}%
+ \tud@trim@field\@graduation{#2}%
}
\newcommand*\@professor{}
-\newcommand*\professor[1]{\gdef\@professor{#1}}
+\newcommand*\professor[1]{\tud@trim@field\@professor{#1}}
\newcommand*\@supervisor{}
-\newcommand*\supervisor[1]{\gdef\@supervisor{#1}}
+\newcommand*\supervisor[1]{\tud@trim@field\@supervisor{#1}}
\newcommand*\@supporter{}
-\newcommand*\supporter[1]{\gdef\@supporter{#1}}
+\newcommand*\supporter[1]{\tud@trim@field\@supporter{#1}}
\newcommand*\@company{}
-\newcommand*\company[1]{\gdef\@company{#1}}
+\newcommand*\company[1]{\tud@trim@field\@company{#1}}
\newcommand*\@referee{}
-\newcommand*\referee[1]{\gdef\@referee{#1}}
+\newcommand*\referee[1]{\tud@trim@field\@referee{#1}}
\newcommand*\@advisor{}
-\newcommand*\advisor[1]{\gdef\@advisor{#1}}
-\newlength\tud@len@signatureskip
-\setlength\tud@len@signatureskip{8ex plus 6ex minus 6ex}
+\newcommand*\advisor[1]{\tud@trim@field\@advisor{#1}}
+\tud@newglue\tud@glue@signaturevskip
+\tud@setglue\tud@glue@signaturevskip{8ex plus 6ex minus 6ex}
\newcommand*\@confirmationclosing{%
\tud@date@check%
\ifx\@date\@empty\else%
\medskip\noindent%
\ifx\@place\@empty\else\@place,\nobreakspace\fi\@date%
\fi%
- \vskip\tud@len@signatureskip\noindent%
+ \vskip\tud@glue@signaturevskip\noindent%
\begingroup%
\let\and\hfil%
\@@author\hfil%
\endgroup%
}
-\newcommand*\confirmationclosing[1]{\gdef\@confirmationclosing{#1}}
+\newcommand*\confirmationclosing[1]{\tud@trim@field\@confirmationclosing{#1}}
\newcommand*\@place{Dresden}
-\newcommand*\place[1]{\gdef\@place{#1}}
+\newcommand*\place[1]{\tud@trim@field\@place{#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}}
\TUD@UnwindPackage{isodate}{%
\@ifpackageloaded{datetime2}{%
@@ -3522,9 +3666,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{%
@@ -3570,26 +3715,43 @@
}
\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*\@defensedate{}
\newcommand*\defensedate[1]{\tud@printdate{\@defensedate}{#1}}
\newcommand*\@dateofbirth{}
-\newrobustcmd*\dateofbirth[1]{%
- \tud@printdate{\@dateofbirth}{#1}\ignorespaces%
+\newrobustcmd*\dateofbirth[1]{\tud@printdate{\@dateofbirth}{#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{%
@@ -3599,20 +3761,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}%
@@ -3628,6 +3797,7 @@
\tud@cs@restore{@##1}%
\global\csletcs{@##1}{@##1}%
}{}%
+ \ifcsdef{##1}{\tud@cs@restore{##1}}{}%
}%
\letcs\@tempb{tud@split#1@list}%
\let\and\relax%
@@ -3636,16 +3806,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%
@@ -3663,7 +3833,7 @@
matriculationnumber,studentid,matriculationid,%
placeofbirth,birthplace,dateofbirth,birthday,%
}
-%%% 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}{%
@@ -3673,7 +3843,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.%
}%
}%
@@ -3705,6 +3875,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}
@@ -3830,6 +4001,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}
@@ -3936,6 +4108,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}
@@ -3959,8 +4132,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
@@ -3970,73 +4143,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}%
@@ -4059,58 +4232,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%
@@ -4121,50 +4294,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{}
@@ -4180,8 +4351,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%
@@ -4195,11 +4366,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
@@ -4337,7 +4508,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}%
@@ -4351,7 +4522,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%
@@ -4360,11 +4531,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}%
@@ -4372,15 +4543,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%
}%
@@ -4401,16 +4572,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%
@@ -4449,11 +4623,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}%
}%
@@ -4470,25 +4644,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{%
@@ -4499,20 +4673,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%
@@ -4521,7 +4699,7 @@
\fi\fi\fi\fi%
\if@tempswa%
\@tempswafalse%
- \IfArgIsEmpty{##2}{}{\ifnumber{##2}{\@tempswatrue}{}}%
+ \IfArgIsEmpty{##2}{}{\Ifnumber{##2}{\@tempswatrue}{}}%
\fi%
}%
\expandafter\@tempb\@tempa\@nil%
@@ -4537,7 +4715,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}%
}{}%
@@ -4572,7 +4750,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}%
}%
}%
@@ -4587,16 +4765,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%
}%
}%
@@ -4605,24 +4783,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]{%
@@ -4673,7 +4852,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,%
@@ -4691,8 +4870,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,%
@@ -4703,7 +4881,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,%
@@ -4725,8 +4904,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,%
@@ -4740,37 +4918,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%
@@ -4789,45 +4973,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%
@@ -4848,68 +5030,69 @@
\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%
- \setlength\tud@len@areaheadvskip{.22\tud@len@topmargin}%
+ \ifdim\tud@dim@areadiff<\z@\relax\tud@setdim\tud@dim@areadiff{\z@}\fi%
+ \global\tud@dim@areadiff=\tud@dim@areadiff%
+ \tud@setdim\tud@dim@areaheadvskip{\tud@dim@topmargin*11/50}%
\if@tud@cdgeometry@adjust%
- \setlength\tud@len@areaheadvskip{.5\tud@len@areaheadvskip}%
+ \tud@setdim\tud@dim@areaheadvskip{\tud@dim@areaheadvskip/2}%
\fi%
- \global\tud@len@areaheadvskip=\tud@len@areaheadvskip%
+ \global\tud@dim@areaheadvskip=\tud@dim@areaheadvskip%
\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%
}%
@@ -4944,11 +5127,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%
@@ -4975,12 +5158,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%
@@ -5006,14 +5189,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}%
@@ -5024,90 +5207,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%
@@ -5115,17 +5292,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}%
}%
@@ -5139,8 +5316,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{}%
@@ -5155,41 +5332,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%
@@ -5198,10 +5386,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}%
@@ -5211,24 +5399,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%
@@ -5237,8 +5425,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%
@@ -5247,9 +5435,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%
@@ -5258,10 +5445,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%
@@ -5270,11 +5457,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%
@@ -5283,16 +5469,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%
@@ -5307,7 +5493,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}%
@@ -5317,7 +5505,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%
@@ -5329,7 +5517,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%
@@ -5337,7 +5527,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
@@ -5350,13 +5540,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}%
@@ -5364,16 +5550,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}%
@@ -5386,7 +5569,7 @@
contents=\tud@head@bar@restore,%
]{tudheadings.last}%
\DeclareNewPageStyleByLayers[%
- onselect=\tud@ps@onselect,onbackground=\tud@ps@onbackground%
+ onbackground=\tud@ps@onbackground%
]{tudheadings}{%
tudheadings.head.back,%
tudheadings.head.content,%
@@ -5410,7 +5593,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,%
@@ -5436,7 +5619,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,%
@@ -5458,12 +5641,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}%
@@ -5472,6 +5653,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}
@@ -5480,13 +5677,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}}
@@ -5502,26 +5701,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}
@@ -5561,7 +5755,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}%
@@ -5586,8 +5780,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{}
@@ -5595,13 +5791,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%
@@ -5612,7 +5808,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%
@@ -5624,7 +5820,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{%
@@ -5638,7 +5834,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%
@@ -5650,16 +5846,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}%
@@ -5667,16 +5863,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%
@@ -5684,33 +5882,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}{%
@@ -5725,14 +5964,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}%
}
@@ -5742,26 +5985,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}}%
@@ -5772,18 +6006,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}%
}%
@@ -5802,11 +6037,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%
@@ -5820,57 +6065,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%
@@ -5882,12 +6129,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%
}%
}%
@@ -5905,14 +6152,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}%
@@ -5942,11 +6190,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.%
@@ -5960,26 +6211,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%
}%
@@ -5991,22 +6243,22 @@
}
\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@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%
@@ -6016,44 +6268,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%
}%
@@ -6061,39 +6298,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}%
@@ -6122,13 +6345,13 @@
\newcommand*\tud@envir@ps{tudheadings}
\newcommand*\tud@envir@selectps{%
\expandafter\pagestyle\expandafter{\tud@envir@ps}%
- \ifstr{\GetRealPageStyle{\tud@envir@ps}}{empty}{%
+ \tud@if@strequal{\GetRealPageStyle{\tud@envir@ps}}{empty}{%
\renewcommand*\titlepagestyle{empty}%
\renewcommand*\partpagestyle{empty}%
\renewcommand*\chapterpagestyle{empty}%
\renewcommand*\indexpagestyle{empty}%
}{}%
- \ifstr{\GetRealPageStyle{\tud@envir@ps}}{empty.tudheadings}{%
+ \tud@if@strequal{\GetRealPageStyle{\tud@envir@ps}}{empty.tudheadings}{%
\renewcommand*\titlepagestyle{empty.tudheadings}%
\renewcommand*\partpagestyle{empty.tudheadings}%
\renewcommand*\chapterpagestyle{empty.tudheadings}%
@@ -6169,11 +6392,12 @@
\TUD@parameter@def{language}{\selectlanguage{#1}}%
\TUD@parameter@def{columns}{\renewcommand*\tud@x@multicol@num{#1}}%
\TUD@parameter@def{pagestyle}{%
- \tud@if@tudheadings{#1}{\renewcommand*\tud@envir@ps{#1}}{%
- \ifstr{#1}{empty}{\renewcommand*\tud@envir@ps{empty.tudheadings}}{%
- \ifstr{#1}{plain}{\renewcommand*\tud@envir@ps{plain.tudheadings}}{%
- \ifstr{#1}{headings}{\renewcommand*\tud@envir@ps{tudheadings}}{%
- \TUD@parameter@error{pagestyle}{%
+ \tud@if@tudheadings{#1}{\def\tud@envir@ps{#1}}{%
+ \def\tud@envir@ps{tudheadings}%
+ \tud@if@strequal{#1}{empty}{\def\tud@envir@ps{empty.tudheadings}}{%
+ \tud@if@strequal{#1}{plain}{\def\tud@envir@ps{plain.tudheadings}}{%
+ \tud@if@strequal{#1}{headings}{}{%
+ \TUD@parameter@err{pagestyle}{%
headings, plain, empty or any tudheadings page style type%
}%
}}}%
@@ -6189,7 +6413,7 @@
capabilities of package `scrlayer-scrpage' instead%
}%
]{fancyhdr}
-%%% From File: tudscr-layout.dtx
+%%%% From File: tudscr-layout.dtx (no git version info was found)
\newcommand*\tud@cleardoublespecialpage[2][]{%
\begingroup%
\addtokomafont{pagenumber}{\usekomafont{tudheadings}}%
@@ -6226,37 +6450,49 @@
}%
\global\let\tud@clearcolor@wrn\relax%
}
-\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%
+\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[%
@@ -6278,15 +6514,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
@@ -6298,46 +6544,35 @@
\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@part@hook{}
+\let\tud@part@hook\relax
+\AddtoDoHook{heading/begingroup/part}{\tud@part@hook}
\newcommand*\tud@title@fontcolor{}
\newcommand*\tud@part@fontcolor{}
\newcommand*\tud@chapter@fontcolor{}
@@ -6361,16 +6596,17 @@
\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}%
}%
\tud@komafont@set{author}{\usekomafont{subject}}%
@@ -6378,6 +6614,7 @@
\tud@komafont@set{date}{\usekomafont{titlepage}}%
\fi%
\ifcase\tud@cd@part@num\relax% false
+ \tud@cs@restore{partlineswithprefixformat}%
\tud@cs@restore{scr@part@beforeskip}%
\tud@cs@restore{scr@part@innerskip}%
\tud@cs@restore{scr@part@afterskip}%
@@ -6385,17 +6622,19 @@
\tud@cs@restore{partheadendvskip}%
\tud@cs@restore{partheademptypage}%
\tud@cs@restore{partpagestyle}%
- \tud@cs@restore{partlineswithprefixformat}%
+ \let\tud@part@hook\relax%
\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@beforeskip}%
+ \renewcommand*\scr@part@beforeskip{\tud@cd@beforevskip@@dim}%
\tud@cs@store{scr@part@innerskip}%
- \renewcommand*\scr@part@innerskip{\tud@cd@innerskip}%
+ \renewcommand*\scr@part@innerskip{\tud@cd@innervskip@@dim}%
\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{partheadendvskip}%
@@ -6404,51 +6643,51 @@
\let\partheademptypage\tud@partheademptypage%
\tud@cs@store{partpagestyle}%
\renewcommand*\partpagestyle{plain.tudheadings}%
- \tud@cs@store{partlineswithprefixformat}%
- \let\partlineswithprefixformat\tud@partlineswithprefixformat%
+ \def\tud@part@hook{\let\setparsizes\@gobblefour}%
\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}%
\renewcommand*\raggedpart{\tud@raggedright}%
\fi%
\ifcase\tud@cd@chapter@num\relax% false
+ \tud@cs@restore{chapterlineswithprefixformat}%
+ \tud@cs@restore{chapterlinesformat}%
\tud@cs@restore{scr@chapter@beforeskip}%
\tud@cs@restore{scr@chapter@innerskip}%
\tud@cs@restore{scr@chapter@afterskip}%
\tud@cs@restore{chapterheadstartvskip}%
- \tud@cs@restore{chapterlineswithprefixformat}%
- \tud@cs@restore{chapterlinesformat}%
\tud@cs@restore{tud@chapter@before@hook}%
\tud@cs@restore{tud@chapter@after@hook}%
\tud@komafont@unset{chapter}%
\tud@komafont@unset{chapterprefix}%
\tud@cs@restore{raggedchapter}%
\else% !false
+ \tud@cs@store{chapterlineswithprefixformat}%
+ \let\chapterlineswithprefixformat\tud@chapterlineswithprefixformat%
+ \tud@cs@store{chapterlinesformat}%
+ \let\chapterlinesformat\tud@chapterlinesformat%
\tud@cs@store{scr@chapter@beforeskip}%
- \renewcommand*\scr@chapter@beforeskip{\tud@cd@beforeskip}%
+ \renewcommand*\scr@chapter@beforeskip{\tud@cd@beforevskip@@dim}%
\tud@cs@store{scr@chapter@innerskip}%
- \renewcommand*\scr@chapter@innerskip{\tud@cd@innerskip}%
+ \renewcommand*\scr@chapter@innerskip{\tud@cd@innervskip@@dim}%
\tud@cs@store{scr@chapter@afterskip}%
- \renewcommand*\scr@chapter@afterskip{\tud@cd@afterskip}%
+ \renewcommand*\scr@chapter@afterskip{\tud@cd@aftervskip@@glue}%
\tud@cs@store{chapterheadstartvskip}%
\let\chapterheadstartvskip\tud@chapterheadstartvskip%
- \tud@cs@store{chapterlineswithprefixformat}%
- \let\chapterlineswithprefixformat\tud@chapterlineswithprefixformat%
- \tud@cs@store{chapterlinesformat}%
- \let\chapterlinesformat\tud@chapterlinesformat%
\tud@cs@store{tud@chapter@before@hook}%
\renewcommand*\tud@chapter@before@hook{\tud@chapter@pre}%
\tud@cs@store{tud@chapter@after@hook}%
\renewcommand*\tud@chapter@after@hook{\tud@chapter@app}%
\tud@komafont@set{chapter}{%
\tud@sec@fontface%
- \tud@sec@fontsize%
+ \tud@sec@fontsizecmd%
\tud@color{\tud@chapter@fontcolor}%
}%
\tud@komafont@set{chapterprefix}{\usesizeofkomafont{partnumber}}%
@@ -6493,12 +6732,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%
@@ -6518,35 +6757,64 @@
\tud@komafont@unset{footnote}%
\tud@cs@restore{footnoterule}%
}
-\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%
}
+\patchcmd\scr@startpart{%
+ \partheadstartvskip
+ \vbox to\z@{\vss\use@preamble{#1@o}\strut\par}%
+ \vskip-\baselineskip\nobreak
+}{%
+ \ifcase\tud@cd@part@num\relax% false
+ \partheadstartvskip%
+ \vbox to\z@{\vss\use@preamble{#1@o}\strut\par}%
+ \vskip-\baselineskip\nobreak%
+ \else%
+ {%
+ \setbox\z@\vbox{%
+ \vskip\dimexpr%
+ \tud@cd@innervskip@@dim-\tud@sec@baselineskip@@dim-\baselineskip%
+ \relax%
+ \use@preamble{#1@o}\strut\par%
+ }%
+ \vbox to \z@{\box\z@\vss}%
+ \vskip\dimexpr\parskip-\baselineskip\relax%
+ }%
+ \partheadstartvskip%
+ \fi%
+}{}{\tud@patch@wrn{scr@startpart}}
\newcommand*\tud@preamble@fontcolor{}
\newcommand*\tud@partpreamble{%
- \@tempskipa=\glueexpr\tud@cd@afterskip\relax%
- \ifdim\@tempskipa<\z@\@tempskipa-\@tempskipa\fi%
+ \tud@setglue\@tempskipa{\tud@cd@aftervskip@@glue}%
+ \tud@length@setabsolute\@tempskipa%
\vskip\@tempskipa%
\ifnum\tud@abstract@level@num>\@ne\relax% sec/chap
\renewcommand*\tud@abstract@level@num{1}%
\fi%
\KOMAoptions{titlepage=false}%
- \null\vskip-\baselineskip%
+ \null\vskip-1\baselineskip%
\addtokomafont{disposition}{\tud@color{\tud@part@fontcolor}}%
\addtokomafont{dictum}{\tud@color{\tud@part@fontcolor}}%
\let\tud@preamble@fontcolor\tud@part@fontcolor%
@@ -6557,7 +6825,7 @@
\renewcommand*\tud@abstract@level@num{1}%
\fi%
\KOMAoptions{titlepage=false}%
- \null\vskip-\baselineskip%
+ \null\vskip-1\baselineskip%
\if@tud@chapterpage%
\addtokomafont{disposition}{\tud@color{\tud@chapter@fontcolor}}%
\addtokomafont{dictum}{\tud@color{\tud@chapter@fontcolor}}%
@@ -6570,7 +6838,7 @@
\hbox to\hsize{#4\parbox[{#2}]{#3}{#6\par}#5\par}%
}%
}
-\patchcmd{\set@@@@preamble}{%
+\patchcmd\set@@@@preamble{%
\hbox to\hsize{#4\parbox[{#2}]{#3}{#6\par}#5\par}%
}{%
\def\@tempa####1@####2{%
@@ -6586,24 +6854,30 @@
\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@chapter@subtitle{}
\newcommand*\setchaptersubtitle[1]{\gdef\tud@chapter@subtitle{#1}}
\newkomafont{chaptersubtitle}{%
- \tud@thesis@fontsize%
- \fontseries{\tud@cdfont@bf}\selectfont%
+ \tud@subtitle@fontsizecmd%
+ \fontseriesforce{\tud@cdfont@bf}\selectfont%
\tud@color{\tud@chapter@fontcolor}%
}
\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}%
}%
}
+\AddtoDoHook{heading/preinit/part}{
+ \TUD@deprecated@length\pageheadingsvskip%
+}
\newcommand*\tud@partheadstartvskip{%
\renewcommand*\tud@part@fontcolor{}% false/true
\ifcase\tud@cd@part@num\relax\or\or% litecolor
@@ -6618,9 +6892,8 @@
\renewcommand*\tud@part@fontcolor{HKS41!30}%
\fi%
\tud@cd@specialpage@set{part}%
- \tud@cd@headstartvskip%
- \TUD@deprecated@lengthcs{pageheadingsvskip}%
- \vspace*{\tud@dim@pageheadingsvskip}%
+ \tud@cd@headstart@vskip%
+ \vspace*{\dimexpr\tud@pageheadingsvskip@dim\relax}%
}
\newcommand*\tud@partheademptypage{%
\tud@cleardoublespecialpage{%
@@ -6646,6 +6919,7 @@
}
\newcommand*\tud@partformat{}%
\newcommand*\tud@partlineswithprefixformat[3]{%
+ \vskip-2\parskip%
\if@tud@parttitle%
\ifx\@@title\@empty%
\ClassWarning{\TUD@Class@Name}{%
@@ -6654,48 +6928,59 @@
}%
\fi%
\tud@cd@vphantom%
- \tud@sec@format[#1]{%
- \usekomafont{#1}{\nobreak\interlinepenalty \@M\@@title\strut\@@par}%
+ \usekomafont{#1}{%
+ \tud@sec@format{\nobreak\interlinepenalty\@M\@@title\strut\@@par}%
}%
- \setpartsubtitle{%
- \setkomafont{part}{}%
- \tud@sec@format[partnumber]{\IfUseNumber{\partformat\enskip}{}#3}%
+ \def\tud@partformat##1\nobreak\interlinepenalty\@M##2\strut\@@par##3\@nil{%
+ \def\tud@partformat{\IfUseNumber{\partformat\enskip}{}##2}%
}%
+ \expandafter\expandafter\expandafter\tud@partformat%
+ \expandafter\@firstofone\@gobbletwo#3\@nil%
+ \expandafter\setpartsubtitle\expandafter{\tud@partformat}%
\else%
\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}%
\fi%
\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
+\AddtoDoHook{heading/preinit/chapter}{
+ \if@tud@chapterpage%
+ \TUD@deprecated@length\pageheadingsvskip%
+ \else%
+ \TUD@deprecated@length\headingsvskip%
+ \fi%
+}
\newcommand*\tud@chapterheadstartvskip{%
\renewcommand*\tud@chapter@fontcolor{}%
\ifcase\tud@cd@chapter@num\relax\or\else% *color
\renewcommand*\tud@chapter@fontcolor{HKS41}%
\fi%
- \tud@cd@headstartvskip%
+ \tud@cd@headstart@vskip%
\if@tud@chapterpage%
- \TUD@deprecated@lengthcs{pageheadingsvskip}%
- \vspace*{\tud@dim@pageheadingsvskip}%
+ \vspace*{\dimexpr\tud@pageheadingsvskip@dim\relax}%
\else%
- \TUD@deprecated@lengthcs{headingsvskip}%
- \vspace*{\tud@dim@headingsvskip}%
+ \vspace*{\dimexpr\tud@headingsvskip@dim\relax}%
\fi%
}
\newcommand*\tud@chapterformat{}%
\newcommand*\tud@chapterlineswithprefixformat[3]{%
- \edef\tud@chapterformat{%
- \noexpand\tud@sec@format{\expandonce\chapterformat}%
- }%
+ \edef\tud@chapterformat{\noexpand\tud@sec@format{\expandonce\chapterformat}}%
\let\chapterformat\tud@chapterformat%
\IfUseNumber{}{\tud@cd@vphantom}%
- #2\tud@sec@format[#1]{#3}%
+ #2\tud@sec@format[{#1}]{#3}%
\tud@sec@subtitle{#1}%
}
\newcommand*\tud@chapterlinesformat[3]{%
\tud@cd@vphantom%
- \@hangfrom{#2}{\tud@sec@format[#1]{#3}}%
+ \@hangfrom{#2}{\tud@sec@format[{#1}]{#3}}%
\tud@sec@subtitle{#1}%
}
\newcommand*\tud@chapter@pre{%
@@ -6757,34 +7042,33 @@
}
\newcommand*\tud@chapter@before@hook{}
\newcommand*\tud@chapter@after@hook{}
-\pretocmd{\scr@startchapter}{%
+\pretocmd\scr@startchapter{%
\tud@chapter@before@hook%
}{}{\tud@patch@wrn{scr@startchapter}}
-\apptocmd{\scr@@startchapter}{%
+\apptocmd\scr@@startchapter{%
\tud@chapter@after@hook%
}{}{\tud@patch@wrn{scr@@startchapter}}
-\apptocmd{\scr@@startschapter}{%
+\apptocmd\scr@@startschapter{%
\tud@chapter@after@hook%
}{}{\tud@patch@wrn{scr@@startschapter}}
\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{thesis}{%
\usekomafont{title}%
- \tud@thesis@fontsize%
+ \tud@subtitle@fontsizecmd%
}
\newkomafont{titlepage}{%
\raggedtitle%
@@ -6798,6 +7082,8 @@
\newcommand*\tud@title@pagenumber{}
\let\tud@title@pagenumber\relax
\newcommand*\tud@maketitle[1][]{%
+ \TUD@deprecated@length\pageheadingsvskip%
+ \TUD@deprecated@length\headingsvskip%
\begingroup%
\cleardoublepage%
\TUD@parameter@set{title}{#1}%
@@ -6811,7 +7097,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%
@@ -6845,7 +7133,9 @@
}
\tud@cs@store{maketitle}
\let\maketitle\tud@maketitle
-\patchcmd{\titlepage}{\thispagestyle{empty}}{%
+\patchcmd\titlepage{%
+ \thispagestyle{empty}%
+}{%
\tud@if@tudheadings{\currentpagestyle}{%
\thispagestyle{empty.tudheadings}%
}{%
@@ -6915,19 +7205,18 @@
\fi%
\next@tdpage%
\fi%
- \tud@cd@headstartvskip%
- \TUD@deprecated@lengthcs{pageheadingsvskip}%
- \vspace*{\tud@dim@pageheadingsvskip}%
+ \vspace*{-\baselineskip}%
+ \tud@cd@headstart@vskip%
+ \vspace*{\dimexpr\tud@pageheadingsvskip@dim\relax}%
\tud@cd@vphantom%
\setparsizes{\z@}{\z@}{\z@\@plus1fil}\par@updaterelative%
{\usekomafont{titlepage}{%
\tud@maketitle@head%
{\usekomafont{title}{\tud@title@format{\@title}\par}}%
\ifx\@subtitle\@empty\else%
- {\usekomafont{partnumber}{\nobreak\tud@sec@strut}}%
- {\usekomafont{subtitle}{\tud@title@format{\@subtitle}\par}}%
+ {\usekomafont{subtitle}{\tud@title@format[partnumber]{\@subtitle}\par}}%
\fi%
- \vskip 2\bigskipamount%
+ \vskip\glueexpr\bigskipamount*2\relax%
\let\tud@split@author@do\tud@split@author@title%
\tud@multiple@split{@author}\par%
\vskip 2ex\@plus1ex\@minus1ex%
@@ -6950,7 +7239,7 @@
\def\@tempc{%
\@graduation%
\ifx\@graduationabbreviation\@empty\else%
- \nobreakspace\@graduationabbreviation%
+ \nobreakspace(\@graduationabbreviation)%
\fi%
}%
{\usekomafont{titlepage}{\graduationtext\par}}%
@@ -6970,10 +7259,10 @@
\tud@date@check%
\ifx\@date\@empty\else%
\vskip 2ex\@plus1ex\@minus1ex%
- \ifxblank{\datetext}{}{\datetext\tud@title@delimiter}%
+ \tud@if@strblank{\datetext}{}{\datetext\tud@title@delimiter}%
{\usekomafont{date}{\tud@date@print\par}}%
\ifx\@defensedate\@empty\else%
- \ifxblank{\defensedatetext}{}{%
+ \tud@if@strblank{\defensedatetext}{}{%
\defensedatetext\tud@title@delimiter%
}%
{\usekomafont{date}{\@defensedate\par}}%
@@ -6982,7 +7271,7 @@
\fi%
\if@tud@titlesignature%
\let\tud@split@@author@do\tud@split@author@signature%
- \vskip\tud@len@signatureskip\noindent%
+ \vskip\tud@glue@signaturevskip\noindent%
\tud@ifin@and{\@@author}{}{\hfill}%
\tud@multiple@split{@@author}%
\fi%
@@ -7060,7 +7349,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%
@@ -7084,7 +7375,7 @@
\ifx\@extratitle\@empty%
\ifx\@frontispiece\@empty\else%
\if@twoside\null\fi%
- \fi
+ \fi%
\else%
\tud@res@a{\@makeextratitle}%
\fi%
@@ -7100,9 +7391,9 @@
}
\newcommand*\tud@maketitle@@inpage{%
\global\@topnum=\z@%
- \tud@cd@headstartvskip%
- \TUD@deprecated@lengthcs{headingsvskip}%
- \vspace*{\tud@dim@headingsvskip}%
+ \vspace*{-\baselineskip}%
+ \tud@cd@headstart@vskip%
+ \vspace*{\dimexpr\tud@headingsvskip@dim\relax}%
\tud@cd@vphantom%
\setparsizes{\z@}{\z@}{\z@\@plus1fil}\par@updaterelative%
{\usekomafont{titlepage}{%
@@ -7111,11 +7402,10 @@
\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%
- \vskip 2\bigskipamount%
+ \vskip\bigskipamount%
\let\tud@split@author@do\tud@split@author@title%
\tud@multiple@split{@author}\par%
\ifx\@date\@empty\else%
@@ -7135,11 +7425,9 @@
\ifx\@advisor\@empty\else\tud@title@wrn{advisor}\fi%
\ifx\@supervisor\@empty\else\tud@title@wrn{supervisor}\fi%
\ifx\@professor\@empty\else\tud@title@wrn{professor}\fi%
- \vskip 2\bigskipamount%
+ \vskip\bigskipamount%
\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]}{}%
}}%
@@ -7147,43 +7435,27 @@
\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%
\tud@thesis@tosubject%
\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%
- \vskip\dimexpr-\@tempdima-\p@-\medskipamount\relax%
+ \vskip\dimexpr-\@tempdima-\p@-1\medskipamount\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*\tud@thesis@tosubject{%
\if@tud@subjectthesis\ifx\@thesis\@empty\else%
@@ -7234,7 +7506,9 @@
\ifx\@dateofbirth\@empty\else%
\if@titlepage%
\tud@newline@title%
- \ifxblank{\dateofbirthtext}{}{\dateofbirthtext\tud@title@delimiter}%
+ \tud@if@strblank{\dateofbirthtext}%
+ {}%
+ {\dateofbirthtext\tud@title@delimiter}%
\@dateofbirth%
\ifx\@placeofbirth\@empty\else%
\nobreakspace\placeofbirthtext\nobreakspace\@placeofbirth%
@@ -7244,15 +7518,17 @@
\fi%
\fi%
\def\@tempc##1{%
- \ifstr{\csuse{@##1}}{}{}{%
+ \expandafter\ifx\csname @##1\endcsname\@empty\else%
\if@titlepage%
\tud@newline@title%
- \ifstr{\csuse{##1name}}{}{}{\csuse{##1name}\tud@title@delimiter}%
+ \tud@if@strblank{\csuse{##1name}}%
+ {}%
+ {\csuse{##1name}\tud@title@delimiter}%
\csuse{@##1}%
\else%
\tud@title@wrn{##1}%
\fi%
- }%
+ \fi%
}%
\@tempc{course}%
\@tempc{discipline}%
@@ -7271,9 +7547,9 @@
\newcommand*\tud@split@author@signature[2]{%
\tud@multiple@fields@store{@author}{#1}%
\vbox{%
- \hsize=.3\textwidth%
+ \hsize=\dimexpr\textwidth*3/10\relax%
\centering%
- \rule{.3\textwidth}{.05pt}\newline%
+ \rule{\dimexpr\textwidth*3/10\relax}{.05pt}\newline%
\ignorespaces#1\strut\unskip%
}%
\tud@multiple@fields@restore{@author}%
@@ -7282,15 +7558,16 @@
\newcommand\maketitleonecolumn[2][]{%
\if@twocolumn%
\if@titlepage%
- \tud@maketitle[#1]%
- \onecolumn{#2}\twocolumn%
+ \tud@maketitle[{#1}]%
+ \onecolumn#2\twocolumn%
\else%
- \tud@title@twocolumn{\tud@maketitle[#1]{#2}}%
+ \tud@title@twocolumn{\tud@maketitle[{#1}]#2}%
\fi%
\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
@@ -7300,14 +7577,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%
}{}%
@@ -7317,7 +7594,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%
@@ -7330,13 +7607,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%
}{}%
}
-\newif\if@tud@coverpage
+\tud@newif\if@tud@coverpage
\newcommand*\makecover[1][]{%
\if@titlepageiscoverpage%
\ClassWarning{\TUD@Class@Name}{%
@@ -7373,23 +7650,22 @@
\if@tud@cdgeometry@cover%
\if@tud@coverpage%
\def\coverpagetopmargin{%
- \dimexpr\tud@len@topmargin+\tud@len@barheight%
- +\tud@len@headsep\relax%
+ \tud@dim@topmargin+\tud@dim@barheight+\tud@dim@headsep%
}%
\else%
\tud@if@v@lower{2.03}{%
- \def\coverpagetopmargin{.5\tud@len@both}%
+ \def\coverpagetopmargin{\tud@dim@bothmargin/2}%
}{%
- \def\coverpagetopmargin{\tud@len@slimmargin}%
+ \def\coverpagetopmargin{\tud@dim@slimmargin}%
}%
\fi%
\tud@if@v@lower{2.03}{%
- \def\coverpagebottommargin{.5\tud@len@both}%
+ \def\coverpagebottommargin{\tud@dim@bothmargin/2}%
}{%
- \def\coverpagebottommargin{\tud@len@widemargin}%
+ \def\coverpagebottommargin{\tud@dim@widemargin}%
}%
- \def\coverpageleftmargin{\tud@len@widemargin}%
- \def\coverpagerightmargin{\tud@len@slimmargin}%
+ \def\coverpageleftmargin{\tud@dim@widemargin}%
+ \def\coverpagerightmargin{\tud@dim@slimmargin}%
\fi%
\if@tud@coverpage%
\edef\titlepage@restore{%
@@ -7402,7 +7678,7 @@
}%
\begingroup%
\tud@cover@setmargins%
- \tud@len@areavskip=\z@%
+ \tud@setdim\tud@dim@areavskip{\z@}%
\tud@maketitle%
\clearpage%
\titlepage@restore%
@@ -7433,41 +7709,37 @@
\TUD@parameter@ps@def{#1}%
\TUD@parameter@handler@value{pagenumber}%
}
-\renewcommand*{\coverpagetopmargin}{%
+\renewcommand*\coverpagetopmargin{%
\if@tud@coverpage%
- \dimexpr\tud@len@topmargin+\tud@len@barheight+\tud@len@headsep\relax%
+ \tud@dim@topmargin+\tud@dim@barheight+\tud@dim@headsep%
\else%
- \dimexpr\topmargin+1in\relax%
+ \topmargin+1in%
\fi%
}
-\renewcommand*{\coverpagebottommargin}{%
+\renewcommand*\coverpagebottommargin{%
\if@tud@coverpage%
- \dimexpr\tud@len@widemargin\relax%
+ \tud@dim@widemargin%
\else%
- 2\dimexpr\coverpagetopmargin\relax%
+ \coverpagetopmargin*2%
\fi%
}
\newcommand*\tud@cover@fixmargins{%
\begingroup%
\tud@cdgeometry@assignlayout%
\tud@x@geometry@fixmargins%
- \setlength\@tempdima{%
- \dimexpr\coverpagebottommargin-\tud@len@layoutvoffset
- +\paperheight-\tud@len@layoutheight\relax%
+ \tud@setdim\@tempdima{%
+ \coverpagebottommargin-\tud@dim@layoutvoffset%
+ +\paperheight-\tud@dim@layoutheight%
}%
\edef\coverpagebottommargin{\the\@tempdima}%
- \setlength\@tempdima{%
- \dimexpr\coverpagetopmargin+\tud@len@layoutvoffset\relax%
- }%
+ \tud@setdim\@tempdima{\coverpagetopmargin+\tud@dim@layoutvoffset}%
\edef\coverpagetopmargin{\the\@tempdima}%
- \setlength\@tempdima{%
- \dimexpr\coverpagerightmargin-\tud@len@layouthoffset
- +\paperwidth-\tud@len@layoutwidth\relax%
+ \tud@setdim\@tempdima{%
+ \coverpagerightmargin-\tud@dim@layouthoffset%
+ +\paperwidth-\tud@dim@layoutwidth%
}%
\edef\coverpagerightmargin{\the\@tempdima}%
- \setlength\@tempdima{%
- \dimexpr\coverpageleftmargin+\tud@len@layouthoffset\relax%
- }%
+ \tud@setdim\@tempdima{\coverpageleftmargin+\tud@dim@layouthoffset}%
\edef\coverpageleftmargin{\the\@tempdima}%
\edef\tud@res@a{%
\endgroup%
@@ -7489,7 +7761,7 @@
-\coverpagebottommargin\relax%
\headheight=0pt%
\headsep=0pt%
- \footskip=\baselineskip%
+ \footskip=1\baselineskip%
\@colht=\textheight%
\@colroom=\textheight%
\vsize=\textheight%
@@ -7497,10 +7769,10 @@
\hsize=\columnwidth%
\linewidth=\hsize%
}
-%%% 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%
- \ifnumless{\csuse{tud@#1@level@num}}{3}{% false/true/section
+ \ifnum\csuse{tud@#1@level@num}<3\relax% false/true/section
\ifboolexpr{%
bool {@titlepage} and bool {@tud@#1@fil} and bool {@tud@#1@multi}%
}{%
@@ -7519,10 +7791,10 @@
\boolfalse{@tud@#1@fil}%
\fi%
}{}%
- }{% chapter
+ \else% chapter
\boolfalse{@tud@#1@multi}%
\boolfalse{@tud@#1@fil}%
- }%
+ \fi%
\ifnum\csuse{tud@#1@toc@num}>\tw@\relax%
\tud@fm@toc{#1}{#2}%
\fi%
@@ -7530,26 +7802,27 @@
#2%
}
\newcommand*\tud@fm@@toc{}
-\newcommand*\tud@fm@@@toc{}
\newcommand*\tud@fm@toc[2]{%
\ifbool{@tud@#1@multi}{%
\begingroup%
- \let\tud@fm@@@toc\@empty%
+ \let\tud@fm@@toc\@empty%
\renewcommand*\tud@fm@head[2]{%
- \protected@edef\@tempa{##2}%
- \protected@xdef\tud@fm@@toc{\tud@fm@@@toc\@tempa}%
- \protected@xdef\tud@fm@@@toc{\tud@fm@@toc/}%
+ \protected@xdef\tud@fm@@toc{%
+ \ifx\tud@fm@@toc\@empty\else\tud@fm@@toc/\fi##2%
+ }%
}%
\let\clearpage\relax%
\sbox\z@{\vbox{#2}}%
\csuse{phantomsection}%
\protected@edef\@tempa{%
- \noexpand\endgroup%
- \noexpand\ifnumodd{\csname tud@#1@toc@num\endcsname}{%
- \noexpand\addchaptertocentry{}{\tud@fm@@toc}%
- }{%
- \noexpand\addsectiontocentry{}{\tud@fm@@toc}%
- }%
+ \endgroup%
+ \ifx\tud@fm@@toc\@empty\else%
+ \ifodd\csuse{tud@#1@toc@num}\relax
+ \noexpand\addchaptertocentry{}{\tud@fm@@toc}%
+ \else
+ \noexpand\addsectiontocentry{}{\tud@fm@@toc}%
+ \fi
+ \fi%
}%
\@tempa%
}{%
@@ -7626,19 +7899,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%
@@ -7647,7 +7921,7 @@
\endgraf%
\endgroup%
\nopagebreak%
- \vskip\dimexpr\medskipamount-\parskip\relax%
+ \vskip\medskipamount\vskip-\parskip%
\@afterheading%
\or% section
\section*{#2}%
@@ -7716,7 +7990,7 @@
\clearpage%
\else%
\ifnum\tud@abstract@level@num=\tw@\relax%
- \vskip\dimexpr\bigskipamount-\parskip\relax%
+ \vskip\bigskipamount\vskip-\parskip%
\fi%
\fi%
]
@@ -7725,7 +7999,7 @@
\TUD@parameter@def{columns}{\renewcommand*\tud@x@multicol@num{#1}}%
\TUD@parameter@def{pagestyle}{\tud@fm@pagestyle{abstract}{#1}}%
\TUD@parameter@def{markboth}[true]{%
- \ifstrbool{#1}{%
+ \tud@if@strbool{#1}{%
\@tud@abstract@markbothtrue%
\ifx\tud@envir@ps\relax\def\tud@envir@ps{headings}\fi%
}{%
@@ -7746,7 +8020,7 @@
the environment `abstract'.%
}%
}
-\newif\if@tud@declarations
+\tud@newif\if@tud@declarations
\NewEnviron{declarations}[1][]{%
\@tud@declarationstrue%
\ifnum\tud@declaration@level@num>\tw@\relax\@titlepagetrue\fi% chapter
@@ -7775,7 +8049,7 @@
\clearpage%
\else%
\ifnum\tud@declaration@level@num=\tw@\relax%
- \vskip\dimexpr\bigskipamount-\parskip\relax%
+ \vskip\bigskipamount\vskip-\parskip%
\fi%
\fi%
]
@@ -7784,7 +8058,7 @@
\TUD@parameter@def{columns}{\renewcommand*\tud@x@multicol@num{#1}}%
\TUD@parameter@def{pagestyle}{\tud@fm@pagestyle{declaration}{#1}}%
\TUD@parameter@def{markboth}[true]{%
- \ifstrbool{#1}{%
+ \tud@if@strbool{#1}{%
\@tud@declaration@markbothtrue%
\ifx\tud@envir@ps\relax\def\tud@envir@ps{headings}\fi%
}{%
@@ -7815,29 +8089,29 @@
}%
}
\newcommand*\tud@fm@declaration[1][]{%
- \ifbool{@tud@declarations}{%
+ \if@tud@declarations%
\begingroup%
- \tud@fm@@confirmation[\tud@fm@supporter,#1]%
- \tud@fm@blocking[#1]%
+ \tud@fm@@confirmation[{\tud@fm@supporter,#1}]%
+ \tud@fm@blocking[{#1}]%
\endgroup%
- }{%
- \begin{declarations}[\tud@fm@supporter,#1]%
+ \else%
+ \begin{declarations}[{\tud@fm@supporter,#1}]%
\tud@fm@@confirmation%
\tud@fm@blocking%
\end{declarations}%
- }%
+ \fi%
}
\newcommand*\nextdeclaration[3][]{%
- \ifbool{@tud@declarations}{%
+ \if@tud@declarations%
\tud@fm@body@start{declaration}{#1}{#2}%
#3%
\tud@fm@body@end{declaration}%
- }{%
+ \else%
\ClassError{\TUD@Class@Name}{Incorrect usage of `\string\nextdeclaration'}{%
The command `\string\nextdeclaration' can only be used\MessageBreak%
within the environment `declarations'.%
}%
- }%
+ \fi%
}
\newcommand*\confirmation{%
\kernel@ifstar{%
@@ -7852,18 +8126,18 @@
\begingroup%
\TUD@parameter@handler@default[declaration]{supporter}%
\undef\KV@declaration@company%
- \ifbool{@tud@declarations}{%
- \tud@fm@@confirmation[\tud@fm@supporter,#1]%
- }{%
- \begin{declarations}[\tud@fm@supporter,#1]%
+ \if@tud@declarations%
+ \tud@fm@@confirmation[{\tud@fm@supporter,#1}]%
+ \else%
+ \begin{declarations}[{\tud@fm@supporter,#1}]%
\tud@fm@@confirmation%
\end{declarations}%
- }%
+ \fi%
\endgroup%
}
\newcommand*\tud@fm@@confirmation[1][]{%
\tud@fm@body@start{declaration}{#1}{\confirmationname}%
- \confirmationtext\vskip\z@\@confirmationclosing%
+ \confirmationtext\vskip\z@skip\@confirmationclosing%
\tud@fm@body@end{declaration}%
}
\newcommand*\blocking[1][]{%
@@ -7872,13 +8146,13 @@
\undef\KV@declaration@supporter%
\undef\KV@declaration@closing%
\undef\KV@declaration@confirmationclosing%
- \ifbool{@tud@declarations}{%
- \tud@fm@blocking[#1]%
- }{%
- \begin{declarations}[#1]%
+ \if@tud@declarations%
+ \tud@fm@blocking[{#1}]%
+ \else%
+ \begin{declarations}[{#1}]%
\tud@fm@blocking%
\end{declarations}%
- }%
+ \fi%
\endgroup%
}
\newcommand*\tud@fm@blocking[1][]{%
@@ -7886,76 +8160,15 @@
\blockingtext%
\tud@fm@body@end{declaration}%
}
-%%% From File: tudscr-comp.dtx
-\newlength\footlogoheight
-\setlength\footlogoheight{\maxdimen}
-\newlength\pageheadingsvskip
-\setlength\pageheadingsvskip{\maxdimen}
-\newlength\headingsvskip
-\setlength\headingsvskip{\maxdimen}
-\newcommand*\chapterheadingvskip{}
-\let\chapterheadingvskip\headingsvskip
-\TUD@deprecated@cs{professorship}{chair}
-\TUD@deprecated@cs{studentid}{matriculationnumber}
-\TUD@deprecated@cs{matriculationid}{matriculationnumber}
-\TUD@deprecated@cs{enrolmentyear}{matriculationyear}
-\TUD@deprecated@cs{birthplace}{placeofbirth}
-\TUD@deprecated@cs{submissiondate}{date}
-\TUD@deprecated@cs{oralexaminationdate}{defensedate}
-\TUD@deprecated@cs{birthday}{dateofbirth}
-\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{%
@@ -7964,7 +8177,6 @@
\let\@footnotemark\H@@footnotemark%
\let\@footnotetext\H@@footnotetext%
}%
- \pdfstringdefDisableCommands{\let\NoCaseChange\@firstofone}%
}
\newcommand*\tud@x@bookmark@startatroot{\relax}
\AfterPackage{bookmark}{%
@@ -7972,7 +8184,7 @@
\if@tud@bookmarks\bookmarksetup{startatroot}\fi%
}%
}
-\apptocmd{\titlepage}{%
+\apptocmd\titlepage{%
\tud@x@bookmark@startatroot%
\@tud@res@swafalse%
\if@tud@coverpage\@tud@res@swatrue\fi%
@@ -7987,13 +8199,13 @@
]{\titlepagename}{title}%
\fi%
}{}{\tud@patch@wrn{titlepage}}
-\pretocmd{\tud@maketitle@inpage}{%
+\pretocmd\tud@maketitle@inpage{%
\tud@x@bookmark@startatroot%
\tudbookmark[%
0%
]{\titlename}{title}%
}{}{\tud@patch@wrn{tud@maketitle@inpage}}
-\pretocmd{\@maketitle}{%
+\pretocmd\@maketitle{%
\tud@x@bookmark@startatroot%
\tudbookmark[%
0%
@@ -8020,10 +8232,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%
@@ -8034,22 +8246,22 @@
\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
+\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%
@@ -8069,22 +8281,67 @@
\global\@tud@cdgeometry@processfalse%
\fi%
}
+%%%% From File: tudscr-comp.dtx (no git version info was found)
+\tud@newglue\footlogoheight
+\tud@setdim\footlogoheight{\maxdimen}
+\tud@newglue\pageheadingsvskip
+\tud@setdim\pageheadingsvskip{\maxdimen}
+\tud@newglue\headingsvskip
+\tud@setdim\headingsvskip{\maxdimen}
+\newcommand*\chapterheadingvskip{}
+\let\chapterheadingvskip\headingsvskip
+\TUD@deprecated@cs{professorship}{chair}
+\TUD@deprecated@cs{studentid}{matriculationnumber}
+\TUD@deprecated@cs{matriculationid}{matriculationnumber}
+\TUD@deprecated@cs{enrolmentyear}{matriculationyear}
+\TUD@deprecated@cs{birthplace}{placeofbirth}
+\TUD@deprecated@cs{submissiondate}{date}
+\TUD@deprecated@cs{oralexaminationdate}{defensedate}
+\TUD@deprecated@cs{birthday}{dateofbirth}
+\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 `tudscrbook.cls'.
diff --git a/Master/texmf-dist/tex/latex/tudscr/tudscrcolor.sty b/Master/texmf-dist/tex/latex/tudscr/tudscrcolor.sty
index 06b4320a364..36d9ef4bf1c 100644
--- a/Master/texmf-dist/tex/latex/tudscr/tudscrcolor.sty
+++ b/Master/texmf-dist/tex/latex/tudscr/tudscrcolor.sty
@@ -4,14 +4,15 @@
%%
%% The original source files were:
%%
-%% tudscr-version.dtx (with options: `package,color')
+%% tudscr-version.dtx (with options: `package,color,identify')
%% tudscr-color.dtx (with options: `package,color')
%%
%% 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.
%% ----------------------------------------------------------------------------
@@ -27,54 +28,57 @@
%%
%% 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}
\@ifundefined{TUDScript}{%
\DeclareRobustCommand\TUDScript{%
- \textsf{%
- T\kern.05em U\kern.05em D\kern.1em-\kern.1em Script%
- }%
- \ifcsname xspace\endcsname%
- \xspace%
- \fi%
+ \mbox{%
+ \textsf{%
+ T\kern.05em U\kern.05em D\kern.1em-\kern.1em Script%
+ }%
+ }\ifcsname xspace\endcsname\xspace\fi%
}%
}{}
-%%% From File: tudscr-color.dtx
+\providecommand*\TUDScriptContact{hanisch.latex@outlook.com}
+\providecommand*\TUDScriptRepository{https://github.com/tud-cd/tudscr}
+\providecommand*\TUDScriptForum{https://latex.wcms-file3.tu-dresden.de/phpBB3/}
+%%%% From File: tudscr-color.dtx (no git version info was found)
\ProvidesPackage{tudscrcolor}[%
- 2021/07/15 v2.06n TUD-Script
- package
- (corporate design colors)%
+ 2022/08/09 v2.06o TUD-Script
+ package (corporate design colors)%
]
\DeclareOption{newcolors}{\let\tud@setcolors@add\relax}
\DeclareOption{reduced}{\let\tud@setcolors@add\relax}
\DeclareOption{oldcolors}{\let\tud@setcolors@add\tud@setcolors@old}
+\DeclareOption{extended}{\let\tud@setcolors@add\tud@setcolors@old}
\DeclareOption{full}{\let\tud@setcolors@add\tud@setcolors@old}
\newcommand*\setcdcolors[1]{%
\selectcolormodel{#1}%
@@ -119,171 +123,25 @@
}
\newcommand*\tud@setcolors@add{}
\newcommand*\tud@setcolors@old{%
- \colorlet{HKS41K10}{HKS41!10}%
- \colorlet{HKS41K20}{HKS41!20}%
- \colorlet{HKS41K30}{HKS41!30}%
- \colorlet{HKS41K40}{HKS41!40}%
- \colorlet{HKS41K50}{HKS41!50}%
- \colorlet{HKS41K60}{HKS41!60}%
- \colorlet{HKS41K70}{HKS41!70}%
- \colorlet{HKS41K80}{HKS41!80}%
- \colorlet{HKS41K90}{HKS41!90}%
- \colorlet{HKS41K100}{HKS41!100}%
- \colorlet{HKS92K10}{HKS92!10}%
- \colorlet{HKS92K20}{HKS92!20}%
- \colorlet{HKS92K30}{HKS92!30}%
- \colorlet{HKS92K40}{HKS92!40}%
- \colorlet{HKS92K50}{HKS92!50}%
- \colorlet{HKS92K60}{HKS92!60}%
- \colorlet{HKS92K70}{HKS92!70}%
- \colorlet{HKS92K80}{HKS92!80}%
- \colorlet{HKS92K90}{HKS92!90}%
- \colorlet{HKS92K100}{HKS92!100}%
- \colorlet{HKS44K10}{HKS44!10}%
- \colorlet{HKS44K20}{HKS44!20}%
- \colorlet{HKS44K30}{HKS44!30}%
- \colorlet{HKS44K40}{HKS44!40}%
- \colorlet{HKS44K50}{HKS44!50}%
- \colorlet{HKS44K60}{HKS44!60}%
- \colorlet{HKS44K70}{HKS44!70}%
- \colorlet{HKS44K80}{HKS44!80}%
- \colorlet{HKS44K90}{HKS44!90}%
- \colorlet{HKS44K100}{HKS44!100}%
- \colorlet{HKS36K10}{HKS36!10}%
- \colorlet{HKS36K20}{HKS36!20}%
- \colorlet{HKS36K30}{HKS36!30}%
- \colorlet{HKS36K40}{HKS36!40}%
- \colorlet{HKS36K50}{HKS36!50}%
- \colorlet{HKS36K60}{HKS36!60}%
- \colorlet{HKS36K70}{HKS36!70}%
- \colorlet{HKS36K80}{HKS36!80}%
- \colorlet{HKS36K90}{HKS36!90}%
- \colorlet{HKS36K100}{HKS36!100}%
- \colorlet{HKS33K10}{HKS33!10}%
- \colorlet{HKS33K20}{HKS33!20}%
- \colorlet{HKS33K30}{HKS33!30}%
- \colorlet{HKS33K40}{HKS33!40}%
- \colorlet{HKS33K50}{HKS33!50}%
- \colorlet{HKS33K60}{HKS33!60}%
- \colorlet{HKS33K70}{HKS33!70}%
- \colorlet{HKS33K80}{HKS33!80}%
- \colorlet{HKS33K90}{HKS33!90}%
- \colorlet{HKS33K100}{HKS33!100}%
- \colorlet{HKS57K10}{HKS57!10}%
- \colorlet{HKS57K20}{HKS57!20}%
- \colorlet{HKS57K30}{HKS57!30}%
- \colorlet{HKS57K40}{HKS57!40}%
- \colorlet{HKS57K50}{HKS57!50}%
- \colorlet{HKS57K60}{HKS57!60}%
- \colorlet{HKS57K70}{HKS57!70}%
- \colorlet{HKS57K80}{HKS57!80}%
- \colorlet{HKS57K90}{HKS57!90}%
- \colorlet{HKS57K100}{HKS57!100}%
- \colorlet{HKS65K10}{HKS65!10}%
- \colorlet{HKS65K20}{HKS65!20}%
- \colorlet{HKS65K30}{HKS65!30}%
- \colorlet{HKS65K40}{HKS65!40}%
- \colorlet{HKS65K50}{HKS65!50}%
- \colorlet{HKS65K60}{HKS65!60}%
- \colorlet{HKS65K70}{HKS65!70}%
- \colorlet{HKS65K80}{HKS65!80}%
- \colorlet{HKS65K90}{HKS65!90}%
- \colorlet{HKS65K100}{HKS65!100}%
- \colorlet{HKS07K10}{HKS07!10}%
- \colorlet{HKS07K20}{HKS07!20}%
- \colorlet{HKS07K30}{HKS07!30}%
- \colorlet{HKS07K40}{HKS07!40}%
- \colorlet{HKS07K50}{HKS07!50}%
- \colorlet{HKS07K60}{HKS07!60}%
- \colorlet{HKS07K70}{HKS07!70}%
- \colorlet{HKS07K80}{HKS07!80}%
- \colorlet{HKS07K90}{HKS07!90}%
- \colorlet{HKS07K100}{HKS07!100}%
- \colorlet{HKS41-10}{HKS41!10}%
- \colorlet{HKS41-20}{HKS41!20}%
- \colorlet{HKS41-30}{HKS41!30}%
- \colorlet{HKS41-40}{HKS41!40}%
- \colorlet{HKS41-50}{HKS41!50}%
- \colorlet{HKS41-60}{HKS41!60}%
- \colorlet{HKS41-70}{HKS41!70}%
- \colorlet{HKS41-80}{HKS41!80}%
- \colorlet{HKS41-90}{HKS41!90}%
- \colorlet{HKS41-100}{HKS41!100}%
- \colorlet{HKS92-10}{HKS92!10}%
- \colorlet{HKS92-20}{HKS92!20}%
- \colorlet{HKS92-30}{HKS92!30}%
- \colorlet{HKS92-40}{HKS92!40}%
- \colorlet{HKS92-50}{HKS92!50}%
- \colorlet{HKS92-60}{HKS92!60}%
- \colorlet{HKS92-70}{HKS92!70}%
- \colorlet{HKS92-80}{HKS92!80}%
- \colorlet{HKS92-90}{HKS92!90}%
- \colorlet{HKS92-100}{HKS92!100}%
- \colorlet{HKS44-10}{HKS44!10}%
- \colorlet{HKS44-20}{HKS44!20}%
- \colorlet{HKS44-30}{HKS44!30}%
- \colorlet{HKS44-40}{HKS44!40}%
- \colorlet{HKS44-50}{HKS44!50}%
- \colorlet{HKS44-60}{HKS44!60}%
- \colorlet{HKS44-70}{HKS44!70}%
- \colorlet{HKS44-80}{HKS44!80}%
- \colorlet{HKS44-90}{HKS44!90}%
- \colorlet{HKS44-100}{HKS44!100}%
- \colorlet{HKS36-10}{HKS36!10}%
- \colorlet{HKS36-20}{HKS36!20}%
- \colorlet{HKS36-30}{HKS36!30}%
- \colorlet{HKS36-40}{HKS36!40}%
- \colorlet{HKS36-50}{HKS36!50}%
- \colorlet{HKS36-60}{HKS36!60}%
- \colorlet{HKS36-70}{HKS36!70}%
- \colorlet{HKS36-80}{HKS36!80}%
- \colorlet{HKS36-90}{HKS36!90}%
- \colorlet{HKS36-100}{HKS36!100}%
- \colorlet{HKS33-10}{HKS33!10}%
- \colorlet{HKS33-20}{HKS33!20}%
- \colorlet{HKS33-30}{HKS33!30}%
- \colorlet{HKS33-40}{HKS33!40}%
- \colorlet{HKS33-50}{HKS33!50}%
- \colorlet{HKS33-60}{HKS33!60}%
- \colorlet{HKS33-70}{HKS33!70}%
- \colorlet{HKS33-80}{HKS33!80}%
- \colorlet{HKS33-90}{HKS33!90}%
- \colorlet{HKS33-100}{HKS33!100}%
- \colorlet{HKS57-10}{HKS57!10}%
- \colorlet{HKS57-20}{HKS57!20}%
- \colorlet{HKS57-30}{HKS57!30}%
- \colorlet{HKS57-40}{HKS57!40}%
- \colorlet{HKS57-50}{HKS57!50}%
- \colorlet{HKS57-60}{HKS57!60}%
- \colorlet{HKS57-70}{HKS57!70}%
- \colorlet{HKS57-80}{HKS57!80}%
- \colorlet{HKS57-90}{HKS57!90}%
- \colorlet{HKS57-100}{HKS57!100}%
- \colorlet{HKS65-10}{HKS65!10}%
- \colorlet{HKS65-20}{HKS65!20}%
- \colorlet{HKS65-30}{HKS65!30}%
- \colorlet{HKS65-40}{HKS65!40}%
- \colorlet{HKS65-50}{HKS65!50}%
- \colorlet{HKS65-60}{HKS65!60}%
- \colorlet{HKS65-70}{HKS65!70}%
- \colorlet{HKS65-80}{HKS65!80}%
- \colorlet{HKS65-90}{HKS65!90}%
- \colorlet{HKS65-100}{HKS65!100}%
- \colorlet{HKS07-10}{HKS07!10}%
- \colorlet{HKS07-20}{HKS07!20}%
- \colorlet{HKS07-30}{HKS07!30}%
- \colorlet{HKS07-40}{HKS07!40}%
- \colorlet{HKS07-50}{HKS07!50}%
- \colorlet{HKS07-60}{HKS07!60}%
- \colorlet{HKS07-70}{HKS07!70}%
- \colorlet{HKS07-80}{HKS07!80}%
- \colorlet{HKS07-90}{HKS07!90}%
- \colorlet{HKS07-100}{HKS07!100}%
+ \def\tud@res@a##1{%
+ \@for\tud@res@b:={10,20,30,40,50,60,70,80,90,100}\do{%
+ \colorlet{##1K\tud@res@b}{##1!\tud@res@b}%
+ \colorlet{##1-\tud@res@b}{##1!\tud@res@b}%
+ }%
+ }%
+ \tud@res@a{HKS41}%
+ \tud@res@a{HKS92}%
+ \tud@res@a{HKS44}%
+ \tud@res@a{HKS36}%
+ \tud@res@a{HKS33}%
+ \tud@res@a{HKS57}%
+ \tud@res@a{HKS65}%
+ \tud@res@a{HKS07}%
}
\DeclareOption*{\PassOptionsToPackage{\CurrentOption}{xcolor}}
\ExecuteOptions{reduced}
\ProcessOptions\relax
-\RequirePackage{xcolor}[2007/01/21]
+\RequirePackage{xcolor}
\tud@setcolors@do%
\endinput
%%
diff --git a/Master/texmf-dist/tex/latex/tudscr/tudscrcomp-book.sty b/Master/texmf-dist/tex/latex/tudscr/tudscrcomp-book.sty
deleted file mode 100644
index 7265c422432..00000000000
--- a/Master/texmf-dist/tex/latex/tudscr/tudscrcomp-book.sty
+++ /dev/null
@@ -1,198 +0,0 @@
-%%
-%% This is file `tudscrcomp-book.sty',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% tudscr-version.dtx (with options: `package,comp,book')
-%% tudscr-comp.dtx (with options: `package,comp,book,identify')
-%% tudscr-comp.dtx (with options: `package,comp,book,option')
-%% tudscr-misc.dtx (with options: `package,comp,book,execute')
-%% tudscr-comp.dtx (with options: `package,comp,book,body')
-%%
-%% TUD-Script -- Corporate Design of Technische Universitaet Dresden
-%%
-%% 2021/07/15 v2.06n TUD-Script
-%%
-%% Copyright (C) Falk Hanisch <hanisch.latex@outlook.com>, 2012-2021
-%%
-%% This file was generated from file(s) of the TUD-Script bundle.
-%% ----------------------------------------------------------------------------
-%%
-%% This work may be distributed and/or modified under the conditions of the
-%% LaTeX Project Public License, either version 1.3c of this license or
-%% any later version. The latest version of this license is in
-%% http://www.latex-project.org/lppl.txt
-%% and version 1.3c or later is part of all distributions of
-%% LaTeX version 2008-05-04 or later.
-%%
-%% This work has the LPPL maintenance status "maintained".
-%%
-%% The current maintainer and author of this work is Falk Hanisch.
-%%
-%%% From File: tudscr-version.dtx
-\begingroup
- \catcode`\@11\relax
- \ifx\TUD@Version\@undefined
- \newcommand*\TUD@Version@Check[1]{%
- \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]{%
- \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%
- }%
- \fi%
- }
- \fi
- \TUD@Version@Check{2021/07/15 v2.06n TUD-Script}
-\endgroup
-\NeedsTeXFormat{LaTeX2e}[2019/10/01]
-\providecommand*\tudscrmail{hanisch.latex@outlook.com}
-\ifx\TUD@Class@Name\@undefined
- \PackageError{%
- tudscrcomp-book%
- }{Unsupported class found}{%
- This package can only be used with a class out of the\MessageBreak%
- tudscr bundle (tudscrbook, tudscrreprt, tudscrartcl, tudscrposter).%
- }%
- \endinput%
-\fi
-\@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-comp.dtx
-\ProvidesPackage{tudscrcomp-book}[%
- 2021/07/15 v2.06n TUD-Script
- package
- (compatibility for old tud(scr) classes)%
-]
-%%% From File: tudscr-comp.dtx
-\TUD@key{colortitle}[true]{%
- \TUD@set@ifkey{colortitle}{@tempswa}{#1}%
- \ifx\FamilyKeyState\FamilyKeyStateProcessed%
- \if@tempswa%
- \TUDoptions{cdtitle=color}%
- \else%
- \TUDoptions{cdtitle=true}%
- \fi%
- \fi%
-}
-\TUD@key{nocolortitle}[true]{%
- \TUD@set@ifkey{nocolortitle}{@tempswa}{#1}%
- \ifx\FamilyKeyState\FamilyKeyStateProcessed%
- \if@tempswa%
- \TUDoptions{cdtitle=true}%
- \else%
- \TUDoptions{cdtitle=color}%
- \fi%
- \fi%
-}
-\TUD@key{ddcfooter}[true]{%
- \TUD@set@ifkey{ddcfooter}{@tempswa}{#1}%
- \ifx\FamilyKeyState\FamilyKeyStateProcessed%
- \if@tempswa%
- \TUDoptions{ddcfoot=true}%
- \else%
- \TUDoptions{ddcfoot=false}%
- \fi%
- \fi%
-}
-%%% From File: tudscr-misc.dtx
-\DeclareOption*{\expandafter\TUDoptions\expandafter{\CurrentOption}}
-\TUDExecuteOptions{%
-}
-\TUDProcessOptions\relax
-%%% From File: tudscr-comp.dtx
-\newcommand*\einrichtung{\faculty}
-\newcommand*\fachrichtung{\department}
-\newcommand*\institut{\institute}
-\newcommand*\professur{\chair}
-\newcommand*\dinBold{\dinbn}
-\newcommand*\dinfamily{\dinbn}
-\newcommand*\moreauthor{\authormore}
-\newcommand*\submitdate{\date}
-\newcommand*\supervisorII[1]{\g@addto@macro\@supervisor{\and #1}}
-\newcommand*\supervisedby[1]{\gdef\supervisorname{#1}}
-\newcommand*\supervisedIIby[1]{\gdef\supervisorothername{#1}}
-\newcommand*\submittedon[1]{\gdef\datetext{#1}}
-\newcommand*\dissertation{%
- \thesis{\dissertationname}%
- \let\supervisorname\refereename%
- \let\supervisorothername\refereeothername%
-}
-\AtBeginDocument{%
- \ifundef{\theglossary}{%
- \providecommand*\glossaryname{Glossar}%
- \newenvironment{theglossary}[1][]{%
- \PackageWarning{tudscrcomp}{%
- Using the environment `theglossary' is not\MessageBreak%
- recommended. You should rather use an appropriate\MessageBreak%
- package such as glossaries%
- }%
- \let\bibname\glossaryname%
- \bib@heading%
- #1%
- \list{}{%
- \setlength\labelsep{\z@}%
- \setlength\labelwidth{\z@}%
- \setlength\itemindent{-\leftmargin}%
- }%
- }{\endlist}%
- \newcommand\glossitem[1]{\item[] #1\par}%
- }{}%
-}
-\newif\if@tud@comp@chapterpage
-\newcommand*\chapterpage{%
- \global\@tud@comp@chapterpagetrue%
- \tud@comp@chapterpage@wrn%
-}
-\newcommand*\tud@comp@chapterpage@set{%
- \if@tud@comp@chapterpage%
- \if@tud@chapterpage%
- \TUDoptions{chapterpage=false}%
- \else%
- \TUDoptions{chapterpage=true}%
- \fi%
- \fi%
-}
-\newcommand*\tud@comp@chapterpage@unset{%
- \tud@comp@chapterpage@set%
- \global\@tud@comp@chapterpagefalse%
-}
-\newcommand*\tud@comp@chapterpage@wrn{%
- \PackageWarning{tudscrcomp}{%
- The command \string\chapterpage\space is not\MessageBreak%
- recommended. You should use the same style for\MessageBreak%
- chapters throughout the document%
- }%
- \global\let\tud@comp@chapterpage@wrn\relax%
-}
-\AtEndPreamble{%
- \if@chapter%
- \pretocmd{\tud@chapter@pre}{\tud@comp@chapterpage@set}%
- {}{\tud@patch@wrn{tud@chapter@pre}}%
- \apptocmd{\tud@chapter@app}{\tud@comp@chapterpage@unset}%
- {}{\tud@patch@wrn{tud@chapter@app}}%
- \fi%
-}
-\endinput
-%%
-%% End of file `tudscrcomp-book.sty'.
diff --git a/Master/texmf-dist/tex/latex/tudscr/tudscrcomp-poster.sty b/Master/texmf-dist/tex/latex/tudscr/tudscrcomp-poster.sty
deleted file mode 100644
index 6f28d71b4b9..00000000000
--- a/Master/texmf-dist/tex/latex/tudscr/tudscrcomp-poster.sty
+++ /dev/null
@@ -1,353 +0,0 @@
-%%
-%% This is file `tudscrcomp-poster.sty',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% tudscr-version.dtx (with options: `package,comp,poster')
-%% tudscr-comp.dtx (with options: `package,comp,poster,identify')
-%% tudscr-comp.dtx (with options: `package,comp,poster,option')
-%% tudscr-misc.dtx (with options: `package,comp,poster,execute')
-%% tudscr-comp.dtx (with options: `package,comp,poster,body')
-%%
-%% TUD-Script -- Corporate Design of Technische Universitaet Dresden
-%%
-%% 2021/07/15 v2.06n TUD-Script
-%%
-%% Copyright (C) Falk Hanisch <hanisch.latex@outlook.com>, 2012-2021
-%%
-%% This file was generated from file(s) of the TUD-Script bundle.
-%% ----------------------------------------------------------------------------
-%%
-%% This work may be distributed and/or modified under the conditions of the
-%% LaTeX Project Public License, either version 1.3c of this license or
-%% any later version. The latest version of this license is in
-%% http://www.latex-project.org/lppl.txt
-%% and version 1.3c or later is part of all distributions of
-%% LaTeX version 2008-05-04 or later.
-%%
-%% This work has the LPPL maintenance status "maintained".
-%%
-%% The current maintainer and author of this work is Falk Hanisch.
-%%
-%%% From File: tudscr-version.dtx
-\begingroup
- \catcode`\@11\relax
- \ifx\TUD@Version\@undefined
- \newcommand*\TUD@Version@Check[1]{%
- \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]{%
- \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%
- }%
- \fi%
- }
- \fi
- \TUD@Version@Check{2021/07/15 v2.06n TUD-Script}
-\endgroup
-\NeedsTeXFormat{LaTeX2e}[2019/10/01]
-\providecommand*\tudscrmail{hanisch.latex@outlook.com}
-\ifx\TUD@Class@Name\@undefined
- \PackageError{%
- tudscrcomp-poster%
- }{Unsupported class found}{%
- This package can only be used with a class out of the\MessageBreak%
- tudscr bundle (tudscrbook, tudscrreprt, tudscrartcl, tudscrposter).%
- }%
- \endinput%
-\fi
-\@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-comp.dtx
-\ProvidesPackage{tudscrcomp-poster}[%
- 2021/07/15 v2.06n TUD-Script
- package
- (compatibility for old tud(scr) classes)%
-]
-%%% From File: tudscr-comp.dtx
-\TUD@key{bluebg}[true]{%
- \TUD@set@ifkey{bluebg}{@tempswa}{#1}%
- \ifx\FamilyKeyState\FamilyKeyStateProcessed%
- \if@tempswa%
- \TUDoptions{backcolor=true}%
- \else%
- \TUDoptions{backcolor=false}%
- \fi%
- \fi%
-}
-\newif\if@tud@mathposterfoot
-\TUD@key{tudmathposterfoot}[true]{%
- \TUD@set@ifkey{tudmathposterfoot}{@tud@mathposterfoot}{#1}%
- \ifx\FamilyKeyState\FamilyKeyStateProcessed%
- \if@tud@mathposterfoot%
- \footcontent[\small]{%
- \tud@footcontent@@left{}%
- }[%
- \tud@footcontent@@right{}{}%
- ]%
- \else%
- \footcontent{%
- \tud@footcontent@@left{\contactname}%
- }[%
- \tud@footcontent@@right{\authorname}{\contactpersonname}%
- ]%
- \fi%
- \fi%
-}
-\TUD@key{cdfoot}[true]{%
- \TUD@set@numkey{cdfoot}{@tempa}{%
- {tudscrposter}{0},{tudscrposterfoot}{0},{cdposter}{0},{poster}{0},%
- {tudmathposter}{1},{tudmathposterfoot}{1},{mathposter}{1},{tudposter}{1}%
- }{#1}%
- \ifx\FamilyKeyState\FamilyKeyStateProcessed%
- \ifcase\@tempa\relax% tudscrposter
- \TUDoptions{tudmathposterfoot=false}%
- \else% tudmathposter
- \TUDoptions{tudmathposterfoot=true}%
- \fi%
- \fi%
-}
-%%% From File: tudscr-misc.dtx
-\DeclareOption*{\expandafter\TUDoptions\expandafter{\CurrentOption}}
-\TUDExecuteOptions{%
-}
-\TUDProcessOptions\relax
-%%% From File: tudscr-comp.dtx
-\newcommand*\einrichtung{\faculty}
-\newcommand*\fachrichtung{\department}
-\newcommand*\institut{\institute}
-\newcommand*\professur{\chair}
-\newcommand*\dinBold{\dinbn}
-\newcommand*\dinfamily{\dinbn}
-\newcommand*\ps@tudposter{}
-\let\ps@tudposter\ps@empty
-\AfterPackage*{scrlayer-scrpage}{%
- \DeclarePageStyleAlias{tudposter}{empty.tudheadings}%
-}
-\newrobustcmd*\telefon{\telephone}
-\patchcmd{\tud@split@author@list}{telephone}{%
- telephone,telefon%
-}{}{\tud@patch@wrn{tud@split@author@list}}
-\newrobustcmd*\fax{\telefax}
-\patchcmd{\tud@split@author@list}{telefax}{%
- telefax,fax%
-}{}{\tud@patch@wrn{tud@split@author@list}}
-\newrobustcmd*\email[1]{\emailaddress*{#1}}
-\patchcmd{\tud@split@author@list}{emailaddress}{%
- emailaddress,email%
-}{}{\tud@patch@wrn{tud@split@author@list}}
-\newcommand*\homepage[1]{\webpage*{#1}}
-\newcommand*\zweitlogofile[2][]{\headlogo[#1]{#2}}
-\newcommand*\zweitlogo[1]{%
- \PackageWarning{tudscrcomp}{%
- It isn't possible to redefine the definition for\MessageBreak%
- including a logo in the header. Please see the\MessageBreak%
- documentation of \string\headlogo%
- }%
-}
-\newcommand*\institutslogofile[2][]{\footlogo[#1]{,,,,,,,#2,}}
-\newcommand*\institutslogo[1]{%
- \PackageWarning{tudscrcomp}{%
- It isn't possible to redefine the definition for\MessageBreak%
- including a logo in the footer. Please see the\MessageBreak%
- documentation of \string\footlogo%
- }%
-}
-\newcommand*\drittlogofile[1]{%
- \PackageWarning{tudscrcomp}{%
- Nothing happened, you should use \string\footlogo\MessageBreak%
- instead. Please see the documentation of \string\footlogo\MessageBreak%
- and option `ddc' or `ddcfoot'%
- }%
-}
-\newcommand*\drittlogo[1]{%
- \PackageWarning{tudscrcomp}{%
- It isn't possible to redefine the definition for\MessageBreak%
- including a logo in the footer. Please see the\MessageBreak%
- documentation of \string\footlogo\space and option\MessageBreak%
- `ddc' or `ddcfoot'%
- }%
-}
-\newcommand*\topsectionnumdepth{\sectionnumdepth}
-\newcommand*\scr@topsection@sectionindent{\scr@section@sectionindent}
-\newcommand*\scr@topsection@beforeskip{\scr@section@beforeskip}
-\newcommand*\scr@topsection@afterskip{\scr@section@afterskip}
-\newcommand*\topsectiontocdepth{\sectiontocdepth}
-\newcommand*\scr@topsection@tocindent{\scr@section@tocindent}
-\newcommand*\scr@topsection@tocnumwidth{\scr@section@tocnumwidth}
-\newcommand*\l@topsection{\l@section}
-\DeclareNewSectionCommand[%
- style=section,%
- font={\usekomafont{section}},%
- beforeskip=\z@,%
-]{topsection}
-\let\c@topsection\c@section
-\newcommand*\topsubsectionnumdepth{\subsectionnumdepth}
-\newcommand*\scr@topsubsection@sectionindent{\scr@subsection@sectionindent}
-\newcommand*\scr@topsubsection@beforeskip{\scr@subsection@beforeskip}
-\newcommand*\scr@topsubsection@afterskip{\scr@subsection@afterskip}
-\newcommand*\topsubsectiontocdepth{\subsectiontocdepth}
-\newcommand*\scr@topsubsection@tocindent{\scr@subsection@tocindent}
-\newcommand*\scr@topsubsection@tocnumwidth{\scr@subsection@tocnumwidth}
-\newcommand*\l@topsubsection{\l@subsection}
-\DeclareNewSectionCommand[%
- style=section,%
- font={\usekomafont{subsection}},%
- beforeskip=\z@,%
-]{topsubsection}
-\let\c@topsubsection\c@subsection
-\newcommand*\centersection[2][\@nil]{%
- \tud@comp@centersection{section}{#1}{#2}%
-}
-\newcommand*\centersubsection[2][\@nil]{%
- \tud@comp@centersection{subsection}{#1}{#2}%
-}
-\newcommand*\topcentersection[2][\@nil]{%
- \tud@comp@centersection{topsection}{#1}{#2}%
-}
-\newcommand*\topcentersubsection[2][\@nil]{%
- \tud@comp@centersection{topsubsection}{#1}{#2}%
-}
-\newcommand*\tud@comp@centersection[3]{%
- \tud@cs@store{raggedsection}%
- \let\raggedsection\centering%
- \ifx#2\@nil\relax%
- \csuse{#1}{#3}%
- \else%
- \csuse{#1}[#2]{#3}%
- \fi%
- \tud@cs@restore{raggedsection}%
-}
-\newcommand\sectiontopskip{\scr@section@beforeskip}
-\newcommand\subsectiontopskip{\scr@subsection@beforeskip}
-\setcounter{secnumdepth}{\m@ne}
-\newcommand*\fusszeile[2][]{\footcontent[#1]{#2}}
-\newcommand*\footcolumn[2]{%
- \ifnumber{#1}{%
- \ifcase#1\relax%
- \footcontent{#2}%
- \or%
- \footcontent{#2}[*]%
- \or%
- \footcontent{*}[#2]%
- \fi%
- }{}%
-}
-\newcommand*\tud@comp@mathposterwidth{4.2\tud@len@widemargin}
-\patchcmd{\tud@footcontent@use}{%
- \hsize=\dimexpr#2-\@tempdimc\relax%
-}{%
- \if@tud@mathposterfoot%
- \hsize=\dimexpr\tud@comp@mathposterwidth\relax%
- \else%
- \hsize=\dimexpr#2-\@tempdimc\relax%
- \fi%
-}{}{\tud@patch@wrn{tud@footcontent@use}}
-\patchcmd{\tud@footcontent@use}{%
- \hsize=\dimexpr(#2-\columnsep)/2\relax%
-}{%
- \if@tud@mathposterfoot%
- \hsize=\dimexpr(\tud@comp@mathposterwidth-\columnsep)/2\relax%
- \else%
- \hsize=\dimexpr(#2-\columnsep)/2\relax%
- \fi%
-}{}{\tud@patch@wrn{tud@footcontent@use}}
-\patchcmd{\tud@footcontent@use}{%
- \hsize=\dimexpr(#2-\columnsep)/2-\@tempdimc\relax%
-}{%
- \if@tud@mathposterfoot%
- \hsize=\dimexpr(\tud@comp@mathposterwidth-\columnsep)/2\relax%
- \else%
- \hsize=\dimexpr(#2-\columnsep)/2-\@tempdimc\relax%
- \fi%
-}{}{\tud@patch@wrn{tud@footcontent@use}}
-\newenvironment{figurehere}{%
- \def\@captype{figure}%
- \renewcommand*\caption{\captionof{figure}}%
- \renewcommand*\captionabove{\captionaboveof{figure}}%
- \renewcommand*\captionbelow{\captionbelowof{figure}}%
- \vskip\intextsep%
- \vbox \bgroup%
- \hsize=\columnwidth%
- \@parboxrestore%
- \ignorespaces%
-}{%
- \egroup%
- \vskip\intextsep%
- \ignorespaces%
-}
-\newenvironment{tablehere}{%
- \def\@captype{table}%
- \renewcommand*\caption{\captionof{table}}%
- \renewcommand*\captionabove{\captionaboveof{table}}%
- \renewcommand*\captionbelow{\captionbelowof{table}}%
- \vskip\intextsep%
- \vbox \bgroup%
- \hsize=\columnwidth%
- \@parboxrestore%
- \ignorespaces%
-}{%
- \egroup%
- \vskip\intextsep%
- \ignorespaces%
-}
-\PassOptionsToPackage{table}{xcolor}
-\newif\if@tud@comp@graytable
-\newcommand*\blautabelle{\@tud@comp@graytablefalse}
-\newcommand*\grautabelle{\@tud@comp@graytabletrue}
-\newenvironment{farbtabellen}{%
- \if@tud@comp@graytable%
- \rowcolors{1}{HKS92!20}{HKS92!10}%
- \else%
- \rowcolors{1}{HKS41!20}{HKS41!10}%
- \fi%
-}{}
-\ifundef{\schnittrand}{}{%
- \ifisdimension{\schnittrand}{%
- \edef\@tempa{%
- paperwidth=\the\dimexpr\paperwidth+\schnittrand*2\relax,%
- paperheight=\the\dimexpr\paperheight+\schnittrand*2\relax,%
- layout=\the\paperwidth:\the\paperheight,%
- layoutoffset=\the\dimexpr\schnittrand\relax,%
- showcrop%
- }%
- \expandafter\geometry\expandafter{\@tempa}%
- }{%
- \PackageErrorNoLine{tudscrcomp}{%
- Wrong definition for `\string\schnittrand'%
- }{%
- The definition of `\string\schnittrand' does not expand to\MessageBreak%
- a valid dimension expression.%
- }%
- }%
-}%
-\AtEndPreamble{%
- \RequirePackage{amsmath}[2016/06/28]%
- \RequirePackage{amsfonts}[2013/01/14]%
- \RequirePackage{calc}[2014/10/28]%
- \RequirePackage{textcomp}[2016/06/19]%
- \RequirePackage{tabularx}[2016/02/03]%
-}
-\endinput
-%%
-%% End of file `tudscrcomp-poster.sty'.
diff --git a/Master/texmf-dist/tex/latex/tudscr/tudscrcomp.sty b/Master/texmf-dist/tex/latex/tudscr/tudscrcomp.sty
index b2890d7f443..54966933eac 100644
--- a/Master/texmf-dist/tex/latex/tudscr/tudscrcomp.sty
+++ b/Master/texmf-dist/tex/latex/tudscr/tudscrcomp.sty
@@ -4,14 +4,18 @@
%%
%% The original source files were:
%%
-%% tudscr-version.dtx (with options: `package,comp,base')
-%% tudscr-comp.dtx (with options: `package,comp,base,identify')
+%% tudscr-version.dtx (with options: `package,comp,identify')
+%% tudscr-comp.dtx (with options: `package,comp,identify')
+%% tudscr-comp.dtx (with options: `package,comp,option')
+%% tudscr-misc.dtx (with options: `package,comp,execute')
+%% tudscr-comp.dtx (with options: `package,comp,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.
%% ----------------------------------------------------------------------------
@@ -27,65 +31,447 @@
%%
%% 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}
-\ifx\TUD@Class@Name\@undefined
- \PackageError{%
- tudscrcomp%
- }{Unsupported class found}{%
- This package can only be used with a class out of the\MessageBreak%
- tudscr bundle (tudscrbook, tudscrreprt, tudscrartcl, tudscrposter).%
- }%
- \endinput%
-\fi
\@ifundefined{TUDScript}{%
\DeclareRobustCommand\TUDScript{%
- \textsf{%
- T\kern.05em U\kern.05em D\kern.1em-\kern.1em Script%
- }%
- \ifcsname xspace\endcsname%
- \xspace%
- \fi%
+ \mbox{%
+ \textsf{%
+ T\kern.05em U\kern.05em D\kern.1em-\kern.1em Script%
+ }%
+ }\ifcsname xspace\endcsname\xspace\fi%
}%
}{}
-%%% From File: tudscr-comp.dtx
-\ProvidesPackage{tudscrcomp}[%
- 2021/07/15 v2.06n TUD-Script
+\providecommand*\TUDScriptContact{hanisch.latex@outlook.com}
+\providecommand*\TUDScriptRepository{https://github.com/tud-cd/tudscr}
+\providecommand*\TUDScriptForum{https://latex.wcms-file3.tu-dresden.de/phpBB3/}
+\providecommand*\TUD@Class@Check[1]{%
+ \ifx\TUD@Class@Name\@undefined%
+ \PackageError{#1}{TUD-Script class not loaded}{%
+ This package requires a class of the TUD-Script bundle\MessageBreak%
+ (tudscrbook, tudscrreprt, tudscrartcl, tudscrposter).%
+ }%
+ \DeclareOption*{}%
+ \ProcessOptions\relax%
+ \expandafter\endinput%
+ \fi%
+}%
+%%%% From File: tudscr-comp.dtx (no git version info was found)
+\ProvidesPackage{tudscrcomp}%
+[%
+ 2022/08/09 v2.06o TUD-Script
package
(compatibility for old tud(scr) classes)%
]
-\PassOptionsToPackage{oldcolors}{tudscrcolor}
+\TUD@Class@Check{tudscrcomp}
+\@tud@res@swafalse%
+\newcommand*\tud@comp@on@main@class{\@gobble}
+\@tfor\tud@res@a:={tudscrbook}{tudscrreprt}{tudscrartcl}\do{%
+ \@ifclassloaded{\tud@res@a}{\@tud@res@swatrue}{}%
+ \if@tud@res@swa%
+ \renewcommand*\tud@comp@on@main@class{\@firstofone}%
+ \@break@tfor%
+ \fi%
+}%
+\newcommand*\tud@comp@on@poster@class{\@gobble}
\@ifclassloaded{tudscrposter}{%
- \RequirePackageWithOptions{tudscrcomp-poster}[\TUD@Version]%
+ \renewcommand*\tud@comp@on@poster@class{\@firstofone}%
+}{}%
+%%%% From File: tudscr-comp.dtx (no git version info was found)
+\PassOptionsToPackage{extended}{tudscrcolor}
+\TUD@key{colortitle}[true]{%
+ \TUD@set@ifkey{colortitle}{@tempswa}{#1}%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed%
+ \if@tempswa%
+ \TUDoptions{cdtitle=color}%
+ \else%
+ \TUDoptions{cdtitle=true}%
+ \fi%
+ \fi%
+}
+\TUD@key{nocolortitle}[true]{%
+ \TUD@set@ifkey{nocolortitle}{@tempswa}{#1}%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed%
+ \if@tempswa%
+ \TUDoptions{cdtitle=true}%
+ \else%
+ \TUDoptions{cdtitle=color}%
+ \fi%
+ \fi%
+}
+\TUD@key{ddcfooter}[true]{%
+ \TUD@set@ifkey{ddcfooter}{@tempswa}{#1}%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed%
+ \if@tempswa%
+ \TUDoptions{ddcfoot=true}%
+ \else%
+ \TUDoptions{ddcfoot=false}%
+ \fi%
+ \fi%
+}
+\tud@comp@on@poster@class{%
+\tud@newif\if@tud@comp@loadpackages
+\TUD@key{loadpackages}[true]{%
+ \TUD@set@ifkey{loadpackages}{@tud@comp@loadpackages}{#1}%
+}
+\AtEndPreamble{\TUD@key@toolate{loadpackages}}
+}
+\tud@comp@on@poster@class{%
+\TUD@key{bluebg}[true]{%
+ \TUD@set@ifkey{bluebg}{@tempswa}{#1}%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed%
+ \if@tempswa%
+ \TUDoptions{backcolor=true}%
+ \else%
+ \TUDoptions{backcolor=false}%
+ \fi%
+ \fi%
+}
+}
+\tud@comp@on@poster@class{%
+\PassOptionsToPackage{table}{xcolor}
+}
+\tud@comp@on@poster@class{%
+\newcommand*\tud@cropmargin@set{}%
+\preto\tud@cdgeometry@@init{\tud@cropmargin@set}%
+\TUD@key{cropmargin}[5mm]{%
+ \TUD@set@dimkey[mm]{cropmargin}{\@tempa}{#1}%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed%
+ \edef\tud@cropmargin@set{%
+ \noexpand\geometry{%
+ papersize={%
+ \the\dimexpr(\@tempa)*2+\paperwidth\relax,%
+ \the\dimexpr(\@tempa)*2+\paperheight\relax%
+ },%
+ layoutsize={\the\paperwidth,\the\paperheight},%
+ layoutoffset=\the\dimexpr\@tempa\relax,%
+ showcrop%
+ }%
+ }%
+ \fi%
+}
+\AtEndPreamble{\TUD@key@toolate{cropmargin}}%
+\preto\tud@cdgeometry@init{%
+ \ifundef{\schnittrand}{}{%
+ \TUDoptions{cropmargin=\schnittrand}%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed\else%
+ \PackageErrorNoLine{tudscrcomp}{%
+ Wrong definition for `\string\schnittrand'%
+ }{%
+ The definition of `\string\schnittrand' does not expand\MessageBreak%
+ to a valid dimension expression.%
+ }%
+ \fi%
+ }%
+}
+}
+\tud@comp@on@poster@class{%
+\tud@newif\if@tud@mathfoot
+\TUD@key{tudmathfoot}[true]{%
+ \TUD@set@ifkey{tudmathfoot}{@tud@mathfoot}{#1}%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed%
+ \if@tud@mathfoot%
+ \footcontent[\small]{%
+ \tud@footcontent@@left{}%
+ }[%
+ \tud@footcontent@@right{}{}%
+ ]%
+ \else%
+ \footcontent{%
+ \tud@footcontent@@left{\contactname}%
+ }[%
+ \tud@footcontent@@right{\authorname}{\contactpersonname}%
+ ]%
+ \fi%
+ \fi%
+}
+\TUD@key{tudmathposterfoot}[true]{\TUDoptions{tudmathfoot=#1}}%
+\TUD@key{cdfoot}{%
+ \TUD@set@numkey{cdfoot}{@tempa}{%
+ {tudscrposter}{0},{tudscrposterfoot}{0},{cdposter}{0},{tudscr}{0},%
+ {tudmathposter}{1},{tudmathfoot}{1},{tudmathposterfoot}{1},{tudmath}{1}%
+ }{#1}%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed%
+ \ifcase\@tempa\relax% tudscrposter
+ \TUDoptions{tudmathfoot=false}%
+ \else% tudmathposter
+ \TUDoptions{tudmathfoot=true}%
+ \fi%
+ \fi%
+}
+}
+%%%% From File: tudscr-misc.dtx (no git version info was found)
+\TUDExecuteOptions{%
+}
+\DeclareOption*{\expandafter\TUDoptions\expandafter{\CurrentOption}}
+\TUDProcessOptions\relax
+%%%% From File: tudscr-comp.dtx (no git version info was found)
+\newcommand*\einrichtung{\faculty}
+\newcommand*\fachrichtung{\department}
+\newcommand*\institut{\institute}
+\newcommand*\professur{\chair}
+\newcommand*\moreauthor{\authormore}
+\newcommand*\tudfont{\cdfont}
+\newcommand*\dinBold{\dinbn}
+\newcommand*\dinfamily{\dinbn}
+\tud@comp@on@main@class{%
+\newcommand*\submitdate{\date}
+\newcommand*\submittedon[1]{\gdef\datetext{#1}}
+\newcommand*\supervisorII[1]{\g@addto@macro\@supervisor{\and\space#1}}
+\newcommand*\supervisedby[1]{\gdef\supervisorname{#1}}
+\newcommand*\supervisedIIby[1]{\gdef\supervisorothername{#1}}
+\newcommand*\dissertation{%
+ \thesis{\dissertationname}%
+ \let\supervisorname\refereename%
+ \let\supervisorothername\refereeothername%
+}
+\tud@newif\if@tud@comp@chapterpage
+\newcommand*\chapterpage{%
+ \global\@tud@comp@chapterpagetrue%
+ \tud@comp@chapterpage@wrn%
+}
+\newcommand*\tud@comp@chapterpage@set{%
+ \if@tud@comp@chapterpage%
+ \if@tud@chapterpage%
+ \TUDoptions{chapterpage=false}%
+ \else%
+ \TUDoptions{chapterpage=true}%
+ \fi%
+ \fi%
+}
+\newcommand*\tud@comp@chapterpage@unset{%
+ \tud@comp@chapterpage@set%
+ \global\@tud@comp@chapterpagefalse%
+}
+\newcommand*\tud@comp@chapterpage@wrn{%
+ \PackageWarning{tudscrcomp}{%
+ The command `\string\chapterpage'\space is not\MessageBreak%
+ recommended. You should use the same style for\MessageBreak%
+ chapters throughout the document%
+ }%
+ \global\let\tud@comp@chapterpage@wrn\relax%
+}
+\AtEndPreamble{%
+ \ifundef{\if@chapter}{%
+ \newif\if@chapter%
+ \ifundef{\chapter}{\@chapterfalse}{\@chaptertrue}%
+ }{}%
+ \if@chapter%
+ \pretocmd\tud@chapter@pre{%
+ \tud@comp@chapterpage@set%
+ }{}{\tud@patch@wrn{tud@chapter@pre}}%
+ \apptocmd\tud@chapter@app{%
+ \tud@comp@chapterpage@unset%
+ }{}{\tud@patch@wrn{tud@chapter@app}}%
+ \else%
+ \renewcommand*\tud@comp@chapterpage@wrn{%
+ \PackageWarning{tudscrcomp}{%
+ The command `\string\chapterpage'\space is not\MessageBreak%
+ active as the used document class does not provide\MessageBreak%
+ any chapters via `\string\chapter'%
+ }%
+ \global\let\tud@comp@chapterpage@wrn\relax%
+ }%
+ \fi%
+}
+\AfterEndPreamble{%
+ \ifundef{\theglossary}{%
+ \providecommand*\glossaryname{Glossar}%
+ \newenvironment{theglossary}[1][]{%
+ \PackageWarning{tudscrcomp}{%
+ Using the environment `theglossary' is not\MessageBreak%
+ recommended. You should rather use an appropriate\MessageBreak%
+ package such as glossaries%
+ }%
+ \let\bibname\glossaryname%
+ \bib@heading%
+ #1%
+ \list{}{%
+ \setlength\labelsep{\z@}%
+ \setlength\labelwidth{\z@}%
+ \setlength\itemindent{-\leftmargin}%
+ }%
+ }{\endlist}%
+ \newcommand\glossitem[1]{\item[] #1\par}%
+ }{}%
+}
+}
+\tud@comp@on@poster@class{%
+\AtEndPreamble{%
+ \if@tud@comp@loadpackages%
+ \RequirePackage{calc}
+ \RequirePackage{textcomp}
+ \RequirePackage{tabularx}
+ \fi%
+}
+}
+\tud@comp@on@poster@class{%
+\newcommand*\ps@tudposter{}
+\let\ps@tudposter\ps@empty
+\AfterPackage*{scrlayer-scrpage}{%
+ \DeclarePageStyleAlias{tudposter}{empty.tudheadings}%
+}
+\newrobustcmd*\telefon{\telephone}
+\patchcmd\tud@split@author@list
+ {telephone}
+ {telephone,telefon}
+ {}{\tud@patch@wrn{tud@split@author@list}}
+\newrobustcmd*\fax{\telefax}
+\patchcmd\tud@split@author@list
+ {telefax}
+ {telefax,fax}
+ {}{\tud@patch@wrn{tud@split@author@list}}
+\newrobustcmd*\email[1]{\emailaddress*{#1}}
+\patchcmd\tud@split@author@list
+ {emailaddress}
+ {emailaddress,email}
+ {}{\tud@patch@wrn{tud@split@author@list}}
+\newcommand*\homepage[1]{\webpage*{#1}}
+\newcommand*\zweitlogofile[2][]{\headlogo[{#1}]{#2}}
+\newcommand*\zweitlogo[1]{%
+ \PackageWarning{tudscrcomp}{%
+ It isn't possible to redefine the definition for\MessageBreak%
+ including a logo in the header. Please see the\MessageBreak%
+ documentation of \string\headlogo%
+ }%
+}
+\newcommand*\institutslogofile[2][]{\footlogo[{#1}]{,,,,,,,#2,}}
+\newcommand*\institutslogo[1]{%
+ \PackageWarning{tudscrcomp}{%
+ It isn't possible to redefine the definition for\MessageBreak%
+ including a logo in the footer. Please see the\MessageBreak%
+ documentation of \string\footlogo%
+ }%
+}
+\newcommand*\drittlogofile[1]{%
+ \PackageWarning{tudscrcomp}{%
+ Nothing happened, you should use \string\footlogo\MessageBreak%
+ instead. Please see the documentation of \string\footlogo\MessageBreak%
+ and option `ddc' or `ddcfoot'%
+ }%
+}
+\newcommand*\drittlogo[1]{%
+ \PackageWarning{tudscrcomp}{%
+ It isn't possible to redefine the definition for\MessageBreak%
+ including a logo in the footer. Please see the\MessageBreak%
+ documentation of \string\footlogo\space and option\MessageBreak%
+ `ddc' or `ddcfoot'%
+ }%
+}
+\newcommand*\topsectionnumdepth{\sectionnumdepth}
+\newcommand*\scr@topsection@sectionindent{\scr@section@sectionindent}
+\newcommand*\scr@topsection@beforeskip{\scr@section@beforeskip}
+\newcommand*\scr@topsection@afterskip{\scr@section@afterskip}
+\newcommand*\topsectiontocdepth{\sectiontocdepth}
+\newcommand*\scr@topsection@tocindent{\scr@section@tocindent}
+\newcommand*\scr@topsection@tocnumwidth{\scr@section@tocnumwidth}
+\newcommand*\l@topsection{\l@section}
+\DeclareNewSectionCommand[%
+ style=section,%
+ font={\usekomafont{section}},%
+ beforeskip=\z@,%
+]{topsection}
+\let\c@topsection\c@section
+\newcommand*\topsubsectionnumdepth{\subsectionnumdepth}
+\newcommand*\scr@topsubsection@sectionindent{\scr@subsection@sectionindent}
+\newcommand*\scr@topsubsection@beforeskip{\scr@subsection@beforeskip}
+\newcommand*\scr@topsubsection@afterskip{\scr@subsection@afterskip}
+\newcommand*\topsubsectiontocdepth{\subsectiontocdepth}
+\newcommand*\scr@topsubsection@tocindent{\scr@subsection@tocindent}
+\newcommand*\scr@topsubsection@tocnumwidth{\scr@subsection@tocnumwidth}
+\newcommand*\l@topsubsection{\l@subsection}
+\DeclareNewSectionCommand[%
+ style=section,%
+ font={\usekomafont{subsection}},%
+ beforeskip=\z@,%
+]{topsubsection}
+\let\c@topsubsection\c@subsection
+\NewDocumentCommand\centersection{o m}{%
+ \tud@comp@centersection{section}{#1}{#2}%
+}
+\NewDocumentCommand\centersubsection{o m}{%
+ \tud@comp@centersection{subsection}{#1}{#2}%
+}
+\NewDocumentCommand\topcentersection{o m}{%
+ \tud@comp@centersection{topsection}{#1}{#2}%
+}
+\NewDocumentCommand\topcentersubsection{o m}{%
+ \tud@comp@centersection{topsubsection}{#1}{#2}%
+}
+\newcommand*\tud@comp@centersection[3]{%
+ \tud@cs@store{raggedsection}%
+ \let\raggedsection\centering%
+ \IfValueTF{#2}{%
+ \csuse{#1}[{#2}]{#3}%
+ }{%
+ \csuse{#1}{#3}%
+ }
+ \tud@cs@restore{raggedsection}%
+}
+\newcommand\sectiontopskip{\scr@section@beforeskip}
+\newcommand\subsectiontopskip{\scr@subsection@beforeskip}
+\setcounter{secnumdepth}{\m@ne}
+\tud@newif\if@tud@comp@graytable
+\newcommand*\blautabelle{\@tud@comp@graytablefalse}
+\newcommand*\grautabelle{\@tud@comp@graytabletrue}
+\newenvironment{farbtabellen}{%
+ \if@tud@comp@graytable%
+ \rowcolors{1}{HKS92!20}{HKS92!10}%
+ \else%
+ \rowcolors{1}{HKS41!20}{HKS41!10}%
+ \fi%
+}{}
+}
+\tud@comp@on@poster@class{%
+\newcommand*\fusszeile[2][]{\footcontent[{#1}]{#2}}
+\newcommand*\footcolumn[2]{%
+ \Ifnumber{#1}{%
+ \ifcase#1\relax%
+ \footcontent{#2}%
+ \or%
+ \footcontent{#2}[*]%
+ \or%
+ \footcontent{*}[{#2}]%
+ \fi%
+ }{}%
+}
+\patchcmd\tud@footcontent@use{%
+ \tud@footcontent@@use{\tud@res@glue}%
}{%
- \RequirePackageWithOptions{tudscrcomp-book}[\TUD@Version]%
+ \if@tud@mathfoot%
+ \tud@footcontent@@use{\glueexpr\tud@dim@widemargin*21/5\relax}%
+ \else%
+ \tud@footcontent@@use{\@tud@res@glue}%
+ \fi%
+}{}{\tud@patch@wrn{tud@footcontent@use}}
}
\endinput
%%
diff --git a/Master/texmf-dist/tex/latex/tudscr/tudscrdoc.cls b/Master/texmf-dist/tex/latex/tudscr/tudscrdoc.cls
index 2a54c9987d2..88f3e7e0b6c 100644
--- a/Master/texmf-dist/tex/latex/tudscr/tudscrdoc.cls
+++ b/Master/texmf-dist/tex/latex/tudscr/tudscrdoc.cls
@@ -4,19 +4,21 @@
%%
%% The original source files were:
%%
-%% tudscr-version.dtx (with options: `class,doc')
+%% tudscr-version.dtx (with options: `class,doc,identify')
%% tudscr-base.dtx (with options: `class,doc,load')
+%% tudscr-misc.dtx (with options: `class,doc,option')
%% tudscr-doc.dtx (with options: `class,doc,option')
%% tudscr-localization.dtx (with options: `class,doc')
-%% tudscr-manual.dtx (with options: `class,doc')
+%% tudscr-misc.dtx (with options: `class,doc,body')
%% tudscr-doc.dtx (with options: `class,doc,body')
%% tudscr-texindy.dtx (with options: `class,doc')
%%
%% 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.
%% ----------------------------------------------------------------------------
@@ -32,92 +34,180 @@
%%
%% 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{tudscrdoc}{scrartcl}{source code documentation 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-doc.dtx
-\newcommand*\scr@maketitle{}%
-\PassOptionsToClass{toc=left,fontsize=10pt}{scrartcl}%
-\AfterClass{scrartcl}{\let\scr@maketitle\@maketitle}%
-\newcommand*\sd@saved@LoadClass{}
-\let\sd@saved@LoadClass=\LoadClass
+%%%% From File: tudscr-misc.dtx (no git version info was found)
+\RequirePackage{scrhack}[%
+ 2022/05/01 v3.36 KOMA-Script
+]
+\RequirePackage{xspace}
+\xspaceaddexceptions{"=}
+\PassOptionsToPackage{quiet}{marginnote}
+\RequirePackage{marginnote}
+\RequirePackage{shellesc}
+\RequirePackage{pdftexcmds}
+\PassOptionsToPackage{hyperindex=false}{hyperref}
+\AfterPackage*{bookmark}{\bookmarksetup{open,openlevel=1}}
+\AfterAtEndOfPackage*{hyperref}{%
+ \@ifpackageloaded{bookmark}{}{\RequirePackage{bookmark}}%
+ \hypersetup{colorlinks,linkcolor=blue}%
+}
+\newcommand*\hrfn[2]{%
+ \href{#1}{\trim@spaces{#2}}%
+ \footnote{\strut\url{#1}}%
+}
+\newrobustcmd*\mailto[1]{\mbox{\href{mailto:#1}{\nolinkurl{#1}}}}
+\TUD@UnwindPackage{hyperref}{%
+ \RequirePackage{url}
+ \providerobustcmd*\url[1]{\texttt{\detokenize{#1}}}%
+ \providerobustcmd*\nolinkurl[1]{\url{#1}}%
+ \providerobustcmd*\href[3][]{#3}%
+ \providecommand*\hypersetup[1]{}%
+ \providecommand*\phantomsection{}%
+ \providecommand*\pdfbookmark[3][]{}%
+ \providecommand*\currentpdfbookmark[2]{}%
+ \providecommand*\subpdfbookmark[2]{}%
+ \providecommand*\belowpdfbookmark[2]{}%
+}
+\AfterPackage*{babel}{\RequirePackage{csquotes}}
+\TUD@UnwindPackage{babel}{%
+ \ClassWarningNoLine{\TUD@Class@Name}{Package `babel' not loaded}%
+ \providecommand*\selectlanguage[1]{}%
+ \providecommand*\glqq{\quotedblbase}%
+ \providecommand*\grqq{\textquotedblleft}%
+ \providecommand*\seename{see}%
+ \providecommand*\alsoname{see\nobreakspace also}%
+}
+\TUD@UnwindPackage{csquotes}{%
+ \ClassWarningNoLine{\TUD@Class@Name}{Package `csquotes' not loaded}%
+ \providecommand\enquote[1]{\emph{#1}}%
+}
+\newcommand*\tud@replace@in[3]{%
+ \begingroup%
+ \edef\tud@res@a{\expandonce{#1}}%
+ \let\tud@res@c\@empty%
+ \def\tud@res@b##1#2##2\@nil{%
+ \IfArgIsEmpty{##2}{%
+ \appto\tud@res@c{##1}%
+ }{%
+ \appto\tud@res@c{##1#3}%
+ \tud@res@b##2\@nil%
+ }%
+ }%
+ \expandafter\tud@res@b\tud@res@a#2\@nil%
+ \edef\tud@res@a{%
+ \endgroup%
+ \unexpanded{\def#1}{\expandonce\tud@res@c}%
+ }%
+ \tud@res@a%
+}
+\newcommand*\tud@replace@@in[3]{%
+ \begingroup%
+ \protected@edef\tud@res@a{#1}%
+ \edef\tud@res@a{\detokenize\expandafter{\tud@res@a}}%
+ \edef\tud@res@b{%
+ \unexpanded{\tud@replace@in\tud@res@a}{\detokenize{#2}}{\detokenize{#3}}%
+ }%
+ \tud@res@b%
+ \edef\tud@res@a{%
+ \endgroup%
+ \unexpanded{\def#1}{\tud@res@a}%
+ }%
+ \tud@res@a%
+}
+%%%% From File: tudscr-doc.dtx (no git version info was found)
+\newcommand*\scr@maketitle{}
+\PassOptionsToClass{toc=left,fontsize=10pt,parskip=half-}{scrartcl}
+\AfterClass{scrartcl}{\let\scr@maketitle\@maketitle}
+\AfterClass{ltxdoc}{\let\@maketitle\scr@maketitle}
+\newcommand*\tud@saved@LoadClass{}
+\let\tud@saved@LoadClass=\LoadClass
\renewcommand*\LoadClass[2][]{%
\begingroup%
\edef\@tempc{#2}\def\@tempb{article}%
\ifx\@tempc\@tempb%
- \let\LoadClass\sd@saved@LoadClass%
+ \let\LoadClass\tud@saved@LoadClass%
\def\@tempc{scrartcl}%
\fi%
\edef\@tempc{%
- \noexpand\endgroup\noexpand\sd@saved@LoadClass[{#1}]{\@tempc}}%
+ \endgroup%
+ \noexpand\tud@saved@LoadClass[{#1}]{\@tempc}%
+ }%
\@tempc%
}
-\newcommand*\sd@saved@PassOptionsToClass{}
-\let\sd@saved@PassOptionsToClass=\PassOptionsToClass
+\newcommand*\tud@saved@PassOptionsToClass{}
+\let\tud@saved@PassOptionsToClass=\PassOptionsToClass
\renewcommand*\PassOptionsToClass[2]{%
\begingroup%
\edef\@tempc{#2}\def\@tempb{article}%
@@ -125,21 +215,30 @@
\def\@tempc{scrartcl}%
\fi%
\edef\@tempc{%
- \noexpand\endgroup\noexpand\sd@saved@PassOptionsToClass{#1}{%
- \@tempc}}%
+ \endgroup%
+ \noexpand\tud@saved@PassOptionsToClass{#1}{\@tempc}%
+ }%
\@tempc%
}
\LoadClassWithOptions{ltxdoc}[2015/03/26]
\setcounter{IndexColumns}{2}
\setcounter{StandardModuleDepth}{2}
+\newcommand*\DisableCrossrefsForced{}
+\let\DisableCrossrefsForced\DisableCrossrefs
\DeclareOption{final}{\let\tudfinalflag\relax}
\DeclareOption{texindy}{\let\tudxdyflag\relax}
\DeclareOption{xindy}{\let\tudxdyflag\relax}
\DeclareOption{xdy}{\let\tudxdyflag\relax}
\ProcessOptions\relax
-\newcommand*\DisableCrossrefsForced{}
-\let\DisableCrossrefsForced\DisableCrossrefs
-%%% From File: tudscr-localization.dtx
+\PassOptionsToPackage{ttfont=lmtt}{tudscrfonts}
+\AfterPackage{tudscrfonts}{%
+ \AtEndPreamble{%
+ \ifnum\tud@ttfont@num>\z@\relax%
+ \edef\mdseries@tt{\tud@ttfont@bf}%
+ \fi%
+ }%
+}
+%%%% From File: tudscr-localization.dtx (no git version info was found)
\newcommand*\tud@localization@define[1]{%
\providecommand*#1{%
\ClassError{\TUD@Class@Name}{%
@@ -149,13 +248,14 @@
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.%
}%
}%
}
\tud@localization@define{\tud@general@name}
\tud@localization@define{\tud@implementation@name}
+\tud@localization@define{\tud@symbols@name}
\tud@localization@define{\tud@changes@name}
\tud@localization@define{\tud@todo@name}
\tud@localization@define{\tud@environment@name}
@@ -188,8 +288,9 @@
}
\tud@localization@german{\tud@general@name}{Allgemein}
\tud@localization@german{\tud@implementation@name}{Implementierung}
+\tud@localization@german{\tud@symbols@name}{Symbole}
\tud@localization@german{\tud@changes@name}{\"Anderungsliste}
-\tud@localization@german{\tud@todo@name}{Liste der noch zu erledigenden Punkte}
+\tud@localization@german{\tud@todo@name}{Anstehende Aufgaben}
\tud@localization@german{\tud@environment@name}{Umg.}
\tud@localization@german{\tud@environments@name}{Umgebungen}
\tud@localization@german{\tud@option@name}{Opt.}
@@ -229,8 +330,9 @@
}
\tud@localization@english{\tud@general@name}{General}
\tud@localization@english{\tud@implementation@name}{Implementation}
+\tud@localization@english{\tud@symbols@name}{Symbols}
\tud@localization@english{\tud@changes@name}{Change History}
-\tud@localization@english{\tud@todo@name}{List of ToDos}
+\tud@localization@english{\tud@todo@name}{Pending tasks}
\tud@localization@english{\tud@environment@name}{env.}
\tud@localization@english{\tud@environments@name}{environments}
\tud@localization@english{\tud@option@name}{opt.}
@@ -263,116 +365,43 @@
where the entry is used.%
\fi%
}
-%%% From File: tudscr-manual.dtx
-\RequirePackage{scrhack}[2014/02/27]
-\PassOptionsToPackage{quiet}{marginnote}
-\RequirePackage{marginnote}[2012/03/29]
-\RequirePackage{xspace}[2009/10/20]
-\xspaceaddexceptions{"=}
-\newcommand*\vTUDScript{v\TUDScriptVersionNumber}
-\newcommand*\vKOMAScript{v\TUD@Version@KOMA}
-\newcommand*\tud@english[1]{#1}
-\AtBeginDocument{%
- \iflanguageloaded{english}{%
- \renewcommand*\tud@english[1]{\foreignlanguage{english}{#1}}%
- }{}%
+%%%% From File: tudscr-misc.dtx (no git version info was found)
+\renewcommand*\@pnumwidth{2.1em}
+\renewcommand*\@tocrmarg{3.1em}
+\newcommand*\textsbn{}
+\newrobustcmd*\sbnfont{\sffamily\bfseries\upshape}
+\DeclareTextFontCommand\textsbn{\sbnfont}
+\newcommand*\textsbi{}
+\newrobustcmd*\sbifont{\sffamily\bfseries\itshape}
+\DeclareTextFontCommand\textsbi{\sbifont}
+\newcommand*\textttit{}
+\newrobustcmd*\ttitfont{\ttfamily\itshape}
+\DeclareTextFontCommand\textttit{\ttitfont}
+\newcommand*\tud@english[1]{%
+ \iflanguageloaded{english}{\foreignlanguage{english}{#1}}{#1}%
}
-\RequirePackage{shellesc}[2016/06/07]
-\RequirePackage{pdftexcmds}[2016/05/21]
-\PassOptionsToPackage{hyperindex=false,colorlinks,linkcolor=blue}{hyperref}
-\PassOptionsToPackage{open,openlevel=0}{bookmark}
-\AfterPackage*{hyperref}{%
- \newcommand*\hypersource@def{}
- \newcommand*\hypersourcedef[1]{%
- \ifstr{#1}{\hypersource@def}{}{%
- \Hy@raisedlink{\hyperdef{}{source:#1}{}}%
- \xdef\hypersource@def{#1}%
- }%
- }%
- \newcommand*\hypersource@ref@codeline[2][\@firstofone]{%
- \begingroup%
- \def\@tempa##1{\hyperref{}{}{source:##1}{#1{##1}}}%
- \forcsvlist\@tempa{#2}%
- \endgroup%
- }%
- \newcommand*\hypersource@ref@page[2][\@firstofone]{%
- \begingroup%
- \def\@tempa##1{\hyperlink{page.##1}{#1{##1}}}%
- \forcsvlist\@tempa{#2}%
- \endgroup%
- }%
- \renewcommand*\main[1]{%
- \ifcodeline@index%
- \hypersource@ref@codeline[\underline]{#1}%
- \else%
- \hypersource@ref@page[\underline]{#1}%
- \fi%
- }%
- \renewcommand*\usage[1]{\hypersource@ref@page[\textit]{#1}}%
+\AfterPackage*{babel}{%
+ \renewcommand*\tud@english[1]{\foreignlanguage{english}{#1}}%
}
-\TUD@UnwindPackage{hyperref}{%
- \providecommand*\hypersetup[1]{}%
- \providecommand*\href[3][]{#3}%
- \providecommand*\phantomsection{}%
- \providecommand*\texorpdfstring[2]{#1}%
- \RequirePackage{url}[2013/09/16]%
- \providecommand*\nolinkurl[1]{\url{#1}}%
- \providecommand*\hypersourcedef[1]{}
- \providecommand*\hypersource@def{}
- \providecommand*\hypersource@ref@codeline[2][]{}
- \providecommand*\hypersource@ref@page[2][]{}
-}
-\newcommand*\hrfn[2]{%
- \href{#1}{\trim@spaces{#2}}%
- \footnote{%
- \begingroup%
- \def\_{_}%
- \edef\@tempa{#1}%
- \strut\expandafter\url\expandafter{\@tempa}%
- \endgroup%
- }%
-}
-\newrobustcmd*\mailto[1]{\mbox{\href{mailto:#1}{\nolinkurl{#1}}}}%
+\kernel@make@fragile\KOMAScript
+\edef\KOMAScript{\noexpand\mbox{\expandonce\KOMAScript}\noexpand\xspace}
+\robustify\KOMAScript
+\robustify\TUDScript
\AfterPackage*{hyperref}{%
- \patchcmd{\pdfstringdef}{\csname HyPsd@babel@}{%
- \let\bbl@info\@gobble\csname HyPsd@babel@%
- }{}{\tud@patch@wrn{pdfstringdef}}%
-}
-\RequirePackage{csquotes}[2011/10/22]
-\newcommand*\tud@replace[3]{%
- \begingroup%
- \toks@{\def\@tempa##1}%
- \eaddto@hook\toks@{\detokenize{#2}}%
- \addto@hook\toks@{##2\@nil{\@tempb{##1}{##2}}}%
- \the\toks@%
- \def\@tempb##1##2{%
- \IfArgIsEmpty{##2}{%
- \appto#1{##1}%
- \let\@tempc\relax%
- }{%
- \appto#1{##1#3}%
- \def\@tempc{\@tempa##2\@nil}%
- }%
- \@tempc%
- }%
- \toks@{\@tempa}%
- \edef\@tempc{\expandafter\detokenize\expandafter{#1}}%
- \eaddto@hook\toks@{\@tempc}%
- \eaddto@hook\toks@{\detokenize{#2}\@nil}%
- \def#1{}%
- \the\toks@%
- \edef\tud@reserved{%
- \noexpand\endgroup%
- \def\noexpand#1{#1}%
- }%
- \tud@reserved%
+ \pdfstringdefDisableCommands{%
+ \def\KOMAScript{KOMA-Script{}}%
+ \def\TUDScript{TUD-Script{}}%
+ }%
}
-\newcommand*\CD{\tud@english{Corporate Design}\xspace}
-\newcommand*\CDs{\tud@english{Corporate Designs}\xspace}
-\newcommand*\TUD{Technische Universit\"at Dresden\xspace}
-\newcommand*\TnUD{Technischen Universit\"at Dresden\xspace}
+\newcommand*\vTUDScript{v\TUDScriptVersionNumber}
+\newcommand*\vKOMAScript{v\TUD@KOMAVersionNumber}
+\newrobustcmd*\CD{\tud@english{Corporate Design}\xspace}
+\newrobustcmd*\CDs{\tud@english{Corporate Designs}\xspace}
+\newrobustcmd*\TUD{Technische Universit\"at Dresden\xspace}
+\newrobustcmd*\TnUD{Technischen Universit\"at Dresden\xspace}
\newcommand*\TUDCD{\CD der \TnUD}
\newcommand*\TUDCDs{\CDs der \TnUD}
+\newrobustcmd*\TUDForum{\mbox{T\kern.05em U\kern.05em D-\LaTeX-Forum}\xspace}
\newrobustcmd*\DDC{%
\mbox{%
D\kern.05em R\kern.05em E\kern.05em S\kern.05em %
@@ -381,444 +410,654 @@
}
\AfterPackage*{hyperref}{%
\pdfstringdefDisableCommands{%
- \def\DDC{DRESDEN-concept}%
- \def\TUDScript{TUD-Script}%
- \def\KOMAScript{KOMA-Script}%
+ \def\CD{Corporate Design{}}%
+ \def\CDs{Corporate Designs{}}%
+ \def\TUD{Technische Universit\"at Dresden{}}%
+ \def\TnUD{Technischen Universit\"at Dresden{}}%
+ \def\TUDForum{TUD-LaTeX-Forum{}}%
+ \def\DDC{DRESDEN-concept{}}%
}%
}
-\DeclareTextFontCommand\tud@cdfont@texteb{%
- \fontfamily{\tud@cdfont@fam}\fontseries{\tud@cdfont@ebf}\selectfont%
-}
-\newrobustcmd*\OpenSans{%
- \texorpdfstring{\tud@cdfont@texteb{Open~Sans}}{Open Sans}\xspace%
-}
-\newrobustcmd*\Univers{\texorpdfstring{\textcdbi{Univers}}{Univers}\xspace}
-\newrobustcmd*\DIN{\texorpdfstring{\textcdxi{DIN~Bold}}{DIN Bold}\xspace}
-\renewcommand*\@pnumwidth{2.1em}%
-\renewcommand*\@tocrmarg{3.1em}%
-%%% From File: tudscr-doc.dtx
-\RequirePackage{dox}[2010/12/16]
-\@ifpackagelater{dox}{2017/12/07}{%
- \ClassWarning{\TUD@Class@Name}{%
- Package `dox' was updated so some patches\MessageBreak%
- are maybe outdated%
+\newrobustcmd*\OpenSans{\textcdbn{Open\nobreakspace Sans}\xspace}
+\newrobustcmd*\Univers{\textcdbi{Univers}\xspace}
+\newrobustcmd*\DIN{\textcdbi{DIN\nobreakspace Bold}\xspace}
+\AfterPackage*{hyperref}{%
+ \pdfstringdefDisableCommands{%
+ \def\OpenSans{Open Sans{}}%
+ \def\Univers{Univers{}}%
+ \def\DIN{DIN Bold{}}%
}%
-}{}%
-\CheckCommand\m@cro@[2]{%
- \endgroup \topsep\MacroTopsep \trivlist
- \edef\saved@macroname{\string#2}%
- #1
- \let\saved@indexname\saved@macroname
- \else
- \edef\saved@indexname{\expandafter\@gobble\string#2}%
- \fi
- \def\makelabel##1{\llap{##1}}%
- \if@inlabel
- \let\@tempa\@empty \count@\macro@cnt
- \loop \ifnum\count@>\z@
- \edef\@tempa{\@tempa\hbox{\strut}}\advance\count@\m@ne \repeat
- \edef\makelabel##1{\llap{\vtop to\baselineskip
- {\@tempa\hbox{##1}\vss}}}%
- \advance \macro@cnt \@ne
- \else \macro@cnt\@ne \fi
- \edef\@tempa{\noexpand\item[%
- #1%
- \noexpand\PrintMacroName
- \else
- \noexpand\PrintEnvName
- \fi
- {\string#2}]}%
- \@tempa
- \global\advance\c@CodelineNo\@ne
- #1%
- \SpecialMainIndex{#2}\nobreak
- \DoNotIndex{#2}%
- \else
- \SpecialMainEnvIndex{#2}\nobreak
- \fi
- \global\advance\c@CodelineNo\m@ne
- \ignorespaces
-}
-\CheckCommand\doxitem[4][]{%
- \@nameuse{dox@macrolike\dox@macrolikedefault}%
- \def\dox@idxtype{#3}%
- \setkeys{dox}{#1}
- \@ifundefined{Print#2Name}{%
- \ifdox@macrolike
- \expandafter\def\csname Print#2Name\endcsname##1{%
- \strut\MacroFont\string ##1\ }
- \else
- \expandafter\def\csname Print#2Name\endcsname##1{%
- \strut\MacroFont ##1\ }
- \fi}{}
- \ifdox@macrolike
- \def\@doxexpr{\@doxcreatespecialmainmacrolikeindex{#2}}%
- \else
- \def\@doxexpr{\@doxcreatespecialmainindex{#2}}%
- \fi
- \expandafter\@doxexpr\expandafter{\dox@idxtype}{#4}%
- \@ifundefined{PrintDescribe#2}{%
- \ifdox@macrolike
- \expandafter\def\csname PrintDescribe#2\endcsname##1{%
- \strut\MacroFont\string ##1\ }
- \else
- \expandafter\def\csname PrintDescribe#2\endcsname##1{%
- \strut\MacroFont ##1\ }
- \fi}{}
- \ifdox@macrolike
- \def\@doxexpr{\@doxcreatespecialmacrolikeindex{#2}}%
- \else
- \def\@doxexpr{\@doxcreatespecialindex{#2}}%
- \fi
- \expandafter\@doxexpr\expandafter{\dox@idxtype}{#4}%
- \@doxcreatedescribe{#2}
- \@doxcreateenv{#2}{#3}
- \ifdox@macrolike
- \expandafter\let\csname @Save#2IndexName\endcsname%
- \@doxsavemacrolikeindexname%
- \else
- \expandafter\let\csname @Save#2IndexName\endcsname\@doxsaveindexname%
- \fi
}
-\renewcommand*\doxitem[4][]{%
- \@nameuse{dox@macrolike\dox@macrolikedefault}%
- \def\dox@idxtype{#3}%
- \setkeys{dox}{#1}%
- \ifdox@macrolike%
- \def\@doxexpr{\@doxcreatespecialmainmacrolikeindex{#2}}%
- \else%
- \def\@doxexpr{\@doxcreatespecialmainindex{#2}}%
- \fi%
- \expandafter\@doxexpr\expandafter{\dox@idxtype}{#4}%
- \ifdox@macrolike%
- \def\@doxexpr{\@doxcreatespecialmacrolikeindex{#2}}%
- \else%
- \def\@doxexpr{\@doxcreatespecialindex{#2}}%
- \fi%
- \expandafter\@doxexpr\expandafter{\dox@idxtype}{#4}%
- \ifdox@macrolike%
- \def\@doxexpr{\@doxcreatemacrolikeprintname{#2}}%
- \else%
- \def\@doxexpr{\@doxcreateprintname{#2}}%
- \fi%
- \expandafter\@doxexpr\expandafter{\dox@idxtype}%
- \ifdox@macrolike%
- \def\@doxexpr{\@doxcreatemacrolikeindexname{#2}}%
- \else%
- \def\@doxexpr{\@doxcreateindexname{#2}}%
- \fi%
- \expandafter\@doxexpr\expandafter{\dox@idxtype}%
- \@doxcreatedescribe{#2}%
- \@doxcreatedescribes{#2}%
- \@doxcreateenv{#2}{#3}%
-}
-\newlength\marginnotevskip
-\newcommand*\@doxcreatedescribes[1]{%
- \expandafter\def\csname Describe#1s\endcsname##1{%
- \setlength\marginnotevskip{\z@}%
- \def\@tempc{##1}%
- \@for\@tempa:=\@tempc\do{%
- \expandafter\ifblank\expandafter{\@tempa}{}{%
- \edef\@tempb{%
- \expandonce{\csname Describe#1\endcsname}{\expandonce{\@tempa}}%
- }%
- \@tempb%
- \addtolength\marginnotevskip{\baselineskip}%
- }%
+\newcommand*\GitHubBase[1]{}
+\NewDocumentCommand\GitHubRepo{!s !t' !O{releases} !D(){tud-cd/tudscr} !d<>}{%
+ \IfBooleanTF{#1}{\toks@{\href}}{\toks@{\hrfn}}%
+ \IfBooleanT{#2}{\toks@{\url}}%
+ \def\@tempa{https://github.com/#4/}%
+ \edef\@tempa{{\@tempa\IfValueTF{#5}{issues/#5}{#3}}}%
+ \addto@hook@expandafter\toks@{\@tempa}%
+ \IfBooleanF{#2}{%
+ \addto@hook\toks@{{\tud@english{GitHub-Repository~\textsbn{#4}}}}%
+ }%
+ \the\toks@\xspace%
+}
+\NewDocumentCommand\CTAN{!s !o !g}{%
+ \IfBooleanTF{#1}{\toks@{\href}}{\toks@{\hrfn}}%
+ \addto@hook\toks@{{http://www.ctan.org/\IfValueT{#2}{#2}}}%
+ \addto@hook\toks@{%
+ {\tud@english{Comprehensive TeX Archive Network (CTAN\IfValueT{#3}{~#3})}}%
+ }%
+ \the\toks@\xspace%
+}
+\NewDocumentCommand\Forum{!s !t' !O{\TUDForum} !d<>}{%
+ \IfBooleanTF{#1}{\toks@{\href}}{\toks@{\hrfn}}%
+ \IfBooleanT{#2}{\toks@{\url}}%
+ \def\@tempa{http://latex.wcms-file3.tu-dresden.de/phpBB3/}%
+ \edef\@tempa{{\@tempa\IfValueT{#4}{viewtopic.php?t=#4}}}%
+ \addto@hook@expandafter\toks@{\@tempa}%
+ \IfBooleanF{#2}{\addto@hook\toks@{{#3}}}%
+ \the\toks@\xspace%
+}
+\newcommand*\Attention[2][\z@]{%
+ \marginnote{%
+ \tud@setdim\fboxsep{0.25em}%
+ \fbox{Achtung!}%
+ }[{#1}]%
+ \emph{\trim@spaces{#2}}%
+}
+\newrobustcmd*\TUDScriptContactTitle{%
+ \ifundef{\emailaddress}{%
+ \qquad\expandafter\mailto\expandafter{\TUDScriptContact}%
+ }{%
+ \expandafter\emailaddress\expandafter{\TUDScriptContact}%
+ }%
+}
+\AfterPackage*{hyperref}{%
+ \pdfstringdefDisableCommands{\let\TUDScriptContactTitle\relax}%
+}
+%%%% From File: tudscr-doc.dtx (no git version info was found)
+\AtEndOfClass{%
+ \@ifpackageloaded{tudscr-gitinfo}{%
+ \GetFileInfo{\jobname}%
+ \title{\file{\filename}}%
+ \date{%
+ \filedate%
+ \ifdefvoid{\fileversion}{}{\nobreakspace\fileversion}%
+ \ifdefvoid{\filerevision}{}{\nobreakspace\texttt{\filerevision}}%
}%
- \setlength\marginnotevskip{\z@}%
- \ignorespaces%
+ }{}%
+ \CodelineIndex%
+ \RecordChanges%
+}
+\AtBeginDocument{%
+ \ifdefvoid{\filename}{%
+ \IfFileExists{\jobname.dtx}{%
+ \edef\filename{\jobname.dtx}%
+ }{%
+ \edef\filename{\jobname.tex}%
+ }%
+ \undef\filedate%
+ \undef\fileversion%
+ \undef\filerevision%
+ \undef\fileinfo%
+ \expandafter\GetFileInfo\expandafter{\filename}%
+ }{}%
+ \ifdefvoid{\filerevision}{\let\filerevision\@empty}{}%
+}
+\pretocmd\@docinclude{%
+ \GetFileInfo{#1}\pagestyle{tudscrdoc}%
+}{}{\tud@patch@wrn{@docinclude}}
+\def\ps@tudscrdoc{%
+ \let\@mkboth\@gobbletwo%
+ \let\@oddhead\@empty%
+ \let\@evenhead\@empty%
+ \def\@oddfoot{%
+ File\ifnum\c@part>\z@\nobreakspace\thepart\fi:%
+ \nobreakspace\texttt{\ifdefvoid{\filename}{?}{\filename}}%
+ \enskip Version:\nobreakspace\ifdefvoid{\filedate}{?}{\filedate}%
+ \ifdefvoid{\fileversion}{}{\nobreakspace\fileversion}%
+ \ifdefvoid{\filerevision}{}{\enskip\texttt{\filerevision}}%
+ \hfill\thepage%
}%
+ \def\@evenfoot{\@oddfoot}%
}
-\@doxcreatedescribes{Macro}
+\pagestyle{tudscrdoc}%
+\let\ps@titlepage\ps@tudscrdoc%
+\tud@newdim\tud@dim@marginnotevskip
\AfterPackage*{marginnote}{%
\renewcommand*\marginpar[2][]{%
\IfArgIsEmpty{#1}{%
- \marginnote{#2}[\marginnotevskip]%
+ \marginnote{#2}[\tud@dim@marginnotevskip]%
}{%
- \marginnote[{#1}]{#2}[\marginnotevskip]%
+ \marginnote[{#1}]{#2}[\tud@dim@marginnotevskip]%
}%
}%
}
-\newrobustcmd*\index@type[1]{%
+\newcommand*\doc@createdescribes[1]{%
+ \expandafter\newcommand\expandafter*\csname Describe#1s\endcsname[2][]{%
+ \tud@setdim\tud@dim@marginnotevskip{\z@}%
+ \def\@tempc{##2}%
+ \@for\@tempa:=\@tempc\do{%
+ \trim@spaces@in\@tempa%
+ \ifx\@tempa\@empty\else%
+ \def\@tempb{\@nameuse{Describe#1}[{##1}]}%
+ \expandafter\@tempb\expandafter{\@tempa}%
+ \tud@addtodim\tud@dim@marginnotevskip{1\baselineskip}%
+ \fi%
+ }%
+ \tud@setdim\tud@dim@marginnotevskip{\z@}%
+ \ignorespaces%
+ }%
+}
+\NewDocumentCommand{\tud@idx@typemarkup}{r()}{%
\begingroup%
\normalfont\scriptsize\space(#1)%
\endgroup%
}
-\CheckCommand*\@doxcreatespecialmainmacrolikeindex[3]{%
- \expandafter\def\csname SpecialMain#1Index\endcsname##1{%
- \@SpecialIndexHelper@##1\@nil
- \@bsphack%
- \special@index{\@gtempa\actualchar
- \string\verb\quotechar*\verbatimchar\bslash\@gtempa\verbatimchar
- \space(#2)\encapchar main}%
- \special@index{#3:\levelchar\@gtempa\actualchar%
- \string\verb\quotechar*\verbatimchar\bslash\@gtempa\verbatimchar
- \encapchar main}%
- \@esphack%
- }%
-}
-\renewcommand*\@doxcreatespecialmainmacrolikeindex[3]{%
- \expandafter\def\csname SpecialMain#1Index\endcsname##1{%
- \@SpecialIndexHelper@##1\@nil%
- \@bsphack%
- \protected@edef\tud@reserved{#2}%
- \special@index{%
- \@gtempa\space\expandonce\tud@reserved\actualchar%
- \string\verb\quotechar*\verbatimchar\bslash\@gtempa\verbatimchar%
- \index@type{\expandonce\tud@reserved}\encapchar main%
+\AtBeginDocument{\let\PrintMacroName\@@PrintMacroName}
+\apptocmd\@NewDocElement{%
+ \doc@createdescribes{#2}%
+ \csletcs{@@PrintDescribe#2}{PrintDescribe#2}%
+ \csletcs{@@Print#2Name}{Print#2Name}%
+ \csletcs{@@SpecialMain#2Index}{SpecialMain#2Index}%
+ \csletcs{@@Special#2Index}{Special#2Index}%
+}{}{\tud@patch@wrn{@NewDocElement}}
+\patchcmd\@NewDocElement{%
+ \@temptokena\expandafter{%
+ \expandafter\textnormal\expandafter{%
+ \expandafter\space\expandafter(\doc@printtype)%
}%
- \protected@edef\tud@reserved{#3}%
- \special@index{%
- \expandonce\tud@reserved:\levelchar\@gtempa\actualchar%
- \string\verb\quotechar*\verbatimchar\bslash\@gtempa\verbatimchar%
- \encapchar main%
+ }%
+}{%
+ \@temptokena\expandafter{%
+ \expandafter\textnormal\expandafter{%
+ \expandafter\tud@idx@typemarkup\expandafter(\doc@printtype)\strut%
}%
- \@esphack%
- \let\parameter@parent@changes\relax%
- \hypersourcedef{\filesep\number\c@CodelineNo}%
}%
-}
-\CheckCommand*\@doxcreatespecialmainindex[3]{%
- \expandafter\def\csname SpecialMain#1Index\endcsname##1{%
- \@bsphack%
- \special@index{##1\actualchar{\string\ttfamily\space##1} (#2)%
- \encapchar main}%
- \special@index{#3:\levelchar##1\actualchar{\string\ttfamily\space##1}%
- \encapchar main}%
- \@esphack%
+}{}{\tud@patch@wrn{@NewDocElement}}
+\newcommand*\tud@idx@sortkey{}
+\let\tud@idx@sortkey\relax
+\newcommand*\tud@idx@format{}
+\let\tud@idx@format\relax
+\newcommand*\tud@idx@element{}
+\let\tud@idx@element\relax
+\newcommand*\tud@idx@parent{}
+\let\tud@idx@parent\relax
+\CheckCommand*\doc@createspecialindexes[3]{%
+ \@temptokena{\space (#2)}%
+ \@temptokenb{#3:}%
+ \@nameedef{SpecialMain#1Index}##1{%
+ \noexpand\@bsphack
+ \ifdoc@toplevel
+ \noexpand\special@index{%
+ ##1\noexpand\actualchar{\string\ttfamily\space##1}%
+ \ifx\@nil#2\@nil\else\the\@temptokena\fi
+ \noexpand\encapchar main%
+ }%
+ \fi
+ \ifx\@nil#3\@nil\else
+ \noexpand\special@index{%
+ \the\@temptokenb\noexpand\levelchar
+ ##1\noexpand\actualchar{\string\ttfamily\space##1}%
+ \noexpand\encapchar main%
+ }%
+ \fi
+ \noexpand\@esphack%
+ }%
+ \@nameedef{Special#1Index}##1{%
+ \noexpand\@bsphack
+ \ifdoc@toplevel
+ \noexpand\doc@providetarget
+ \noexpand\index{%
+ ##1\noexpand\actualchar{\string\ttfamily\space##1}%
+ \ifx\@nil#2\@nil\else\the\@temptokena\fi
+ \noexpand\doc@handleencap{usage}%
+ }%
+ \fi
+ \ifx\@nil#3\@nil\else
+ \noexpand\index{%
+ \the\@temptokenb\noexpand\levelchar
+ ##1\noexpand\actualchar{\string\ttfamily\space##1}%
+ \noexpand\doc@handleencap{usage}%
+ }%
+ \fi
+ \noexpand\@esphack%
}%
}
-\renewcommand*\@doxcreatespecialmainindex[3]{%
- \expandafter\def\csname SpecialMain#1Index\endcsname##1{%
- \@bsphack%
- \protected@edef\tud@reserved{#2}%
- \special@index{%
- ##1\space\expandonce\tud@reserved\actualchar%
- {\string\ttfamily\space##1}\index@type{\expandonce\tud@reserved}%
- \encapchar main%
+\renewcommand*\doc@createspecialindexes[3]{%
+ \@temptokena{\space (#2)}%
+ \@temptokenb{#3:}%
+ \@nameedef{SpecialMain#1Index}##1{%
+ \noexpand\@bsphack
+ \ifdoc@toplevel
+ \noexpand\special@index{%
+ % PATCH: add `\the\@temptokena' to sorting argument
+ ##1\ifx\@nil#2\@nil\else\the\@temptokena\fi
+ \noexpand\actualchar{\string\ttfamily\space##1}%
+ % PATCH: add `\tud@idx@typemarkup' for markup
+ \ifx\@nil#2\@nil\else\noexpand\tud@idx@typemarkup\the\@temptokena\fi
+ \noexpand\encapchar main%
+ }%
+ \fi
+ \ifx\@nil#3\@nil\else
+ \noexpand\special@index{%
+ \the\@temptokenb\noexpand\levelchar
+ % PATCH: add `\the\@temptokena' to sorting argument
+ ##1\ifx\@nil#2\@nil\else\the\@temptokena\fi
+ \noexpand\actualchar{\string\ttfamily\space##1}%
+ \noexpand\encapchar main%
+ }%
+ \fi
+ \noexpand\@esphack%
+ % PATCH: assign used sort key and formatted entry to dedicated macros
+ \gdef\noexpand\tud@idx@sortkey{##1\ifx\@nil#2\@nil\else\the\@temptokena\fi}%
+ \gdef\noexpand\tud@idx@format{%
+ {\string\ttfamily\space##1}%
+ \ifx\@nil#2\@nil\else\noexpand\tud@idx@typemarkup\the\@temptokena\fi
}%
- \protected@edef\tud@reserved{#3}%
- \special@index{%
- \expandonce\tud@reserved:\levelchar##1\actualchar%
- {\string\ttfamily\space##1}\encapchar main%
+ % PATCH: reset settings for nested index and changelog entries
+ \gdef\noexpand\tud@idx@element{#1}%
+ \global\let\noexpand\tud@idx@parent\relax%
+ }%
+ \@nameedef{Special#1Index}##1{%
+ \noexpand\@bsphack
+ \ifdoc@toplevel
+ \noexpand\doc@providetarget
+ \noexpand\index{%
+ % PATCH: add `\the\@temptokena' to sorting argument
+ ##1\ifx\@nil#2\@nil\else\the\@temptokena\fi
+ \noexpand\actualchar{\string\ttfamily\space##1}%
+ % PATCH: add `\tud@idx@typemarkup' for markup
+ \ifx\@nil#2\@nil\else\noexpand\tud@idx@typemarkup\the\@temptokena\fi
+ \noexpand\doc@handleencap{usage}%
+ }%
+ \fi
+ \ifx\@nil#3\@nil\else
+ \noexpand\index{%
+ \the\@temptokenb\noexpand\levelchar
+ % PATCH: add `\the\@temptokena' to sorting argument
+ ##1\ifx\@nil#2\@nil\else\the\@temptokena\fi
+ \noexpand\actualchar{\string\ttfamily\space##1}%
+ \noexpand\doc@handleencap{usage}%
+ }%
+ \fi
+ \noexpand\@esphack%
+ % PATCH: assign used sort key and formatted entry to dedicated macros
+ \gdef\noexpand\tud@idx@sortkey{##1\ifx\@nil#2\@nil\else\the\@temptokena\fi}%
+ \gdef\noexpand\tud@idx@format{%
+ {\string\ttfamily\space##1}%
+ \ifx\@nil#2\@nil\else\noexpand\tud@idx@typemarkup\the\@temptokena\fi
}%
- \@esphack%
- \let\parameter@parent@changes\relax%
- \hypersourcedef{\filesep\number\c@CodelineNo}%
+ % PATCH: reset settings for nested index and changelog entries
+ \gdef\noexpand\tud@idx@element{#1}%
+ \global\let\noexpand\tud@idx@parent\relax%
}%
}
-\CheckCommand*\@doxcreatespecialmacrolikeindex[3]{%
- \expandafter\def\csname Special#1Index\endcsname##1{%
- \@SpecialIndexHelper@##1\@nil
- \@bsphack%
- \index{\@gtempa\actualchar
- \string\verb\quotechar*\verbatimchar\bslash\@gtempa\verbatimchar
- \space(#2)\encapchar usage}%
- \index{#3:\levelchar\@gtempa\actualchar
- \string\verb\quotechar*\verbatimchar\bslash\@gtempa\verbatimchar
- \encapchar usage}%
- \@esphack%
+\CheckCommand*\doc@createspecialmacrolikeindexes[3]{%
+ \@temptokena{\space (#2)}%
+ \@temptokenb{#3:}%
+ \@nameedef{Code#1Index}##1##2{%
+ \noexpand\@SpecialIndexHelper@##2\noexpand\@nil
+ \noexpand\@bsphack
+ \noexpand\ifdoc@noindex\noexpand\else
+ \ifdoc@toplevel
+ \noexpand\special@index{%
+ \noexpand\@gtempa\noexpand\actualchar
+ \string\verb% % to fool emacs highlighting
+ \noexpand\quotechar*\noexpand\verbatimchar
+ \noexpand\bslash\noexpand\@gtempa\noexpand\verbatimchar
+ \ifx\@nil#2\@nil\else \the\@temptokena \fi
+ \noexpand\encapchar ##1%
+ }%
+ \fi
+ \ifx\@nil#3\@nil\else
+ \noexpand\special@index{%
+ \the\@temptokenb\noexpand\levelchar
+ \noexpand\@gtempa\noexpand\actualchar
+ \string\verb% % to fool emacs highlighting
+ \noexpand\quotechar*\noexpand\verbatimchar
+ \noexpand\bslash\noexpand\@gtempa\noexpand\verbatimchar
+ \noexpand\encapchar ##1%
+ }%
+ \fi
+ \noexpand\fi
+ \noexpand\@esphack%
}%
-}
-\renewcommand*\@doxcreatespecialmacrolikeindex[3]{%
- \expandafter\def\csname Special#1Index\endcsname##1{%
- \@SpecialIndexHelper@##1\@nil%
- \@bsphack%
- \protected@edef\tud@reserved{#2}%
- \index{%
- \@gtempa\space\expandonce\tud@reserved\actualchar%
- \string\verb\quotechar*\verbatimchar\bslash\@gtempa\verbatimchar%
- \index@type{\expandonce\tud@reserved}\encapchar usage%
- }%
- \protected@edef\tud@reserved{#3}%
- \index{%
- \expandonce\tud@reserved:\levelchar\@gtempa\actualchar%
- \string\verb\quotechar*\verbatimchar\bslash\@gtempa\verbatimchar%
- \encapchar usage%
- }%
- \@esphack%
+ \@nameedef{SpecialMain#1Index}##1{%
+ \expandafter\noexpand\csname Code#1Index\endcsname{main}{##1}%
}%
-}
-\CheckCommand*\@doxcreatespecialindex[3]{%
- \expandafter\def\csname Special#1Index\endcsname##1{%
- \@bsphack%
- \index{##1\actualchar{\protect\ttfamily##1} (#2)\encapchar usage}%
- \index{#3:\levelchar##1\actualchar{\protect\ttfamily##1}%
- \encapchar usage}%
- \@esphack%
+ \@nameedef{Special#1Index}##1{%
+ \noexpand\@SpecialIndexHelper@##1\noexpand\@nil
+ \noexpand\@bsphack
+ \noexpand\ifdoc@noindex\noexpand\else
+ \ifdoc@toplevel
+ \noexpand\doc@providetarget
+ \noexpand\index{%
+ \noexpand\@gtempa\noexpand\actualchar
+ \string\verb% % to fool emacs highlighting
+ \noexpand\quotechar*\noexpand\verbatimchar
+ \noexpand\bslash\noexpand\@gtempa\noexpand\verbatimchar
+ \ifx\@nil#2\@nil\else \the\@temptokena \fi
+ \noexpand\doc@handleencap{usage}%
+ }%
+ \fi
+ \ifx\@nil#3\@nil\else
+ \noexpand\index{%
+ \the\@temptokenb\noexpand\levelchar
+ \noexpand\@gtempa\noexpand\actualchar
+ \string\verb% % to fool emacs highlighting
+ \noexpand\quotechar*\noexpand\verbatimchar
+ \noexpand\bslash\noexpand\@gtempa\noexpand\verbatimchar
+ \noexpand\doc@handleencap{usage}%
+ }%
+ \fi
+ \noexpand\fi
+ \noexpand\@esphack%
}%
}
-\renewcommand*\@doxcreatespecialindex[3]{%
- \expandafter\def\csname Special#1Index\endcsname##1{%
- \@bsphack%
- \protected@edef\tud@reserved{#2}%
- \index{%
- ##1\space\expandonce\tud@reserved\actualchar%
- {\protect\ttfamily##1}\index@type{\expandonce\tud@reserved}%
- \encapchar usage%
+\renewcommand*\doc@createspecialmacrolikeindexes[3]{%
+ \@temptokena{\space (#2)}%
+ \@temptokenb{#3:}%
+ \@nameedef{Code#1Index}##1##2{%
+ \noexpand\@SpecialIndexHelper@##2\noexpand\@nil
+ \noexpand\@bsphack
+ \noexpand\ifdoc@noindex\noexpand\else
+ \ifdoc@toplevel
+ \noexpand\special@index{%
+ % PATCH: add `\the\@temptokena' to sorting argument
+ \noexpand\@gtempa\ifx\@nil#2\@nil\else\the\@temptokena\fi
+ \noexpand\actualchar
+ \string\verb% % to fool emacs highlighting
+ \noexpand\quotechar*\noexpand\verbatimchar
+ \noexpand\bslash\noexpand\@gtempa\noexpand\verbatimchar
+ % PATCH: add `\tud@idx@typemarkup' for markup
+ \ifx\@nil#2\@nil\else\noexpand\tud@idx@typemarkup\the\@temptokena\fi
+ \noexpand\encapchar ##1%
+ }%
+ \fi
+ \ifx\@nil#3\@nil\else
+ \noexpand\special@index{%
+ \the\@temptokenb\noexpand\levelchar
+ % PATCH: add `\the\@temptokena' to sorting argument
+ \noexpand\@gtempa\ifx\@nil#2\@nil\else\the\@temptokena\fi
+ \noexpand\actualchar
+ \string\verb% % to fool emacs highlighting
+ \noexpand\quotechar*\noexpand\verbatimchar
+ \noexpand\bslash\noexpand\@gtempa\noexpand\verbatimchar
+ \noexpand\encapchar ##1%
+ }%
+ \fi
+ \noexpand\fi
+ \noexpand\@esphack%
+ }%
+ \@nameedef{SpecialMain#1Index}##1{%
+ \expandafter\noexpand\csname Code#1Index\endcsname{main}{##1}%
+ % PATCH: assign used sort key and formatted entry to dedicated macros
+ \xdef\noexpand\tud@idx@sortkey{%
+ \noexpand\expandonce\noexpand\@gtempa%
+ \ifx\@nil#2\@nil\else\noexpand\unexpanded{\the\@temptokena}\fi%
}%
- \protected@edef\tud@reserved{#3}%
- \index{%
- \expandonce\tud@reserved:\levelchar##1\actualchar%
- {\protect\ttfamily##1}\encapchar usage%
+ \xdef\noexpand\tud@idx@format{%
+ \unexpanded{\noexpand\string\noexpand\verb}%
+ \unexpanded{\noexpand\quotechar*\noexpand\verbatimchar}%
+ \unexpanded{\noexpand\bslash}\noexpand\expandonce\noexpand\@gtempa%
+ \unexpanded{\noexpand\verbatimchar}%
+ \ifx\@nil#2\@nil\else
+ \noexpand\unexpanded{\noexpand\tud@idx@typemarkup\the\@temptokena}%
+ \fi
}%
- \@esphack%
+ % PATCH: reset settings for nested index and changelog entries
+ \gdef\noexpand\tud@idx@element{#1}%
+ \global\let\noexpand\tud@idx@parent\relax
}%
-}
-\def\@doxcreatemacrolikeprintname#1#2{%
- \ifcsundef{Print#1Name}{%
- \expandafter\def\csname Print#1Name\endcsname##1{%
- \MacroFont\string##1\index@type{#2}\strut\ %
+ \@nameedef{Special#1Index}##1{%
+ \noexpand\@SpecialIndexHelper@##1\noexpand\@nil
+ \noexpand\@bsphack
+ \noexpand\ifdoc@noindex\noexpand\else
+ \ifdoc@toplevel
+ \noexpand\doc@providetarget
+ \noexpand\index{%
+ % PATCH: add `\the\@temptokena' to sorting argument
+ \noexpand\@gtempa\ifx\@nil#2\@nil\else\the\@temptokena\fi
+ \noexpand\actualchar
+ \string\verb% % to fool emacs highlighting
+ \noexpand\quotechar*\noexpand\verbatimchar
+ \noexpand\bslash\noexpand\@gtempa\noexpand\verbatimchar
+ % PATCH: add `\tud@idx@typemarkup' for markup
+ \ifx\@nil#2\@nil\else\noexpand\tud@idx@typemarkup\the\@temptokena\fi
+ \noexpand\doc@handleencap{usage}%
+ }%
+ \fi
+ \ifx\@nil#3\@nil\else
+ \noexpand\index{%
+ \the\@temptokenb\noexpand\levelchar
+ % PATCH: add `\the\@temptokena' to sorting argument
+ \noexpand\@gtempa\ifx\@nil#2\@nil\else\the\@temptokena\fi
+ \noexpand\actualchar
+ \string\verb% % to fool emacs highlighting
+ \noexpand\quotechar*\noexpand\verbatimchar
+ \noexpand\bslash\noexpand\@gtempa\noexpand\verbatimchar
+ \noexpand\doc@handleencap{usage}%
+ }%
+ \fi
+ \noexpand\fi
+ \noexpand\@esphack%
+ % PATCH: assign used sort key and formatted entry to dedicated macros
+ \xdef\noexpand\tud@idx@sortkey{%
+ \noexpand\expandonce\noexpand\@gtempa%
+ \ifx\@nil#2\@nil\else\noexpand\unexpanded{\the\@temptokena}\fi%
}%
- }{}%
- \ifcsundef{PrintDescribe#1}{%
- \expandafter\def\csname PrintDescribe#1\endcsname##1{%
- \MacroFont\string##1\index@type{#2}\strut\ %
+ \xdef\noexpand\tud@idx@format{%
+ \unexpanded{\noexpand\string\noexpand\verb}%
+ \unexpanded{\noexpand\quotechar*\noexpand\verbatimchar}%
+ \unexpanded{\noexpand\bslash}\noexpand\expandonce\noexpand\@gtempa%
+ \unexpanded{\noexpand\verbatimchar}%
+ \ifx\@nil#2\@nil\else
+ \noexpand\unexpanded{\noexpand\tud@idx@typemarkup\the\@temptokena}%
+ \fi
}%
- }{}%
+ % PATCH: reset settings for nested index and changelog entries
+ \gdef\noexpand\tud@idx@element{#1}%
+ \global\let\noexpand\tud@idx@parent\relax
+ }%
}
-\def\@doxcreateprintname#1#2{%
- \ifcsundef{Print#1Name}{%
- \expandafter\def\csname Print#1Name\endcsname##1{%
- \MacroFont##1\index@type{#2}\strut\ %
- }%
- }{}%
- \ifcsundef{PrintDescribe#1}{%
- \expandafter\def\csname PrintDescribe#1\endcsname##1{%
- \MacroFont##1\index@type{#2}\strut\ %
- }%
- }{}%
+\def\tud@res@a#1{%
+ \kernel@ifnextchar[%]
+ {\tud@res@b{#1}}{\tud@res@b{#1}[]}%
}
-\newcommand*\saved@indextype{}
-\def\@doxcreatemacrolikeindexname#1#2{%
- \expandafter\def\csname @Save#1IndexName\endcsname##1{%
- \edef\saved@indexname{\expandafter\@gobble##1}%
- \protected@edef\saved@indextype{#2}%
- }%
+\def\tud@res@b#1[#2]#3#4{%
+ #1[{%
+ idxgroup=\csname tud@#4s@name\endcsname,%
+ idxtype=\csname tud@#4@name\endcsname,%
+ printtype=\csname tud@#4@name\endcsname,%
+ #2%
+ }]{#3}{#4}%
}
-\def\@doxcreateindexname#1#2{%
- \expandafter\def\csname @Save#1IndexName\endcsname##1{%
- \let\saved@indexname##1%
- \protected@edef\saved@indextype{#2}%
- }%
+\tud@res@a\RenewDocElement[macrolike,idxgroup,idxtype,printtype]{Macro}{macro}
+\tud@res@a\RenewDocElement{Env}{environment}
+\tud@res@a\NewDocElement{Option}{option}
+\tud@res@a\NewDocElement{LayerPageStyle}{layerpagestyle}
+\tud@res@a\NewDocElement{Layer}{layer}
+\tud@res@a\NewDocElement[macrolike]{Length}{length}
+\tud@res@a\NewDocElement{Counter}{counter}
+\tud@res@a\NewDocElement{Color}{TUDcolor}
+\tud@res@a\NewDocElement[macrolike]{Localization}{localization}
+\tud@res@a\NewDocElement[macrolike]{Field}{field}
+\tud@res@a\NewDocElement{Font}{KOMAfont}
+\tud@res@a\NewDocElement{Parameter}{parameter}
+\newcommand*\DescribeMacroParameters{}
+\def\DescribeMacroParameters{%
+ \kernel@ifnextchar[%]
+ {\Describe@Parameters{Macro}}{\Describe@Parameters{Macro}[]}%
}
-\CheckCommand*\@SaveMacroIndexName[1]{%
- \edef\saved@indexname{\expandafter\@gobble#1}%
-}
-\CheckCommand*\@SaveEnvIndexName[1]{\let\saved@indexname#1}
-\apptocmd{\@SaveMacroIndexName}{%
- \let\saved@indextype\@empty%
-}{}{\tud@patch@wrn{@SaveMacroIndexName}}
-\CheckCommand*\SpecialMainMacroIndex[1]{%
- \SpecialMainIndex{#1}\nobreak%
- \DoNotIndex{#1}%
-}
-\apptocmd{\SpecialMainMacroIndex}{%
- \let\parameter@parent@changes\relax%
- \hypersourcedef{\filesep\number\c@CodelineNo}%
-}{}{\tud@patch@wrn{SpecialMainMacroIndex}}
-\renewcommand*\tud@reserved[3][]{%
- \doxitem[#1,idxtype=\csname tud@#3@name\endcsname]{#2}{#3}{%
- \csname tud@#3s@name\endcsname%
- }%
+\newcommand*\DescribeEnvParameters{}
+\def\DescribeEnvParameters{%
+ \kernel@ifnextchar[%]
+ {\Describe@Parameters{Env}}{\Describe@Parameters{Env}[]}%
}
-\undef\PrintEnvName
-\undef\PrintDescribeEnv
-\tud@reserved{Env}{environment}
-\tud@reserved{Option}{option}
-\tud@reserved{LayerPageStyle}{layerpagestyle}
-\tud@reserved{Layer}{layer}
-\tud@reserved[macrolike]{Length}{length}
-\tud@reserved{Counter}{counter}
-\tud@reserved{Color}{TUDcolor}
-\tud@reserved[macrolike]{Localization}{localization}
-\tud@reserved[macrolike]{Field}{field}
-\tud@reserved{Font}{KOMAfont}
-\tud@reserved{Parameter}{parameter}
-\newcommand*\parameter@parent@changes{}
-\let\parameter@parent@changes\relax
-\newcommand*\parameter@parent@indexname{}
-\let\parameter@parent@indexname\relax
-\newcommand*\parameter@parent@indexformat{}
-\let\parameter@parent@indexformat\relax
-\apptocmd{\@SaveMacroIndexName}{%
- \edef\parameter@parent@indexname{\expandafter\@gobble#1}%
- \edef\parameter@parent@indexformat{%
- \string\verb\quotechar*\verbatimchar#1\verbatimchar%
+\newcommand*\Describe@Parameters{}
+\def\Describe@Parameters#1[#2]#3#4{%
+ \begingroup%
+ \csname keys_set:nn\endcsname{doc}{#2}%
+ \ifdoc@noindex%
+ \aftergroup\@gobble%
+ \else%
+ \aftergroup\@firstofone%
+ \fi%
+ \endgroup{%
+ \def\@tempc{#3}%
+ \@for\@tempa:=\@tempc\do{%
+ \trim@spaces@in\@tempa%
+ \ifx\@tempa\@empty\else%
+ \begingroup%
+ \let\index\@gobble%
+ \def\@tempb{\@nameuse{Describe#1}[noprint]}%
+ \expandafter\@tempb\expandafter{\@tempa}%
+ \xdef\tud@idx@parent{%
+ {\expandonce\tud@idx@sortkey}{\expandonce\tud@idx@format}%
+ }%
+ \endgroup%
+ \DescribeParameters[{#2,noprint}]{#4}%
+ \fi%
+ }%
}%
-}{}{\tud@patch@wrn{@SaveMacroIndexName}}
-\apptocmd{\@SaveEnvIndexName}{%
- \protected@edef\parameter@parent@indexname{#1\space\saved@indextype}%
- \protected@edef\parameter@parent@indexformat{%
- \string\verb\quotechar*\verbatimchar#1\verbatimchar%
- \index@type{\saved@indextype}%
+ \begingroup%
+ \csname keys_set:nn\endcsname{doc}{#2}%
+ \ifdoc@noprint%
+ \aftergroup\@gobble%
+ \else%
+ \aftergroup\@firstofone%
+ \fi%
+ \endgroup{%
+ \DescribeParameters[{#2,noindex}]{#4}%
}%
-}{}{\tud@patch@wrn{@SaveEnvIndexName}}
+ \global\let\tud@idx@parent\relax%
+}
\renewcommand*\SpecialMainParameterIndex[1]{%
- \ifx\parameter@parent@indexname\relax%
- \ClassError{\TUD@Class@Name}{No previous macro or environment}{%
- Since parameters can only be used for macros or\MessageBreak%
- environments, you have to use `parameter' within\MessageBreak%
- `macro' or `environment'.%
+ \ifx\tud@idx@parent\relax%
+ \@expandtwoargs\in@{\tud@idx@element}{Macro,Env}%
+ \ifin@%
+ \xdef\tud@idx@parent{%
+ {\expandonce\tud@idx@sortkey}{\expandonce\tud@idx@format}%
+ }%
+ \else%
+ \ClassError{\TUD@Class@Name}{No previous macro or environment}{%
+ Since parameters can only be used for macros or\MessageBreak%
+ environments, you have to use `parameter' within\MessageBreak%
+ `macro' or `environment'.%
+ }%
+ \fi%
+ \fi%
+ \ifx\tud@idx@parent\relax\else%
+ \gdef\tud@idx@sortkey{#1\space(\tud@parameter@name)}%
+ \gdef\tud@idx@format{%
+ {\string\ttfamily\space#1}%
+ \tud@idx@typemarkup\space(\tud@parameter@name)%
}%
+ \@bsphack%
+ \special@index{%
+ \expandafter\@firstoftwo\tud@idx@parent\actualchar%
+ \expandafter\@secondoftwo\tud@idx@parent\levelchar%
+ \tud@idx@sortkey\actualchar\tud@idx@format%
+ \encapchar main%
+ }%
+ \@esphack%
\fi%
- \protected@edef\parameter@parent@changes{%
- \parameter@parent@indexname\actualchar%
- \parameter@parent@indexformat:\levelchar%
- }%
- \@bsphack%
- \special@index{%
- \parameter@parent@indexname\actualchar%
- \parameter@parent@indexformat\levelchar%
- #1\space\tud@parameter@name\actualchar%
- {\string\ttfamily\space#1}\index@type{\tud@parameter@name}%
- \encapchar main%
- }%
- \special@index{%
- \tud@parameters@name:\levelchar%
- #1\space\parameter@parent@indexname%
- \actualchar{\string\ttfamily\space#1}%
- \noexpand\,--\noexpand\,\parameter@parent@indexformat%
- \encapchar main%
- }%
- \@esphack%
- \hypersourcedef{\filesep\number\c@CodelineNo}%
}
-\newenvironment{DescribeParameterParent}[2]{%
- \@nameuse{@Save#1IndexName}{\string#2}%
-}{}
\renewcommand*\SpecialParameterIndex[1]{%
- \ifx\parameter@parent@indexname\relax%
- \ClassError{\TUD@Class@Name}{No previous macro or environment}{%
+ \ifx\tud@idx@parent\relax%
+ \ClassError{\TUD@Class@Name}{No macro or environment given}{%
Since parameters can only be used for macros or\MessageBreak%
- environments, you have to use macro\MessageBreak%
- `\string\DescribeParameter' only within the environment\MessageBreak%
- `DescribeParameterParent'.%
+ environments, you have to use an appropriate command like\MessageBreak%
+ `\string\DescribeMacroParameters' or `\string\DescribeEnvParameters'.%
+ }%
+ \else%
+ \gdef\tud@idx@sortkey{#1\space(\tud@parameter@name)}%
+ \gdef\tud@idx@format{%
+ {\string\ttfamily\space#1}%
+ \tud@idx@typemarkup\space(\tud@parameter@name)%
+ }%
+ \@bsphack%
+ \index{%
+ \expandafter\@firstoftwo\tud@idx@parent\actualchar%
+ \expandafter\@secondoftwo\tud@idx@parent\levelchar%
+ \tud@idx@sortkey\actualchar\tud@idx@format%
+ \encapchar usage%
}%
+ \@esphack%
\fi%
- \@bsphack%
- \index{%
- \parameter@parent@indexname\actualchar%
- \parameter@parent@indexformat\levelchar%
- #1\space\tud@parameter@name\actualchar%
- {\protect\ttfamily#1}\index@type{\tud@parameter@name}%
- \encapchar usage%
- }%
- \index{%
- \tud@parameters@name:\levelchar#1\space\parameter@parent@indexname%
- \actualchar{\protect\ttfamily#1}%
- \noexpand\,--\noexpand\,\parameter@parent@indexformat%
- \encapchar usage%
+}
+\ifdefined\tudxdyflag
+\newcommand*\tud@xdy@filesep{?-}
+\newcommand*\tud@xdy@reference[1]{0:\filesep#1:\thepage}
+\newcommand*\tud@xdy@destination[3]{%
+ #1\if#2\expandafter\@car\tud@xdy@filesep\@nil\else\mbox{--}#2\fi%
+ \ifnum#3>\z@\textsubscript{\kern.1em#3}\fi%
+}
+\newcommand*\tud@xdy@mapping[2]{\tud@xdy@@mapping{#1}#2\@nil}
+\newcommand*\tud@xdy@@mapping{}
+\def\tud@xdy@@mapping#1#2:#3-#4:#5\@nil{%
+ \begingroup%
+ \ifundef{\hyperlink}{\let\tud@res@a\@gobble}{\let\tud@res@a\@firstofone}%
+ \csname\ifx\\#1\\relax\else#1\fi\endcsname{%
+ \tud@res@a{\hyperlink{page.#5}}{\tud@xdy@destination{#5}{#3}{#4}}%
+ }%
+ \endgroup%
+}
+\AfterPackage*{hypdoc}{%
+ \renewcommand*\tud@xdy@reference[1]{\the\c@HD@hypercount:\filesep#1:\thepage}%
+ \def\tud@xdy@@mapping#1#2:#3-#4:#5\@nil{%
+ \ifnum#2>\z@\relax
+ \hdclindex{#2}{#1}{\tud@xdy@destination{#5}{#3}{#4}}%
+ \else
+ \csname\ifx\\#1\\relax\else#1\fi\endcsname{%
+ \hyperlink{page.#5}{\tud@xdy@destination{#5}{#3}{#4}}%
+ }%
+ \fi
}%
+}
+\fi
+\ifdefined\tudxdyflag
+\newcommand*\tud@xdy@wrindex[1]{%
+ \protected@write\@indexfile{}{%
+ \string\indexentry{#1}{\tud@xdy@reference{0}}%
+ }%
+ \endgroup%
\@esphack%
}
+\newcommand*\tud@xdy@page@wrindex[1]{%
+ \begingroup
+ \let\@wrindex\tud@xdy@wrindex%
+ \index{#1}%
+ \endgroup
+}
+\AfterPackage*{hypdoc}{%
+ \renewcommand*\tud@xdy@page@wrindex[1]{%
+ \begingroup
+ \let\@wrindex\tud@xdy@wrindex%
+ \HDorg@index{#1}%
+ \endgroup
+ }
+}
+\newcommand*\tud@xdy@codeline@wrindex[1]{%
+ \if@filesw
+ \begingroup
+ \let\protect\noexpand
+ \immediate\write\@indexfile{%
+ \string\indexentry{#1}{\tud@xdy@reference{\number\c@CodelineNo}}%
+ }%
+ \endgroup
+ \fi
+}
+\fi
+\def\changehistoryname{\tud@changes@name}
\CheckCommand*\changes@[3]{%
\protected@edef\@tempa{%
\noexpand\glossary{%
- #1\levelchar
+ #1%
+ \ifdoc@reportchangedates\space -- #2\fi
+ \levelchar
\ifx\saved@macroname\@empty
- \space
+ \quotechar!%
\actualchar
\generalname
\else
@@ -833,146 +1072,93 @@
}%
\@tempa\endgroup\@esphack%
}
-\ifdefined\tudxdyflag%
- \renewcommand*\changes@[3]{%
- \@tempswatrue%
- \ifblank{#1}{\@tempswafalse}{}%
- \ifblank{#3}{\@tempswafalse}{}%
- \if@tempswa%
- \ifx\parameter@parent@changes\relax%
- \protected@edef\@tempb{%
- \saved@indexname%
- \ifx\saved@indextype\@empty\else%
- \space\saved@indextype%
- \fi%
- \actualchar%
- \string\verb\quotechar*%
- \verbatimchar\saved@macroname%
- \verbatimchar%
- \ifx\saved@indextype\@empty\else%
- \index@type{\saved@indextype}%
- \fi%
- :\levelchar%
- }%
- \else%
- \protected@edef\@tempb{%
- \parameter@parent@changes%
- \saved@indexname%
- \ifx\saved@indextype\@empty\else%
- \space\saved@indextype%
- \fi%
- \actualchar%
- {\noexpand\ttfamily\saved@macroname}%
- \ifx\saved@indextype\@empty\else%
- \index@type{\saved@indextype}%
- \fi%
- :\levelchar%
- }%
- \fi%
- \protected@edef\@tempa{%
- \noexpand\glossary{%
- #1\levelchar%
- \ifx\saved@macroname\@empty%
- \tud@general@name%
- \else%
- \tud@implementation@name%
- \fi%
- \levelchar%
- \ifx\saved@macroname\@empty\else%
- \@tempb%
- \fi%
- #2 #3%
- \actualchar%
- #3% (#2)%
- }%
+\renewcommand*\changes@[3]{%
+ \ifnum\@parse@version@1993/01/01\@nil<\expandafter\@parse@version@#2//00\@nil%
+ \expandafter\@gobble%
+ \else%
+ \expandafter\@firstofone%
+ \fi{\ClassWarning{\TUD@Class@Name}{The given date `#2' seems to be invalid}}%
+ \changes@@{#1}{#2}{#3}%
+}
+\ifdefined\tudxdyflag
+ \newcommand*\changes@@[3]{%
+ \protected@edef\@tempa{%
+ \noexpand\glossary{%
+ #1\ifdoc@reportchangedates\space -- #2\fi
+ \levelchar
+ \ifx\saved@macroname\@empty
+ \string~\actualchar\tud@general@name%
+ \else
+ \ifx\tud@idx@parent\relax\else
+ \expandafter\@firstoftwo\tud@idx@parent\actualchar
+ \expandafter\@secondoftwo\tud@idx@parent:\levelchar
+ \fi
+ \tud@idx@sortkey\actualchar\tud@idx@format%
+ \fi
+ :\levelchar
+ #2\space\protecting{#3}\actualchar\protecting{#3}%
}%
- \else%
- \let\@tempa\relax%
- \fi%
+ }%
\@tempa\endgroup\@esphack%
}%
-\else%
+\else
\renewcommand*\changes@[3]{%
\protected@edef\@tempa{%
\noexpand\glossary{%
- #1\levelchar%
- \ifx\saved@macroname\@empty%
- \quotechar!%
- \actualchar%
- \tud@general@name%
- :\levelchar%
- \else%
- \ifx\parameter@parent@changes\relax\else%
- \parameter@parent@changes zzz\space%
- \fi%
- \saved@indexname%
- \ifx\saved@indextype\@empty\else%
- \space\saved@indextype%
- \fi%
- \actualchar%
- \string\verb\quotechar*%
- \verbatimchar\saved@macroname%
- \verbatimchar%
- \ifx\saved@indextype\@empty\else%
- \index@type{\saved@indextype}%
- \fi%
- \ifx\parameter@parent@changes\relax%
- :\levelchar%
- \else%
- :\space%
- \fi%
- \fi%
- #3%
+ #1\ifdoc@reportchangedates\space -- #2\fi
+ \levelchar
+ \ifx\saved@macroname\@empty
+ \quotechar!\actualchar\tud@general@name%
+ \else
+ \ifx\tud@idx@parent\relax\else
+ \expandafter\@firstoftwo\tud@idx@parent\space--\space%
+ \fi
+ \tud@idx@sortkey\actualchar
+ \ifx\tud@idx@parent\relax\else
+ \expandafter\@secondoftwo\tud@idx@parent\noexpand\,--\noexpand\,%
+ \fi
+ \tud@idx@format%
+ \fi
+ :\levelchar
+ #2\space\protecting{#3}\actualchar\protecting{#3}%
}%
}%
\@tempa\endgroup\@esphack%
}%
-\fi%
-\CheckCommand*\@wrglossary[1]{%
- \protected@write\@glossaryfile{}%
- {\string\glossaryentry{#1}{\thepage}}%
- \endgroup
- \@esphack%
-}
-\def\@wrglossary#1{%
- \ifx\saved@macroname\@empty%
+\fi
+\ifdefined\tudxdyflag
+\newcommand*\tud@xdy@wrglossary[1]{%
+ \@tud@res@swafalse%
+ \ifx\special@index\@gobble\else\ifcodeline@index
+ \ifx\saved@macroname\@empty\else\@tud@res@swatrue\fi
+ \fi\fi
+ \global\advance\c@CodelineNo\@ne%
\protected@write\@glossaryfile{}{%
- \string\glossaryentry{#1|usage}{\thepage}%
+ \string\glossaryentry{#1|change}%
+ {\tud@xdy@reference{\if@tud@res@swa\number\c@CodelineNo\else0\fi}}%
}%
- \else%
- \ifcodeline@index%
- \global\advance\c@CodelineNo\@ne%
- \protected@write\@glossaryfile{}{%
- \string\glossaryentry{#1|main}{\filesep\number\c@CodelineNo}%
- }%
- \global\advance\c@CodelineNo\m@ne%
- \else%
- \protected@write\@glossaryfile{}{%
- \string\glossaryentry{#1|main}{\thepage}%
- }%
- \fi%
- \fi%
+ \global\advance\c@CodelineNo\m@ne%
\endgroup%
\@esphack%
}
-\newcommand*\tud@lst@subsub{}
-\newcommand*\tud@lst@subsubsub{}
-\newcommand*\subsubsubitem{\@idxitem\hspace*{35\p@}}
+\fi
+\newcommand*\tud@lst@@sub{}
+\newcommand*\tud@lst@@@sub{}
\newcommand*\efil{\hfil\nopagebreak}%
\newcommand*\tud@lst@def{%
\newcommand*\tud@lst@values{}%
- \newif\if@tud@lst@multi%
+ \tud@newif\if@tud@lst@multi%
\newcommand*\tud@lst@init{%
\let\tud@lst@values\relax%
- \let\tud@lst@subsub\relax%
+ \let\tud@lst@@sub\relax%
\@tud@lst@multifalse%
}%
\newcommand*\tud@lst@add[1]{%
\ifx\tud@lst@values\relax\else%
\@tud@lst@multitrue%
- \def\tud@lst@subsub{\subsubitem}%
+ \def\tud@lst@@sub{\subitem}%
\fi%
- \listadd\tud@lst@values{\tud@lst@subsub ##1}%
+ \listadd\tud@lst@values{\tud@lst@@sub ##1}%
}%
\newcommand*\tud@lst@process{%
\if@tud@lst@multi%
@@ -982,18 +1168,18 @@
\tud@lst@init%
}%
\newcommand*\tud@lst@@values{}%
- \newif\if@tud@lst@@multi%
+ \tud@newif\if@tud@lst@@multi%
\newcommand*\tud@lst@@init{%
\let\tud@lst@@values\relax%
- \def\tud@lst@subsub{\subsubitem}%
- \def\tud@lst@subsubsub{\space}%
+ \def\tud@lst@@sub{\subitem}%
+ \def\tud@lst@@@sub{\space}%
\@tud@lst@@multifalse%
}%
\newcommand*\tud@lst@@add[1]{%
\@tud@lst@multitrue%
\ifx\tud@lst@@values\relax\else%
\@tud@lst@@multitrue%
- \def\tud@lst@subsubsub{\subsubsubitem}%
+ \def\tud@lst@@@sub{\subsubitem}%
\fi%
\listadd\tud@lst@@values{##1}%
}%
@@ -1001,20 +1187,100 @@
\if@tud@lst@@multi%
\appto\tud@lst@values{\efill}%
\fi%
- \edef\tud@reserved####1{%
+ \protected@edef\tud@reserved####1{%
\noexpand\listadd\noexpand\tud@lst@values{%
- \expandonce\tud@lst@subsubsub####1%
+ \expandonce\tud@lst@@@sub####1%
}%
}%
\forlistloop{\tud@reserved}{\tud@lst@@values}%
\tud@lst@@init%
}%
}
+\DeclareHookRule{begindocument/before}{doc/hyperref}{<}{.}
+\AddToHook{begindocument/before}{%
+ \CheckCommand*\@wrindex[1]{%
+ \protected@write\@indexfile{}{\string\indexentry{#1}{\thepage}}%
+ \endgroup
+ \@esphack%
+ }
+ \CheckCommand*\codeline@wrindex[1]{% ltxdoc
+ \if@filesw
+ \begingroup
+ \let\protect\noexpand
+ \immediate\write\@indexfile{%
+ \string\indexentry{#1}{\filesep\number\c@CodelineNo}%
+ }%
+ \endgroup
+ \fi
+ }
+ \@ifpackageloaded{hypdoc}{%
+ \CheckCommand*\filesep{}
+ \CheckCommand*\doc@handleencap[1]{%
+ \encapchar hdclindex{\the\c@HD@hypercount}{#1}%
+ }
+ \CheckCommand*\HD@codeline@wrindex[1]{%
+ \begingroup
+ \let\HDorg@encapchar\encapchar
+ \def\encapchar##1\encapchar##2\@nil{%
+ \HDorg@encapchar
+ hdclindex{\the\c@HD@hypercount}{##1}%
+ }%
+ \codeline@wrindex{#1\encapchar\encapchar\@nil}%
+ \endgroup
+ }
+ \CheckCommand*\HD@page@wrindex[1]{%
+ \begingroup
+ \let\HDorg@encapchar\encapchar
+ \def\encapchar##1\encapchar##2\@nil{%
+ \HDorg@encapchar
+ hdpindex{##1}%
+ }%
+ \HDorg@index{#1\encapchar\encapchar\@nil}%
+ \endgroup
+ }
+ \CheckCommand*\@wrglossary[1]{%
+ \let\HDorg@encapchar\encapchar
+ \def\encapchar##1\encapchar##2\@nil{%
+ \HDorg@encapchar
+ hdpindex{##1}%
+ }%
+ \HDorg@wrglossary{#1\encapchar\encapchar\@nil}%
+ }
+ \CheckCommand*\HDorg@wrglossary[1]{%
+ \protected@write\@glossaryfile{}%
+ {\string\glossaryentry{#1}{\thepage}}%
+ \endgroup
+ \@esphack%
+ }
+ }{%
+ \CheckCommand*\@wrglossary[1]{%
+ \protected@write\@glossaryfile{}%
+ {\string\glossaryentry{#1}{\thepage}}%
+ \endgroup
+ \@esphack%
+ }
+ }
+ \ifdefined\tudxdyflag
+ \ifx\special@index\@gobble\else
+ \ifcodeline@index
+ \let\special@index\tud@xdy@codeline@wrindex
+ \else
+ \let\special@index\tud@xdy@page@wrindex
+ \fi
+ \@ifpackageloaded{hypdoc}{%
+ \let\HD@codeline@wrindex\tud@xdy@codeline@wrindex
+ \let\HD@page@wrindex\tud@xdy@page@wrindex
+ }{}%
+ \fi
+ \let\filesep\tud@xdy@filesep
+ \def\doc@handleencap#1{\encapchar #1}
+ \let\@wrindex\tud@xdy@wrindex
+ \let\@wrglossary\tud@xdy@wrglossary
+ \fi
+}
\ifdefined\tudxdyflag
- \newcommand*\tud@write@replace{}%
- \newwrite\tud@write@replace%
- \newcommand*\tud@read@replace{}%
- \newread\tud@read@replace%
+ \tud@newwrite\tud@xdy@write%
+ \tud@newread\tud@xdy@read%
\def\actualchar{<|1|>}%
\def\quotechar{<|2|>}%
\def\levelchar{<|3|>}%
@@ -1022,44 +1288,57 @@
\endlinechar=\m@ne\relax%
\def\tud@reserved#1#2{%
\IfFileExists{\jobname.#1}{%
- \immediate\openin\tud@read@replace=\jobname.#1\relax%
- \immediate\openout\tud@write@replace=\jobname-xdy.#1\relax%
+ \immediate\openin\tud@xdy@read=\jobname.#1\relax%
+ \immediate\openout\tud@xdy@write=\jobname-xdy.#1\relax%
\@tempswafalse%
- \loop\unless\ifeof\tud@read@replace%
- \readline\tud@read@replace to\tud@line@replace%
- \tud@replace\tud@line@replace{"}{""}%
- \tud@replace\tud@line@replace{!}{"!}%
- \tud@replace\tud@line@replace{:}{":}%
- \tud@replace\tud@line@replace{@}{"@}%
- \tud@replace\tud@line@replace{\"@}{"\@backslashchar"@}%
- \expandafter\tud@replace\expandafter\tud@line@replace%
+ \loop\unless\ifeof\tud@xdy@read%
+ \readline\tud@xdy@read to\tud@line@replace%
+ \expandafter\tud@replace@@in\expandafter\tud@line@replace%
+ \expandafter{\quotechar"}{"}%
+ \expandafter\tud@replace@@in\expandafter\tud@line@replace%
+ \expandafter{\quotechar!}{!}%
+ \expandafter\tud@replace@@in\expandafter\tud@line@replace%
+ \expandafter{\quotechar:}{:}%
+ \expandafter\tud@replace@@in\expandafter\tud@line@replace%
+ \expandafter{\quotechar @}{@}%
+ \tud@replace@@in\tud@line@replace{"}{""}%
+ \tud@replace@@in\tud@line@replace{!}{"!}%
+ \tud@replace@@in\tud@line@replace{:}{":}%
+ \tud@replace@@in\tud@line@replace{@}{"@}%
+ \tud@replace@@in\tud@line@replace{\"@}{"\"@}%
+ \expandafter\tud@replace@@in\expandafter\tud@line@replace%
\expandafter{\actualchar}{@}%
- \expandafter\tud@replace\expandafter\tud@line@replace%
+ \expandafter\tud@replace@@in\expandafter\tud@line@replace%
\expandafter{\quotechar}{"}%
- \expandafter\tud@replace\expandafter\tud@line@replace%
+ \expandafter\tud@replace@@in\expandafter\tud@line@replace%
\expandafter{\levelchar}{!}%
- \tud@replace\tud@line@replace{" @}{}%
- \ifeof\tud@read@replace\else%
- \immediate\write\tud@write@replace{%
+ \tud@replace@@in\tud@line@replace{" @}{}%
+ \ifeof\tud@xdy@read\else%
+ \immediate\write\tud@xdy@write{%
\unexpanded\expandafter{\tud@line@replace}%
}%
\@tempswatrue%
\fi%
\repeat%
- \immediate\closein\tud@read@replace%
- \immediate\closeout\tud@write@replace%
+ \immediate\closein\tud@xdy@read%
+ \immediate\closeout\tud@xdy@write%
\ifnum\pdf@shellescape=\@ne\relax%
\if@tempswa%
\ShellEscape{%
texindy\space%
- -o \jobname.#2\space%
- -M \@currname-#2.xdy\space%
- -t \jobname-#2.xlg\space%
+ -M \@currname-#2.xdy\space%
+ \ifdefvoid{\inputencodingname}{%
+ -C\space utf8%
+ }{%
+ -C\space\inputencodingname%
+ }\space%
+ -t \jobname-#2.xlg\space%
+ -o \jobname.#2\space%
\jobname-xdy.#1%
}%
\else%
- \immediate\openout\tud@write@replace=\jobname.#2\relax%
- \immediate\closeout\tud@write@replace%
+ \immediate\openout\tud@xdy@write=\jobname.#2\relax%
+ \immediate\closeout\tud@xdy@write%
\fi%
\fi%
}{}%
@@ -1077,18 +1356,59 @@
}%
\fi%
\fi
-\IndexPrologue{\addsec{\indexname}\tud@index@text}
-\GlossaryPrologue{\addsec{\tud@changes@name}}
\DeclareNewTOC[%
- type=todo,%
listname={\tud@todo@name},%
- name=ToDo,%
- tocentryindent=\z@,%
owner=\@currname,%
]{tdo}
-\setuptoc{tdo}{totoc}
-\newcommand*\PrintToDos{\ifdefined\tudfinalflag\else\listoftodos\fi}
-\patchcmd{\@docinclude}{%
+\setuptoc{tdo}{totoc,noindent}
+\newcommand*\PrintToDos{\ifdefined\tudfinalflag\else\listoftoc{tdo}\fi}
+\ifdefined\tudfinalflag
+\NewDocumentCommand\ToDo{mo}{}
+\else%
+\NewDocumentCommand\ToDo{mo}{%
+ \begingroup%
+ \csuse{phantomsection}%
+ \IfValueTF{#2}{%
+ \def\tud@reserved{#2}%
+ }{%
+ \def\tud@reserved{??}%
+ }%
+ \endgraf\ifdim\parskip>\z@\else\smallskip\fi\noindent%
+ \hfuzz0.8pt%
+ \leavevmode%
+ \def\@tempa{\raggedleft\fbox{ToDo:\space\tud@reserved\strut}}%
+ \ifundef{\marginnote}{%
+ \expandafter\marginpar\expandafter{\@tempa}%
+ }{%
+ \expandafter\marginnote\expandafter{\@tempa}[%
+ \dimexpr-\fboxsep-\fboxrule\relax%
+ ]%
+ }%
+ \fbox{\parbox{\dimexpr\linewidth-\fboxsep*2\relax}{#1\strut}}%
+ \endgraf\ifdim\parskip>\z@\else\bigskip\fi\noindent%
+ \let\@tempa\@empty%
+ \ifdefvoid{\currentfile}{}{%
+ \def\@tempa{\,--\,\texttt{\currentfile}}%
+ }%
+ \addxcontentsline{tdo}{subsection}{\tud@reserved\@tempa:\space#1}%
+ \endgroup%
+ \ignorespaces%
+}
+\fi
+\newcommand*\tud@index@heading{\addsec}
+\IndexPrologue{\tud@index@heading{\indexname}\tud@index@text}
+\GlossaryPrologue{\tud@index@heading{\tud@changes@name}}
+\NewDocumentCommand\PrintBackMatter{s}{%
+ \begingroup%
+ \@ifpackageloaded{bookmark}{\bookmarksetup{startatroot,open=false}}{}%
+ \IfBooleanT{#1}{\renewcommand*\tud@index@heading{\addpart}}%
+ \deftocheading{tdo}{\tud@index@heading{##1}}%
+ \IfBooleanT{#1}{\cleardoublepage}\PrintIndex%
+ \IfBooleanT{#1}{\cleardoublepage}\PrintChanges%
+ \IfBooleanT{#1}{\cleardoublepage}\PrintToDos%
+ \endgroup%
+}
+\patchcmd\@docinclude{%
\let\@ltxdoc@PrintIndex\PrintIndex
\let\PrintIndex\relax
\let\@ltxdoc@PrintChanges\PrintChanges
@@ -1101,7 +1421,7 @@
\let\@ltxdoc@PrintToDos\PrintToDos
\let\PrintToDos\relax
}{}{\tud@patch@wrn{@docinclude}}
-\patchcmd{\@docinclude}{%
+\patchcmd\@docinclude{%
\let\PrintIndex\@ltxdoc@PrintIndex
\let\PrintChanges\@ltxdoc@PrintChanges
}{%
@@ -1109,53 +1429,19 @@
\let\PrintChanges\@ltxdoc@PrintChanges
\let\PrintToDos\@ltxdoc@PrintToDos
}{}{\tud@patch@wrn{@docinclude}}
-\newcommand*\ToDo[2][]{%
- \kernel@ifnextchar[{\@ToDo{#2}}{\@ToDo{#2}[]}%
-}
-\newcommand*\@ToDo{}
-\def\@ToDo#1[#2]{%
- \ifdefined\tudfinalflag\else%
- \begingroup%
- \csuse{phantomsection}%
- \IfArgIsEmpty{#2}{%
- \def\tud@reserved{??}%
- }{%
- \def\tud@reserved{#2}%
- }%
- \endgraf%
- \hfuzz0.8pt%
- \leavevmode%
- \def\@tempa{\raggedleft\fbox{ToDo:\space\tud@reserved\strut}}%
- \ifdefined\marginnote%
- \expandafter\marginnote\expandafter{\@tempa}[%
- \dimexpr-\fboxsep-\fboxrule\relax%
- ]%
- \else%
- \expandafter\marginpar\expandafter{\@tempa}%
- \fi%
- \fbox{\parbox{\dimexpr\textwidth-2\fboxsep\relax}{#1\strut}}%
- \endgraf%
- \let\@tempa\@empty%
- \ifdefined\currentfile%
- \def\@tempa{\,--\,\texttt{\currentfile}}%
- \fi%
- \addxcontentsline{tdo}{todo}{\tud@reserved\@tempa:\space#1}%
- \endgroup%
- \fi%
-}
-\AfterPackage{mweights}{%
+\AfterPackage*{mweights}{%
\CheckCommand*\MacroFont{%
\fontencoding\encodingdefault%
\fontfamily\ttdefault%
\fontseries\mddefault%
- \fontshape\updefault%
+ \fontshape\shapedefault%
\small%
}%
\renewcommand*\MacroFont{%
\fontencoding\encodingdefault%
\fontfamily\ttdefault%
\fontseries\mdseries@tt%
- \fontshape\updefault%
+ \fontshape\shapedefault%
\small%
}%
\CheckCommand*\AltMacroFont{%
@@ -1176,20 +1462,12 @@
\ifundef{\mdseries@tt}{\edef\mdseries@tt{\mddefault}}{}%
}%
}
-\PassOptionsToPackage{ttfont=lmtt}{tudscrfonts}
-\AfterPackage{tudscrfonts}{%
- \AtEndPreamble{%
- \ifnum\tud@ttfont@num>\z@\relax%
- \edef\mdseries@tt{\tud@ttfont@bf}%
- \fi%
- }%
-}
\newcommand*\tud@setarea{%
- \setlength\topmargin{-1in}%
- \setlength\headheight{0pt}%
- \setlength\headsep{3em}%
- \setlength\footskip{1.5\headsep}%
- \setlength\textheight{\dimexpr\paperheight-2.5\headsep-\footskip\relax}%
+ \tud@setdim\topmargin{-1in}%
+ \tud@setdim\headheight{0pt}%
+ \tud@setdim\headsep{3em}%
+ \tud@setdim\footskip{\headsep}%
+ \tud@setdim\textheight{\paperheight-\headsep*5/2-\footskip*3/2}%
\@colht=\textheight%
\@colroom=\textheight%
\vsize=\textheight%
@@ -1197,254 +1475,220 @@
\begingroup%
\MacroFont\selectfont%
\settowidth\@tempdima{\space}%
- \setlength\@tempdima{80\@tempdima}%
- \addtolength\@tempdima{\MacroIndent}%
+ \tud@setdim\@tempdima{80\@tempdima}%
+ \tud@addtodim\@tempdima{\MacroIndent}%
\edef\@tempa{%
\endgroup%
- \noexpand\setlength\noexpand\textwidth{\the\@tempdima}%
+ \unexpanded{\tud@setdim\textwidth}{\the\@tempdima}%
}%
\@tempa%
\columnwidth=\textwidth%
\hsize=\columnwidth%
\linewidth=\hsize%
- \setlength\columnsep{1em}%
- \setlength\marginparsep{1em}%
- \setlength\marginparwidth{%
- \dimexpr\paperwidth-\textwidth-2\marginparsep\relax%
- }%
- \setlength\oddsidemargin{\dimexpr\marginparwidth+\marginparsep-1in\relax}%
+ \tud@setdim\columnsep{1em}%
+ \tud@setdim\labelsep{1em}%
+ \tud@setdim\marginparsep{\labelsep}%
+ \tud@setdim\oddsidemargin{\paperwidth-\textwidth-\labelsep-1in}%
+ \tud@setdim\marginparwidth{\oddsidemargin+1in-\labelsep-\marginparsep}%
}
\AtBeginDocument{\tud@setarea}
+\TUD@UnwindPackage{tudscrfonts}{%
+ \RequirePackage{lmodern}
+ \providecommand*\textcdln[1]{\textsf{#1}}%
+ \providecommand*\textcdrn[1]{\textcdln{#1}}%
+ \providecommand*\textcdsn[1]{\textcdln{#1}}%
+ \providecommand*\textcdbn[1]{\textbf{\textcdln{#1}}}%
+ \providecommand*\textcdxn[1]{\textcdbn{#1}}%
+ \providecommand*\textcdli[1]{\textsl{\textcdln{#1}}}%
+ \providecommand*\textcdri[1]{\textcdli{#1}}%
+ \providecommand*\textcdsi[1]{\textcdli{#1}}%
+ \providecommand*\textcdbi[1]{\textbf{\textcdli{#1}}}%
+ \providecommand*\textcdxi[1]{\textcdbi{#1}}%
+}
\newrobustcmd*\app[1]{\mbox{\textsl{\textbf{#1}}}}
+\newrobustcmd*\bdl[1]{\mbox{\textsf{\textbf{#1}}}}
\newrobustcmd*\cls[1]{\mbox{\textsf{\textbf{#1}}}}
\newrobustcmd*\pkg[1]{\mbox{\textsf{\textbf{#1}}}}
\newrobustcmd*\opt[1]{\mbox{\texttt{#1}}}
\newrobustcmd*\val[1]{\mbox{\texttt{#1}}}
+\newrobustcmd*\default[1]{\val{\textit{#1}}}
\newrobustcmd*\pgs[1]{\mbox{\texttt{#1}}}
\newrobustcmd*\env[1]{\mbox{\texttt{#1}}}
\newrobustcmd*\prm[1]{\mbox{\texttt{#1}}}
\newrobustcmd*\cnt[1]{\mbox{\texttt{#1}}}
\newrobustcmd*\file[1]{\mbox{\texttt{#1}}}
-\AfterPackage{hyperref}{%
+\AfterPackage*{hyperref}{%
\pdfstringdefDisableCommands{%
\let\app\@firstofone%
+ \let\bdl\@firstofone%
\let\cls\@firstofone%
\let\pkg\@firstofone%
\let\opt\@firstofone%
\let\val\@firstofone%
+ \let\default\@firstofone%
\let\pgs\@firstofone%
\let\env\@firstofone%
\let\prm\@firstofone%
\let\file\@firstofone%
}%
}
-\AtEndPreamble{%
- \@ifpackageloaded{babel}{}{%
- \ClassWarning{\TUD@Class@Name}{Package `babel' not loaded}%
- \providecommand*\selectlanguage[1]{}%
- \providecommand*\glqq{}%
- \providecommand*\grqq{}%
- }%
- \@ifpackageloaded{csquotes}{}{%
- \ClassWarning{\TUD@Class@Name}{Package `csquotes' not loaded}%
- \providecommand\enquote[1]{\emph{#1}}%
- }%
- \@ifpackageloaded{tudscrfonts}{}{%
- \RequirePackage{lmodern}[2009/10/30]%
- \providecommand*\textcdln[1]{\textsf{#1}}%
- \providecommand*\textcdrn[1]{\textcdln{#1}}%
- \providecommand*\textcdsn[1]{\textcdln{#1}}%
- \providecommand*\textcdbn[1]{\textbf{\textcdln{#1}}}%
- \providecommand*\textcdxn[1]{\textcdbn{#1}}%
- \providecommand*\textcdli[1]{\textsl{\textcdln{#1}}}%
- \providecommand*\textcdri[1]{\textcdli{#1}}%
- \providecommand*\textcdsi[1]{\textcdli{#1}}%
- \providecommand*\textcdbi[1]{\textbf{\textcdli{#1}}}%
- \providecommand*\textcdxi[1]{\textcdbi{#1}}%
- }%
-}
-%%% From File: tudscr-texindy.dtx
-\catcode`\#=12
+%%%% From File: tudscr-texindy.dtx (no git version info was found)
+\edef\tud@res@a{\catcode`\noexpand\#=\the\catcode`\#\relax}%
+\@makeother\#
\newcommand*\@hashchar{#}
-\catcode`\#=6
-\begingroup
-\ifdef{\tudxdyflag}{%
-\newcommand*\tud@write@xdy{}
-\newwrite\tud@write@xdy
-\newif\if@tud@xdy@glo
-\newcommand*\tud@xdy@create[2][theindex]{%
- \IfFileExists{\@currname-#2.xdy}{}{%
- \ifstr{#1}{theglossary}{\@tud@xdy@glotrue}{\@tud@xdy@glofalse}%
- \openout\tud@write@xdy=\@currname-#2.xdy\relax%
- \write\tud@write@xdy{(require "texindy.xdy")}%
- \write\tud@write@xdy{%
+\tud@res@a
+\ifdefined\tudxdyflag
+\NewDocumentCommand\tud@xdy@create{s}{%
+ \begingroup%
+ \edef\tud@res@a{\@currname-\IfBooleanTF{#1}{gls}{ind}.xdy}%
+ \expandafter\IfFileExists\expandafter{\tud@res@a}{}{%
+ \IfBooleanTF{#1}{\@tud@res@swatrue}{\@tud@res@swafalse}%
+ \edef\tud@res@b{the\if@tud@res@swa glossary\else index\fi}%
+ \edef\tud@res@a{\noexpand\tud@xdy@@create{\tud@res@b}{\tud@res@a}}%
+ \tud@res@a%
+ }%
+ \endgroup%
+}
+\newcommand*\tud@xdy@@create[2]{%
+ \immediate\openout\tud@xdy@write=#2\relax%
+ \immediate\write\tud@xdy@write{(require "texindy.xdy")}%
+ \immediate\write\tud@xdy@write{%
(markup-index^^J%
- \space\space:open^^J%
+ \@spaces:open^^J%
"\string\begin{#1}^^J%
- \space\space%
- \string\providecommand*\string\lettergroupDefault[1]{\@percentchar^^J%
- \@spaces\string\par%
- \string\centerline{\string\textbf{\string\textsf{Symbole}}}%
- \string\par\@percentchar^^J%
- \@spaces\string\nopagebreak\@percentchar^^J%
- \space\space}\@percentchar^^J%
- \space\space%
- \string\providecommand*\string\lettergroup[1]{\@percentchar^^J%
- \@spaces\string\par%
- \string\centerline{\string\textbf{\string\textsf{\@hashchar1}}}%
- \string\par\@percentchar^^J%
- \@spaces\string\nopagebreak\@percentchar^^J%
- \space\space}\@percentchar^^J%
\space\space\string\makeatletter\@percentchar^^J%
- \space\space\string\scan@allowedfalse\@percentchar%
- }%
- \if@tud@xdy@glo%
- \write\tud@write@xdy{%
+ \space\space\string\providecommand*\string\lettergroupDefault[1]%
+ {\string\lettergroup{\string\tud@symbols@name}}\@percentchar^^J%
+ \space\space\string\providecommand*\string\lettergroup[1]{\@percentchar^^J%
+ \@spaces\string\belowpdfbookmark%
+ {\@hashchar1}{#1/\@hashchar1}\@percentchar^^J%
+ \@spaces\string\par\string\centerline%
+ {\string\normalsize\string\textbf{\string\textsf{\@hashchar1}}}%
+ \@percentchar^^J%
+ \@spaces\string\par\string\smallskip\string\nopagebreak\@percentchar^^J%
+ \space\space}\@percentchar^^J%
+ \space\space\string\scan@allowedfalse\@percentchar^^J%
+\if@tud@res@swa
\space\space\string\newcommand*\string\@lettergroup{}\@percentchar^^J%
- \space\space%
- \string\def\string\@lettergroup\@hashchar1\string\relax%
- {\string\lettergroup{\@hashchar1}}\@percentchar^^J%
- \space\space\string\tud@lst@def\@percentchar%
- }%
- \fi%
- \if@tud@xdy@glo%
- \write\tud@write@xdy{%
- "^^J%
- \space\space:close "\string~n\string~n\string\end{#1}\string~n"^^J%
- \space\space:hierdepth 4^^J%
- )%
- }%
- \else%
- \write\tud@write@xdy{%
- "^^J%
- \space\space:close "\string~n\string~n\string\end{#1}\string~n"^^J%
- \space\space:hierdepth 3^^J%
- )%
- }%
- \fi%
- \write\tud@write@xdy{%
- (define-location-class^^J%
- \space\space"arabic-page-numbers" ("arabic-numbers")%
- \space:min-range-length 1^^J%
+ \space\space\string\def\string\@lettergroup\@hashchar1\string\relax%
+ {\string\lettergroup{\@hashchar1}}\@percentchar^^J%
+ \space\space\string\tud@lst@def\@percentchar^^J%
+\fi
+ \space\space\string\providecommand*\string\seesep{/}\@percentchar^^J%
+ "^^J% Ende des Umgebungsbeginns
+ \@spaces:close "\string~n\string~n\string\end{#1}\string~n"^^J%
+ \@spaces:hierdepth 3^^J%
+ )^^J%
+ (define-sort-rule-orientations (forward backward forward forward))^^J%
+ (use-rule-set :run 0^^J%
+ \@spaces:rule-set ("xy-alphabetize" "xy-resolve-special")^^J%
+ )^^J%
+ (use-rule-set :run 1^^J%
+ \@spaces:rule-set ("xy-resolve-diacritics" "xy-resolve-special")^^J%
+ )^^J%
+ (use-rule-set :run 2^^J%
+ \@spaces:rule-set ("xy-resolve-case" "xy-resolve-special")^^J%
)^^J%
(define-alphabet "AlphaExtended"^^J%
- \space(^^J%
- \space\space"A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M"^^J%
- \space\space"N" "O" "P" "Q" "R" "S" "T" "U" "V" "W" "X" "Y" "Z"^^J%
- \space\space"a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l" "m"^^J%
- \space\space"n" "o" "p" "q" "r" "s" "t" "u" "v" "w" "x" "y" "z"^^J%
- \space\space"?"^^J%
- \space)^^J%
+ \@spaces(^^J%
+ \@spaces\@spaces"A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M"^^J%
+ \@spaces\@spaces"N" "O" "P" "Q" "R" "S" "T" "U" "V" "W" "X" "Y" "Z"^^J%
+ \@spaces\@spaces"a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l" "m"^^J%
+ \@spaces\@spaces"n" "o" "p" "q" "r" "s" "t" "u" "v" "w" "x" "y" "z"^^J%
+ \@spaces\@spaces"?"^^J%
+ \@spaces)^^J%
)^^J%
- (define-location-class^^J%
- \space\space"codeline" ("AlphaExtended" :sep "-" "arabic-numbers")%
- \space:min-range-length 2^^J%
+ (define-location-class "hypdoc"^^J%
+ \@spaces(^^J%
+ \@spaces\@spaces"arabic-numbers" :sep ":"^^J%
+ \@spaces\@spaces"AlphaExtended" \space:sep "-" "arabic-numbers" :sep ":"^^J%
+ \@spaces\@spaces"arabic-numbers"^^J%
+ \@spaces)^^J%
+ \@spaces:min-range-length 2^^J%
)^^J%
- (define-location-class-order ("arabic-page-numbers" "codeline"))^^J%
- (markup-range :sep "--")%
- }%
- \write\tud@write@xdy{%
- (merge-rule "\@backslashchar[(.*)\@backslashchar]" "" :eregexp)%
- ^^J%
- (merge-rule%
- \space"\string^(@+)([\string^@~n]*)"%
- \space"\string\2\string~e\string\1"%
- \space:eregexp :again%
+ (define-location-class "arabic-page-numbers"^^J%
+ \@spaces("arabic-numbers")^^J%
+ \@spaces:min-range-length 2^^J%
)^^J%
- (merge-rule%
- \space"(.*)(@@@@)([\string^@~n]*)"%
- \space"\string\1@@@\string\3\string~e"%
- \space:again :eregexp%
+ (define-location-class-order ("hypdoc" "arabic-page-numbers"))^^J%
+ (markup-range :sep "--")^^J%
+ (merge-rule :again^^J%
+ \@spaces"(.*)@(.*)"^^J%
+ \@spaces"\string\1\string\2\space\string~e"^^J%
)^^J%
- (merge-rule%
- \space"(.*)(@@@)([\string^@~n]*)"%
- \space"\string\1@@\string\3\string~e"%
- \space:again :eregexp%
+ (merge-rule :eregexp^^J%
+ \@spaces"\string\[(.*)\string\]"^^J%
+ \@spaces""^^J%
)^^J%
- (merge-rule%
- \space"(.*)(@@)([\string^@~n]*)"%
- \space"\string\1@\string\3\string~e"%
- \space:eregexp :again%
+\if@tud@res@swa
+ (markup-letter-group^^J%
+ \@spaces:open-head\space\space"\string~n\space\space\string\@gobble{"^^J%
+ \@spaces:close-head "}"^^J%
)^^J%
- (merge-rule%
- \space"(.*?)(@)([\string^@~n]*)"%
- \space"\string\1\string~b\string\3"%
- \space:eregexp :again%
- )%
- }%
- \if@tud@xdy@glo%
- \write\tud@write@xdy{%
- (markup-letter-group%
- \space:open-head "\string~n\space\space\string\@gobble{"%
- \space:close-head "}"%
+ (markup-indexentry-list :depth 0^^J%
+ \@spaces:sep\space\space\space%
+ "\string~n\string~n\space\space\string\indexspace\string~n"^^J%
)^^J%
- (markup-indexentry-list%
- \space:sep "\string~n\string~n\space\space\string\indexspace\string~n"%
- \space:depth 0%
+ (markup-indexentry \@spaces\space:depth 0^^J%
+ \@spaces:open\space\space%
+ "\string~n\space\space\string\@lettergroup\space"^^J%
)^^J%
- (markup-indexentry\@spaces\space\space%
- :open "\string~n\space\space\string\@lettergroup\space"\space:depth 0%
+ (markup-indexentry-list :depth 1^^J%
+ \@spaces:open\space\space"\string\relax"^^J%
)^^J%
- (markup-indexentry-list :open "\string\relax" :depth 1)^^J%
- (markup-indexentry\@spaces\space\space%
- :open "\string~n\space\space\string\item\space" :depth 1%
+ (markup-indexentry \@spaces\space:depth 1^^J%
+ \@spaces:open\space\space"\string~n\space\space\string\item\space"^^J%
)^^J%
- (markup-indexentry-list :open "\string\efill" :depth 2)^^J%
- (markup-indexentry\@spaces\space\space%
- :open "\string~n\@spaces\string\subitem\space" :depth 2%
+ (markup-indexentry-list :depth 2^^J%
+ \@spaces:open\space\space"\string\tud@lst@init"^^J%
+ \@spaces:close "\string~n \@spaces\space\string\tud@lst@process"^^J%
)^^J%
- (markup-indexentry-list^^J%
- \space\space:open\space\space"\string\tud@lst@init"^^J%
- \space\space:close "\string~n \@spaces\space\string\tud@lst@process"^^J%
- \space\space:depth 3^^J%
+ (markup-indexentry \@spaces\space:depth 2^^J%
+ \@spaces:open%
+ \space\space"\string~n\@spaces\space\space\string\tud@lst@add{"^^J%
+ \@spaces:close "}"^^J%
)^^J%
- (markup-indexentry^^J%
- \space\space:open%
- \space\space"\string~n\@spaces\space\space\string\tud@lst@add{"^^J%
- \space\space:close "}"^^J%
- \space\space:depth 3^^J%
+ (markup-indexentry-list :depth 3^^J%
+ \@spaces:close "\string~n\@spaces\@spaces\string\tud@lst@@process{"^^J%
+ \@spaces:open\space\space"}\string\tud@lst@@init"^^J%
)^^J%
- (markup-indexentry-list^^J%
- \space\space:close "\string~n\@spaces\@spaces\string\tud@lst@@process{"^^J%
- \space\space:open\space\space"}\string\tud@lst@@init"^^J%
- \space\space:depth 4^^J%
+ (markup-indexentry \@spaces\space:depth 3^^J%
+ \@spaces:open%
+ \space\space"\string~n\@spaces\@spaces\string\tud@lst@@add{"^^J%
+ \@spaces:close "}"^^J%
+ )^^J%
+\else
+ (markup-indexentry-list :open "\string\efil" :depth 1)^^J%
+\fi
+ (markup-locclass-list^^J%
+ \@spaces:open\space\space"\string\pfill\space"^^J%
+ \@spaces:close "\string\relax"^^J%
+ \@spaces:sep\space\space\space",\space"^^J%
)^^J%
- (markup-indexentry^^J%
- \space\space:open%
- \space\space"\string~n\@spaces\@spaces\string\tud@lst@@add{"^^J%
- \space\space:close "}"^^J%
- \space\space:depth 4^^J%
- )%
- }%
- \else%
- \write\tud@write@xdy{%
- (markup-indexentry-list :open "\string\efil" :depth 1)%
- }%
- \fi%
- \write\tud@write@xdy{%
- (markup-locclass-list%
- \space:open "\string\pfill\space"%
- \space:close "\string\relax"%
- \space:sep ",\space"%
- )%
- }%
- \write\tud@write@xdy{%
(markup-attribute-group-list :sep ", ")^^J%
- (define-attributes (("usage") ("main") ("default")))^^J%
- (markup-locref :attr "usage"%
- \space:open "\string\usage{"\space:close "}"%
+ (define-attributes (("usage") ("main") ("code") ("change") ("default")))^^J%
+ (markup-locref :attr "change"^^J%
+ \@spaces:open"\string\tud@xdy@mapping{change}{"^^J
+ \@spaces:close "}"^^J%
+ )^^J%
+ (markup-locref :attr "code"^^J%
+ \@spaces:open "\string\tud@xdy@mapping{code}{"^^J%
+ \@spaces:close "}"^^J%
+ )^^J%
+ (markup-locref :attr "usage"^^J%
+ \@spaces:open "\string\tud@xdy@mapping{usage}{"^^J%
+ \@spaces:close "}"^^J%
+ )^^J%
+ (markup-locref :attr "main"^^J%
+ \@spaces:open "\string\tud@xdy@mapping{main}{"^^J%
+ \@spaces:close "}"^^J%
)^^J%
- (markup-locref :attr "main"%
- \space\space:open "\string\main{"\space\space:close "}"%
- )%
- }%
- \closeout\tud@write@xdy%
}%
+ \immediate\closeout\tud@xdy@write%
}
-\tud@xdy@create{ind}
-\tud@xdy@create[theglossary]{gls}
-}{}
-\endgroup
+\tud@xdy@create
+\tud@xdy@create*
+\fi
\endinput
%%
%% End of file `tudscrdoc.cls'.
diff --git a/Master/texmf-dist/tex/latex/tudscr/tudscrfonts.sty b/Master/texmf-dist/tex/latex/tudscr/tudscrfonts.sty
index 330fc11396b..4ba262389fe 100644
--- a/Master/texmf-dist/tex/latex/tudscr/tudscrfonts.sty
+++ b/Master/texmf-dist/tex/latex/tudscr/tudscrfonts.sty
@@ -4,7 +4,7 @@
%%
%% The original source files were:
%%
-%% tudscr-version.dtx (with options: `package,fonts')
+%% tudscr-version.dtx (with options: `package,fonts,identify')
%% tudscr-fonts.dtx (with options: `package,fonts,identify')
%% tudscr-base.dtx (with options: `package,fonts,load')
%% tudscr-fonts.dtx (with options: `package,fonts,option')
@@ -12,14 +12,15 @@
%% tudscr-comp.dtx (with options: `package,fonts,option')
%% tudscr-misc.dtx (with options: `package,fonts,execute')
%% tudscr-fonts.dtx (with options: `package,fonts,body')
-%% tudscr-comp.dtx (with options: `package,fonts,body')
%% tudscr-misc.dtx (with options: `package,fonts,body')
+%% tudscr-comp.dtx (with options: `package,fonts,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.
%% ----------------------------------------------------------------------------
@@ -35,61 +36,76 @@
%%
%% 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}
\@ifundefined{TUDScript}{%
\DeclareRobustCommand\TUDScript{%
- \textsf{%
- T\kern.05em U\kern.05em D\kern.1em-\kern.1em Script%
- }%
- \ifcsname xspace\endcsname%
- \xspace%
- \fi%
+ \mbox{%
+ \textsf{%
+ T\kern.05em U\kern.05em D\kern.1em-\kern.1em Script%
+ }%
+ }\ifcsname xspace\endcsname\xspace\fi%
}%
}{}
-%%% From File: tudscr-fonts.dtx
+\providecommand*\TUDScriptContact{hanisch.latex@outlook.com}
+\providecommand*\TUDScriptRepository{https://github.com/tud-cd/tudscr}
+\providecommand*\TUDScriptForum{https://latex.wcms-file3.tu-dresden.de/phpBB3/}
+%%%% From File: tudscr-fonts.dtx (no git version info was found)
\ProvidesPackage{tudscrfonts}[%
- 2021/07/15 v2.06n TUD-Script
- package
- (corporate design fonts)%
+ 2022/08/09 v2.06o TUD-Script
+ package (corporate design fonts)%
]
-\ifcsname KOMAClassName\endcsname\else
- \RequirePackage{scrextend}[2020/09/21]
-\fi
+%%%% From File: tudscr-base.dtx (no git version info was found)
+\RequirePackage{tudscrbase}[%
+ 2022/08/09 v2.06o TUD-Script
+]
+%%%% 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\"%
+\AtEndOfPackage{\tud@catcodes@restore}
+\ifundef{\KOMAClassName}{%
+ \RequirePackage{scrextend}[%
+ 2022/05/01 v3.36 KOMA-Script
+ ]%
+}{}
\@tempswafalse%
\@for\@tempa:={%
tudbook,tudbeamer,tudfax,tudform,tudhaus,tudletter,tudposter,tudmathposter%
}\do{%
- \@ifclassloaded{\@tempa}{%
- \if@tempswa\else\@tempswatrue\let\@tempb\@tempa\fi%
- }{}%
+ \if@tempswa\else
+ \@ifclassloaded{\@tempa}{\@tempswatrue\let\@tempb\@tempa}{}%
+ \fi
}%
\if@tempswa%
\@ifpackageloaded{fix-tudscrfonts}{}{%
@@ -100,13 +116,10 @@
}%
}%
\fi%
-%%% From File: tudscr-base.dtx
-\RequirePackage{tudscrbase}[\TUD@Version]
-%%% From File: tudscr-fonts.dtx
-\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}{%
@@ -170,14 +183,11 @@
\TUDoptions{fontspec=false}%
\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{%
@@ -192,8 +202,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,%
@@ -226,6 +236,7 @@
\TUDoptions{cdfont=#1}%
\fi%
}
+\TUD@key{cdoldfonts}[true]{\TUDoptions{cdoldfont=#1}}
\AtEndOfPackage%
{%
\if@tud@cdoldfont@active%
@@ -252,23 +263,33 @@
}%
\fi%
}
-\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%
- \@expandtwoargs\in@{,\CurrentOption,}{,\@globaloptionslist,}%
- \ifin@\else%
- \edef\tud@res@a{%
- \noexpand\PackageWarning{tudscrfonts}%
- {%
- The key `\CurrentOption' should only be\MessageBreak%
- used as class option%
+ \ifdim\@tempa<\p@\relax%
+ \FamilyKeyStateUnknownValue%
+ \else%
+ \@expandtwoargs\in@{,\CurrentOption,}{,\@globaloptionslist,}%
+ \ifin@\else%
+ \edef\tud@res@a{%
+ \noexpand\PackageWarning{tudscrfonts}%
+ {%
+ The key `\CurrentOption' should only be\MessageBreak%
+ used as class option%
+ }%
}%
- }%
- \expandafter\AtEndOfPackage\expandafter{\tud@res@a}%
- \fi
- \@tud@x@scr@fontsize@settrue%
- \TUD@KOMAoptions{fontsize=#1}%
+ \expandafter\AtEndOfPackage\expandafter{\tud@res@a}%
+ \fi%
+ \TUD@KOMAoptions{fontsize=#1}%
+ \fi%
+ \fi%
+ \ifx\FamilyKeyState\FamilyKeyStateUnknownValue%
+ \PackageWarningNoLine{tudscrfonts}%
+ {%
+ The value for option `fontsize' must be a dimension\MessageBreak%
+ and at least 1pt but `#1' was given%
+ }%
+ \FamilyKeyStateProcessed%
\fi%
}
\AtEndOfPackage%
@@ -276,17 +297,16 @@
\RelaxFamilyKey{TUD}{fontsize}%
\DefineFamilyMember{KOMA}%
\DefineFamilyKey{KOMA}{fontsize}{%
- \@tud@x@scr@fontsize@settrue%
+ \FamilyKeyStateUnknownValue%
\PackageWarning{tudscrfonts}%
{%
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,%
@@ -299,7 +319,7 @@
\or% true
\@tud@relspacingtrue%
\fi%
- \TUD@SpecialOptionAtDocument{tud@font@skip@set}%
+ \TUD@SpecialOptionAtDocument{tud@relspacing@set}%
\fi%
}
\newcommand*\tud@ttfont@num{0}
@@ -372,12 +392,12 @@
}
\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-misc.dtx
+%%%% From File: tudscr-misc.dtx (no git version info was found)
\newcommand*\tud@atdocument@hook{}
\let\tud@atdocument@hook\relax
\newcommand*\TUD@SpecialOptionAtDocument[1]{}
@@ -393,7 +413,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]{%
\PackageWarning{tudscrfonts}%
{%
@@ -473,67 +493,31 @@
\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{%
\PackageWarningNoLine{tudscrfonts}%
{%
@@ -542,6 +526,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%
}
@@ -617,7 +607,7 @@
\fi%
\fi%
}
-\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%
@@ -632,12 +622,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}%
}{%
@@ -650,34 +640,34 @@
\TUD@key@preset{cdfont}{true}%
\TUD@key@preset{ttfont}{roboto}%
}
-\DeclareOption*{\expandafter\KOMAoptions\expandafter{\CurrentOption}}
\TUDExecuteOptions{%
}
+\DeclareOption*{\expandafter\TUD@KOMAoptions\expandafter{\CurrentOption}}
\TUDProcessOptions\relax
\newcommand*\TUD@key@toolate[1]{%
- \csedef{tud@key@#1@error}{%
+ \csedef{tud@key@toolate@@#1}{%
\noexpand\PackageError{tudscrfonts}%
{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%
package `tudscrfonts'%
- \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-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}{%
@@ -716,11 +706,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}
@@ -733,12 +721,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}{%
@@ -746,8 +739,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}{%
\PackageWarningNoLine{tudscrfonts}%
@@ -764,6 +757,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][-]{%
@@ -798,7 +802,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%
@@ -815,7 +819,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%
\PackageWarningNoLine{tudscrfonts}%
@@ -823,8 +830,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}%
@@ -838,7 +849,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%
@@ -856,7 +867,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{%
@@ -870,8 +881,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 %
@@ -888,48 +899,12 @@
\fi%
\appto\tud@res@a{A fallback layout is used}%
\edef\tud@res@c{%
- \etex@unexpanded{\PackageWarning{tudscrfonts}}%
- {\tud@res@a}
+ \unexpanded{\PackageWarningNoLine{tudscrfonts}}%
+ {\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}%
-}
-\AfterClass*{beamer}{\usefonttheme[onlymath]{serif}}
-\newif\if@tud@x@bm@requested
-\@ifpackageloaded{bm}{%
- \PackageWarning{tudscrfonts}{%
- Package `bm' must be loaded after `tudscrfonts'. \MessageBreak%
- Otherwise the functionality can not be guaranteed%
- }%
-}{%
-\PreventPackageFromLoading[\@tud@x@bm@requestedtrue]{bm}
-}
\newcommand*\tud@x@fontspec@init[2]{%
\begingroup%
\edef\tud@res@a{%
@@ -959,7 +934,7 @@
}%
\edef\tud@res@a{%
\endgroup%
- \noexpand\DeclareRobustCommand%
+ \noexpand\renewrobustcmd*%
\expandafter\noexpand\csname #1family\endcsname{%
\expandafter\noexpand\csname tud@x@fontspec@fam@#2\endcsname%
}%
@@ -967,8 +942,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}%
@@ -993,13 +969,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%
@@ -1048,10 +1017,17 @@
\edef\mddef@ult{\mddefault}%
\edef\famdef@ult{\familydefault}%
\fi%
- \tud@font@skip@set%
+ \tud@relspacing@set%
\normalfont\selectfont%
}
\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%
@@ -1065,7 +1041,6 @@
\fi%
\tud@cdfont@@set%
\fi%
- \tud@cdfont@wrn%
}
\newcommand*\tud@cdfont@md{m}
\newcommand*\tud@cdfont@bf{b}
@@ -1133,7 +1108,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%
@@ -1154,35 +1129,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{%
@@ -1223,28 +1220,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{}%
@@ -1267,7 +1269,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{%
@@ -1285,23 +1287,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{}%
@@ -1329,26 +1334,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{%
@@ -1367,7 +1352,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}%
@@ -1376,7 +1361,7 @@
\newcommand*\tud@db@wrn{%
\PackageWarning{tudscrfonts}%
{%
- 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%
@@ -1418,7 +1403,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]{%
@@ -1426,29 +1411,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%
\PackageWarning{tudscrfonts}%
{The font `#1' is unknown}%
@@ -1457,20 +1442,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%
\PackageWarning{tudscrfonts}%
{The font `#1' is unknown}%
@@ -1478,8 +1463,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{_}{}%
@@ -1488,9 +1472,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}%
@@ -1500,8 +1484,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{_}{}%
@@ -1544,12 +1527,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%
@@ -1634,24 +1617,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%
@@ -1666,8 +1649,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}{%
+ \PackageWarningNoLine{tudscrfonts}%
+ {`\tud@res@b' encoding subset undefinied}%
+ }{%
+ \eappto\tud@res@a{%
+ \noexpand\DeclareEncodingSubset{TS1}{tudtt}{\csuse{\tud@res@b}}%
+ }%
+ }%
+ \tud@res@a%
\fi%
\fi%
}
@@ -1751,7 +1744,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}}%
}{}%
@@ -1779,7 +1772,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{%
@@ -1792,7 +1785,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{%
@@ -1891,26 +1884,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%
@@ -1918,43 +1904,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}{}{%
@@ -2000,12 +1952,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%
@@ -2015,104 +1966,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{%
@@ -2121,14 +2096,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{%
@@ -2141,18 +2116,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{}
@@ -2181,7 +2211,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%
@@ -2204,7 +2234,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}%
@@ -2307,7 +2337,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}%
@@ -2316,13 +2346,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%
@@ -2337,7 +2366,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}{}{%
@@ -2351,6 +2380,98 @@
\csletcs{other#1}{up#1}%
}%
}
+\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
+\@ifpackageloaded{bm}{%
+ \PackageWarning{tudscrfonts}{%
+ Package `bm' must be loaded after `tudscrfonts'. \MessageBreak%
+ Otherwise the functionality can not be guaranteed%
+ }%
+}{%
+\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}
+\AfterClass*{beamer}{\usefonttheme[onlymath]{serif}}
\AtEndPreamble{%
\if@tud@x@mweights@enabled%
\ifundef{\bfseries@rm}{\edef\bfseries@rm{\bfdefault}}{}%
@@ -2361,41 +2482,35 @@
\ifundef{\mdseries@tt}{\edef\mdseries@tt{\mddefault}}{}%
\fi%
\tud@cdfont@check%
- \ifdef{\sectfont}{}{\let\sectfont\relax}%
\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@cdmath@init%
+ \tud@x@bm@delayed%
\tud@math@map@greeks%
\tud@math@checkslanted@greeks%
\AtBeginDocument{\tud@math@set}%
}
-%%% From File: tudscr-comp.dtx
+%%%% From File: tudscr-misc.dtx (no git version info was found)
+\tud@newif\if@tud@font@set
+\tud@newif\if@tud@math@set
+\tud@newif\if@tud@relspacing@set
+\newcommand*\tud@atdocument@process{%
+ \if@tud@font@set%
+ \tud@font@set%
+ \global\@tud@font@setfalse%
+ \global\@tud@relspacing@setfalse%
+ \fi%
+ \if@tud@relspacing@set%
+ \tud@relspacing@set%
+ \global\@tud@relspacing@setfalse%
+ \fi%
+ \if@tud@math@set%
+ \tud@math@set%
+ \global\@tud@math@setfalse%
+ \fi%
+}
+%%%% From File: tudscr-comp.dtx (no git version info was found)
\TUD@deprecated@cs{textcdfont}{textcd}%
\TUD@deprecated@cs{tudfont}{cdfont}%
\TUD@deprecated@cs{univln}{cdfontln}%
@@ -2425,48 +2540,13 @@
\fi%
}
\if@tud@cdoldfont@active
- \newcommand*\ifdin{}%
- \let\ifdin\tud@ifdin%
+ \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
-\newif\if@tud@font@set
-\newif\if@tud@math@set
-\newif\if@tud@font@skip@set
-\newcommand*\tud@atdocument@process{%
- \if@tud@font@set%
- \tud@font@set%
- \global\@tud@font@setfalse%
- \global\@tud@font@skip@setfalse%
- \fi%
- \if@tud@font@skip@set%
- \tud@font@skip@set%
- \global\@tud@font@skip@setfalse%
- \fi%
- \if@tud@math@set%
- \tud@math@set%
- \global\@tud@math@setfalse%
- \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}}%
- }%
-\fi
-\TUD@deprecated@cs{NoCaseChange}{@firstofone}
\endinput
%%
%% End of file `tudscrfonts.sty'.
diff --git a/Master/texmf-dist/tex/latex/tudscr/tudscrmanual.cls b/Master/texmf-dist/tex/latex/tudscr/tudscrmanual.cls
index 5e6a281e05e..688abca437e 100644
--- a/Master/texmf-dist/tex/latex/tudscr/tudscrmanual.cls
+++ b/Master/texmf-dist/tex/latex/tudscr/tudscrmanual.cls
@@ -4,21 +4,23 @@
%%
%% The original source files were:
%%
-%% tudscr-version.dtx (with options: `class,manual,inherit')
-%% tudscr-manual.dtx (with options: `class,manual')
+%% tudscr-version.dtx (with options: `class,manual,identify,inherit')
%% tudscr-base.dtx (with options: `class,manual,inherit,load')
+%% tudscr-misc.dtx (with options: `class,manual,option')
%% tudscr-manual.dtx (with options: `class,manual,option')
%% tudscr-misc.dtx (with options: `class,manual,inherit,execute')
+%% tudscr-misc.dtx (with options: `class,manual,body')
%% tudscr-manual.dtx (with options: `class,manual,body')
%% tudscr-fields.dtx (with options: `class,manual,body')
%% tudscr-localization.dtx (with options: `class,manual,body')
%% tudscr-texindy.dtx (with options: `class,manual')
%%
%% 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.
%% ----------------------------------------------------------------------------
@@ -34,73 +36,212 @@
%%
%% 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@ProvidesWrapperClass[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@ProvidesWrapperClass[3]
+{%
\ProvidesClass{#1}[%
- 2021/07/15 v2.06n TUD-Script
+ 2022/08/09 v2.06o TUD-Script
#3 (#2)%
]%
\newcommand*\TUD@Class@Parent{#2}%
\newcommand*\TUD@Class@Name{#1}%
+ \newcommand*\TUDScriptClassName{#1}%
+ \providecommand*\TUDClassName{\TUDScriptClassName}%
\TUD@Class@Info%
}
\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@ProvidesWrapperClass{tudscrmanual}{tudscrreprt}{manual 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-manual.dtx
-%%% 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@Parent}}
\AfterClass{\TUD@Class@Parent}{\let\TUD@KOMAoptions\KOMAoptions}
-%%% From File: tudscr-manual.dtx
+%%%% From File: tudscr-misc.dtx (no git version info was found)
+\RequirePackage{scrhack}[%
+ 2022/05/01 v3.36 KOMA-Script
+]
+\RequirePackage{xspace}
+\xspaceaddexceptions{"=}
+\PassOptionsToPackage{quiet}{marginnote}
+\RequirePackage{marginnote}
+\reversemarginpar
+\RequirePackage{shellesc}
+\RequirePackage{pdftexcmds}
+\PassOptionsToPackage{hyperindex=false}{hyperref}
+\AfterPackage*{bookmark}{\bookmarksetup{open,openlevel=1}}
+\AfterAtEndOfPackage*{hyperref}{%
+ \@ifpackageloaded{bookmark}{}{\RequirePackage{bookmark}}%
+ \hypersetup{colorlinks,linkcolor=blue}%
+}
+\newcommand*\hrfn[2]{%
+ \href{#1}{\trim@spaces{#2}}%
+ \footnote{\strut\url{#1}}%
+}
+\newrobustcmd*\mailto[1]{\mbox{\href{mailto:#1}{\nolinkurl{#1}}}}
+\TUD@UnwindPackage{hyperref}{%
+ \RequirePackage{url}
+ \providerobustcmd*\url[1]{\texttt{\detokenize{#1}}}%
+ \providerobustcmd*\nolinkurl[1]{\url{#1}}%
+ \providerobustcmd*\href[3][]{#3}%
+ \providecommand*\hypersetup[1]{}%
+ \providecommand*\phantomsection{}%
+ \providecommand*\pdfbookmark[3][]{}%
+ \providecommand*\currentpdfbookmark[2]{}%
+ \providecommand*\subpdfbookmark[2]{}%
+ \providecommand*\belowpdfbookmark[2]{}%
+}
+\AfterPackage*{babel}{\RequirePackage{csquotes}}
+\TUD@UnwindPackage{babel}{%
+ \ClassWarningNoLine{\TUD@Class@Name}{Package `babel' not loaded}%
+ \providecommand*\selectlanguage[1]{}%
+ \providecommand*\glqq{\quotedblbase}%
+ \providecommand*\grqq{\textquotedblleft}%
+ \providecommand*\seename{see}%
+ \providecommand*\alsoname{see\nobreakspace also}%
+}
+\TUD@UnwindPackage{csquotes}{%
+ \ClassWarningNoLine{\TUD@Class@Name}{Package `csquotes' not loaded}%
+ \providecommand\enquote[1]{\emph{#1}}%
+}
+\newcommand*\tud@templist{}
+\let\tud@templist\relax
+\newcommand*\tud@list@sort[1]{%
+ \ifdefvoid{#1}{%
+ \ClassWarning{tudscrmanual}{%
+ The given list \string#1\space\MessageBreak%
+ is empty, nothing to sort here%
+ }%
+ }{%
+ \let\tud@reserved#1%
+ \let\tud@templist\relax%
+ \forlistloop\tud@list@@sort{\tud@reserved}%
+ \let\tud@reserved\relax%
+ \@for\@tempa:=\tud@templist\do{\listeadd\tud@reserved{\@tempa}}%
+ \let#1\tud@reserved%
+ }%
+}
+\tud@newif\if@tud@list@sorted
+\newcommand*\tud@list@@sort[1]{%
+ \ifx\tud@templist\relax%
+ \def\tud@templist{#1}%
+ \else%
+ \@tud@list@sortedfalse%
+ \let\@tempb\@empty%
+ \@for\@tempa:=\tud@templist\do{%
+ \if@tud@list@sorted%
+ \expandafter\edef\expandafter\@tempb\expandafter{\@tempb,\@tempa}%
+ \else%
+ \expandafter\ifnum\pdf@strcmp{#1}{\@tempa}<\z@\relax%
+ \ifx\@tempb\@empty%
+ \expandafter\edef\expandafter\@tempb\expandafter{%
+ #1,\@tempa%
+ }%
+ \else%
+ \expandafter\edef\expandafter\@tempb\expandafter{%
+ \@tempb,#1,\@tempa%
+ }%
+ \fi%
+ \@tud@list@sortedtrue%
+ \else%
+ \ifx\@tempb\@empty%
+ \expandafter\edef\expandafter\@tempb\expandafter{\@tempa}%
+ \else%
+ \expandafter\edef\expandafter\@tempb\expandafter{\@tempb,\@tempa}%
+ \fi%
+ \fi%
+ \fi%
+ }%
+ \if@tud@list@sorted\else%
+ \expandafter\edef\expandafter\@tempb\expandafter{\@tempb,#1}%
+ \fi%
+ \let\tud@templist\@tempb%
+ \fi%
+}
+\newcommand*\tud@replace@in[3]{%
+ \begingroup%
+ \edef\tud@res@a{\expandonce{#1}}%
+ \let\tud@res@c\@empty%
+ \def\tud@res@b##1#2##2\@nil{%
+ \IfArgIsEmpty{##2}{%
+ \appto\tud@res@c{##1}%
+ }{%
+ \appto\tud@res@c{##1#3}%
+ \tud@res@b##2\@nil%
+ }%
+ }%
+ \expandafter\tud@res@b\tud@res@a#2\@nil%
+ \edef\tud@res@a{%
+ \endgroup%
+ \unexpanded{\def#1}{\expandonce\tud@res@c}%
+ }%
+ \tud@res@a%
+}
+\newcommand*\tud@replace@@in[3]{%
+ \begingroup%
+ \protected@edef\tud@res@a{#1}%
+ \edef\tud@res@a{\detokenize\expandafter{\tud@res@a}}%
+ \edef\tud@res@b{%
+ \unexpanded{\tud@replace@in\tud@res@a}{\detokenize{#2}}{\detokenize{#3}}%
+ }%
+ \tud@res@b%
+ \edef\tud@res@a{%
+ \endgroup%
+ \unexpanded{\def#1}{\tud@res@a}%
+ }%
+ \tud@res@a%
+}
+%%%% From File: tudscr-manual.dtx (no git version info was found)
\TUD@key{final}[true]{%
\TUD@set@ifkey{final}{@tempswa}{#1}%
\ifx\FamilyKeyState\FamilyKeyStateProcessed%
@@ -142,7 +283,7 @@
cd=color,%
}{\TUD@Class@Parent}
\PassOptionsToPackage{automark}{scrlayer-scrpage}
-\newif\if@tud@todo
+\tud@newif\if@tud@todo
\newcommand*\tud@todo@type@pos{}
\let\tud@todo@type@pos\relax
\newcommand*\tud@todo@type@neg{}
@@ -154,7 +295,7 @@
\let\tud@todo@type@neg\relax%
\else%
\def\@tempa not##1##2##3##4\@nil{%
- \ifstr{##1##2##3}{not}{%
+ \tud@if@strequal{##1##2##3}{not}{%
\IfArgIsEmpty{##4}{}{%
\listeadd\tud@todo@type@neg{##4}%
\@tud@todotrue%
@@ -172,104 +313,136 @@
\expandafter\@tempa\@tempb\@empty\@empty\@empty\@nil%
\fi%
}
-%%% From File: tudscr-misc.dtx
+%%%% From File: tudscr-misc.dtx (no git version info was found)
\DeclareOption*{%
\expandafter\PassOptionsToClass\expandafter{\CurrentOption}%
{\TUD@Class@Parent}%
}
-\TUDExecuteOptions{%
-}
\TUDProcessOptions\relax
-\PassOptionsToClass{ttfont=roboto}{\TUD@Class@Parent}
-\LoadClass{\TUD@Class@Parent}
-%%% From File: tudscr-manual.dtx
-\PassOptionsToPackage{log-declarations=false}{xparse}
-\RequirePackage{xparse}[2013/12/31]
-\RequirePackage{scrhack}[2014/02/27]
-\RequirePackage{babel}[2014/03/24]
-\PassOptionsToPackage{quiet}{marginnote}
-\RequirePackage{marginnote}[2012/03/29]
-\reversemarginpar
-\RequirePackage{xspace}[2009/10/20]
-\xspaceaddexceptions{"=}
-\@ifpackagelater{geometry}{2018/04/17}{%
- \ClassWarning{\TUD@Class@Name}{%
- Package `geometry' was updated so some patches\MessageBreak%
- are maybe outdated%
+\LoadClass{\TUD@Class@Parent}[%
+ 2022/08/09 v2.06o TUD-Script
+]
+%%%% From File: tudscr-misc.dtx (no git version info was found)
+\renewcommand*\@pnumwidth{2.1em}
+\renewcommand*\@tocrmarg{3.1em}
+\newcommand*\textsbn{}
+\newrobustcmd*\sbnfont{\sffamily\bfseries\upshape}
+\DeclareTextFontCommand\textsbn{\sbnfont}
+\newcommand*\textsbi{}
+\newrobustcmd*\sbifont{\sffamily\bfseries\itshape}
+\DeclareTextFontCommand\textsbi{\sbifont}
+\newcommand*\textttit{}
+\newrobustcmd*\ttitfont{\ttfamily\itshape}
+\DeclareTextFontCommand\textttit{\ttitfont}
+\newcommand*\tud@english[1]{%
+ \iflanguageloaded{english}{\foreignlanguage{english}{#1}}{#1}%
+}
+\AfterPackage*{babel}{%
+ \renewcommand*\tud@english[1]{\foreignlanguage{english}{#1}}%
+}
+\kernel@make@fragile\KOMAScript
+\edef\KOMAScript{\noexpand\mbox{\expandonce\KOMAScript}\noexpand\xspace}
+\robustify\KOMAScript
+\robustify\TUDScript
+\AfterPackage*{hyperref}{%
+ \pdfstringdefDisableCommands{%
+ \def\KOMAScript{KOMA-Script{}}%
+ \def\TUDScript{TUD-Script{}}%
}%
-}{}%
+}
\newcommand*\vTUDScript{v\TUDScriptVersionNumber}
-\newcommand*\vKOMAScript{v\TUD@Version@KOMA}
-\newcommand*\tud@english[1]{#1}
-\AtBeginDocument{%
- \iflanguageloaded{english}{%
- \renewcommand*\tud@english[1]{\foreignlanguage{english}{#1}}%
- }{}%
+\newcommand*\vKOMAScript{v\TUD@KOMAVersionNumber}
+\newrobustcmd*\CD{\tud@english{Corporate Design}\xspace}
+\newrobustcmd*\CDs{\tud@english{Corporate Designs}\xspace}
+\newrobustcmd*\TUD{Technische Universit\"at Dresden\xspace}
+\newrobustcmd*\TnUD{Technischen Universit\"at Dresden\xspace}
+\newcommand*\TUDCD{\CD der \TnUD}
+\newcommand*\TUDCDs{\CDs der \TnUD}
+\newrobustcmd*\TUDForum{\mbox{T\kern.05em U\kern.05em D-\LaTeX-Forum}\xspace}
+\newrobustcmd*\DDC{%
+ \mbox{%
+ D\kern.05em R\kern.05em E\kern.05em S\kern.05em %
+ D\kern.05em E\kern.05em N\kern.1em-\kern.1em concept%
+ }\xspace%
}
-\RequirePackage{shellesc}[2016/06/07]
-\RequirePackage{pdftexcmds}[2016/05/21]
-\newcommand*\tud@templist{}
-\let\tud@templist\relax
-\newcommand*\tud@list@sort[1]{%
- \ifdefvoid{#1}{%
- \ClassWarning{tudscrmanual}{%
- The given list \string#1\space\MessageBreak%
- is empty, nothing to sort here%
- }%
+\AfterPackage*{hyperref}{%
+ \pdfstringdefDisableCommands{%
+ \def\CD{Corporate Design{}}%
+ \def\CDs{Corporate Designs{}}%
+ \def\TUD{Technische Universit\"at Dresden{}}%
+ \def\TnUD{Technischen Universit\"at Dresden{}}%
+ \def\TUDForum{TUD-LaTeX-Forum{}}%
+ \def\DDC{DRESDEN-concept{}}%
+ }%
+}
+\newrobustcmd*\OpenSans{\textcdbn{Open\nobreakspace Sans}\xspace}
+\newrobustcmd*\Univers{\textcdbi{Univers}\xspace}
+\newrobustcmd*\DIN{\textcdbi{DIN\nobreakspace Bold}\xspace}
+\AfterPackage*{hyperref}{%
+ \pdfstringdefDisableCommands{%
+ \def\OpenSans{Open Sans{}}%
+ \def\Univers{Univers{}}%
+ \def\DIN{DIN Bold{}}%
+ }%
+}
+\newcommand*\GitHubBase[1]{}
+\NewDocumentCommand\GitHubRepo{!s !t' !O{releases} !D(){tud-cd/tudscr} !d<>}{%
+ \IfBooleanTF{#1}{\toks@{\href}}{\toks@{\hrfn}}%
+ \IfBooleanT{#2}{\toks@{\url}}%
+ \def\@tempa{https://github.com/#4/}%
+ \edef\@tempa{{\@tempa\IfValueTF{#5}{issues/#5}{#3}}}%
+ \addto@hook@expandafter\toks@{\@tempa}%
+ \IfBooleanF{#2}{%
+ \addto@hook\toks@{{\tud@english{GitHub-Repository~\textsbn{#4}}}}%
+ }%
+ \the\toks@\xspace%
+}
+\newcommand*\Download[1]{%
+ https://github.com/tud-cd/tudscr/releases/download/#1%
+}
+\NewDocumentCommand\CTAN{!s !o !g}{%
+ \IfBooleanTF{#1}{\toks@{\href}}{\toks@{\hrfn}}%
+ \addto@hook\toks@{{http://www.ctan.org/\IfValueT{#2}{#2}}}%
+ \addto@hook\toks@{%
+ {\tud@english{Comprehensive TeX Archive Network (CTAN\IfValueT{#3}{~#3})}}%
+ }%
+ \the\toks@\xspace%
+}
+\NewDocumentCommand\Forum{!s !t' !O{\TUDForum} !d<>}{%
+ \IfBooleanTF{#1}{\toks@{\href}}{\toks@{\hrfn}}%
+ \IfBooleanT{#2}{\toks@{\url}}%
+ \def\@tempa{http://latex.wcms-file3.tu-dresden.de/phpBB3/}%
+ \edef\@tempa{{\@tempa\IfValueT{#4}{viewtopic.php?t=#4}}}%
+ \addto@hook@expandafter\toks@{\@tempa}%
+ \IfBooleanF{#2}{\addto@hook\toks@{{#3}}}%
+ \the\toks@\xspace%
+}
+\newcommand*\Attention[2][\z@]{%
+ \marginnote{%
+ \tud@setdim\fboxsep{0.25em}%
+ \fbox{Achtung!}%
+ }[{#1}]%
+ \emph{\trim@spaces{#2}}%
+}
+\newrobustcmd*\TUDScriptContactTitle{%
+ \ifundef{\emailaddress}{%
+ \qquad\expandafter\mailto\expandafter{\TUDScriptContact}%
}{%
- \let\tud@reserved#1%
- \let\tud@templist\relax%
- \forlistloop\tud@list@@sort{\tud@reserved}%
- \let\tud@reserved\relax%
- \@for\@tempa:=\tud@templist\do{\listeadd\tud@reserved{\@tempa}}%
- \let#1\tud@reserved%
+ \expandafter\emailaddress\expandafter{\TUDScriptContact}%
}%
}
-\newif\if@tud@list@sorted
-\newcommand*\tud@list@@sort[1]{%
- \ifx\tud@templist\relax%
- \def\tud@templist{#1}%
- \else%
- \@tud@list@sortedfalse%
- \let\@tempb\@empty%
- \@for\@tempa:=\tud@templist\do{%
- \if@tud@list@sorted%
- \expandafter\edef\expandafter\@tempb\expandafter{\@tempb,\@tempa}%
- \else%
- \expandafter\ifnum\pdf@strcmp{#1}{\@tempa}<\z@\relax%
- \ifx\@tempb\@empty%
- \expandafter\edef\expandafter\@tempb\expandafter{%
- #1,\@tempa%
- }%
- \else%
- \expandafter\edef\expandafter\@tempb\expandafter{%
- \@tempb,#1,\@tempa%
- }%
- \fi%
- \@tud@list@sortedtrue%
- \else%
- \ifx\@tempb\@empty%
- \expandafter\edef\expandafter\@tempb\expandafter{\@tempa}%
- \else%
- \expandafter\edef\expandafter\@tempb\expandafter{\@tempb,\@tempa}%
- \fi%
- \fi%
- \fi%
- }%
- \if@tud@list@sorted\else%
- \expandafter\edef\expandafter\@tempb\expandafter{\@tempb,#1}%
- \fi%
- \let\tud@templist\@tempb%
- \fi%
+\AfterPackage*{hyperref}{%
+ \pdfstringdefDisableCommands{\let\TUDScriptContactTitle\relax}%
}
+%%%% From File: tudscr-manual.dtx (no git version info was found)
\newcommand*\tud@trace@lbl@created@add[1]{}
\newcommand*\tud@trace@lbl@missing@add[1]{}
\NewDocumentCommand\tracinglabels{!s !O{missing}}{%
\newcommand*\tud@trace@lbl@created@list{}%
\newcommand*\tud@trace@lbl@missing@list{}%
\@tempswafalse%
- \ifstr{#2}{created}{\@tempswatrue}{}%
- \ifstr{#2}{all}{\@tempswatrue}{}%
+ \tud@if@strequal{#2}{created}{\@tempswatrue}{}%
+ \tud@if@strequal{#2}{all}{\@tempswatrue}{}%
\if@tempswa%
\renewcommand*\tud@trace@lbl@created@add[1]{%
\typeout{%
@@ -288,8 +461,8 @@
}%
\fi%
\@tempswafalse%
- \ifstr{#2}{missing}{\@tempswatrue}{}%
- \ifstr{#2}{all}{\@tempswatrue}{}%
+ \tud@if@strequal{#2}{missing}{\@tempswatrue}{}%
+ \tud@if@strequal{#2}{all}{\@tempswatrue}{}%
\if@tempswa%
\renewcommand*\tud@trace@lbl@missing@add[1]{%
\typeout{%
@@ -334,8 +507,6 @@
}%
}
\@onlypreamble\tracingbundle
-\PassOptionsToPackage{hyperindex=false,colorlinks,linkcolor=blue}{hyperref}
-\PassOptionsToPackage{open,openlevel=0}{bookmark}
\AfterPackage*{hyperref}{%
\renewcaptionname{ngerman}{\sectionautorefname}{Unterkapitel}%
\renewcaptionname{ngerman}{\subsectionautorefname}{Abschnitt}%
@@ -343,11 +514,11 @@
\newcommand*\tud@manualname{tudscr}%
\NewDocumentCommand\tudhyperdef{s t' m}{%
\@tempswafalse%
- \IfBooleanT{#1}{\@tempswatrue\setlength\@tempdima{3\baselineskip}}%
- \IfBooleanT{#2}{\@tempswatrue\setlength\@tempdima{15\baselineskip}}%
+ \IfBooleanT{#1}{\@tempswatrue\tud@setdim\@tempdima{3\baselineskip}}%
+ \IfBooleanT{#2}{\@tempswatrue\tud@setdim\@tempdima{15\baselineskip}}%
\if@tempswa%
\raisebox{\@tempdima}[0pt][0pt]{\hyperdef{\tud@manualname}{#3}{}}%
- \par\nobreak\vskip\dimexpr-\parskip-\baselineskip\relax%
+ \par\nobreak\vskip-\parskip\vskip-\baselineskip%
\@afterindentfalse\@afterheading%
\else%
\Hy@raisedlink{\hyperdef{\tud@manualname}{#3}{}}\ignorespaces%
@@ -357,7 +528,7 @@
}%
\newcommand*\tudhyperref[2]{\hyperref{}{\tud@manualname}{#1}{#2}}%
\newcommand*\autorefname[1][current]{%
- \ifstr{#1}{current}{%
+ \tud@if@strequal{#1}{current}{%
\expandafter\HyPsd@@autorefname\@currentHref\@nil%
}{%
\auto@refname\HyPsd@@autorefname{#1}%
@@ -382,12 +553,6 @@
Nevertheless, essential commands are rudimentarily\MessageBreak%
defined. At least the package `url' is loaded%
}%
- \providecommand*\hypersetup[1]{}%
- \providecommand*\href[3][]{#3}%
- \providecommand*\phantomsection{}%
- \providecommand*\texorpdfstring[2]{#1}%
- \RequirePackage{url}[2013/09/16]%
- \providecommand*\nolinkurl[1]{\url{#1}}%
\providecommand*\hyperpage[1]{#1}%
\providecommand*\autoref{??\xspace\kernel@ifstar{\ref}{\ref}}%
\providecommand*\hyperdef[3]{\label{#1.#2}#3}%
@@ -410,28 +575,10 @@
\providecommand*\tudhyperref[2]{#2}%
\providecommand*\autorefname[1][]{??\xspace}%
}
-\newcommand*\hrfn[2]{%
- \href{#1}{\trim@spaces{#2}}%
- \footnote{%
- \begingroup%
- \def\_{_}%
- \edef\@tempa{#1}%
- \strut\expandafter\url\expandafter{\@tempa}%
- \endgroup%
- }%
-}
-\newrobustcmd*\mailto[1]{\mbox{\href{mailto:#1}{\nolinkurl{#1}}}}%
-\AfterPackage*{hyperref}{%
- \patchcmd{\pdfstringdef}{\csname HyPsd@babel@}{%
- \let\bbl@info\@gobble\csname HyPsd@babel@%
- }{}{\tud@patch@wrn{pdfstringdef}}%
-}
-\RequirePackage{varioref}[2011/10/02]
-\renewcommand*\fullref[1]{\hyperref[#1]{\autoref*{#1} \vpageref{#1}}}
-\AfterPackage*{hyperref}{\RequirePackage[babel]{microtype}[2013/05/23]}
-\TUD@UnwindPackage{hyperref}{\RequirePackage[babel]{microtype}[2013/05/23]}
-\newif\if@tud@declare
-\newif\if@openindex
+\RequirePackage{varioref}
+\renewcommand*\fullref[1]{\hyperref[{#1}]{\autoref*{#1} \vpageref{#1}}}
+\tud@newif\if@tud@declare
+\tud@newif\if@openindex
\newcommand*\tud@declare@num{0}
\newcommand*\tud@declaration@list{}
\let\tud@declaration@list\relax
@@ -441,10 +588,10 @@
}{%
\tud@declare@end{#2}{\printdeclarationlist}%
}
-\newif\if@tud@obsolete
+\tud@newif\if@tud@obsolete
\NewDocumentEnvironment{Obsolete}{momoog}{%
\@tud@obsoletetrue%
- \ifxblank{#1}{%
+ \tud@if@strblank{#1}{%
\listadd\tud@declaration@list{%
\def\tud@declare@num{1}%
#3%
@@ -472,7 +619,7 @@
}%
\@tempb#1\@nil%
\fi%
- \eaddto@hook\toks@{\expandafter{\@tempa}}%
+ \addto@hook@expandafter\toks@{\expandafter{\@tempa}}%
\the\toks@%
}%
}%
@@ -484,10 +631,10 @@
}
\newcommand*\tud@preset@list{}
\let\tud@preset@list\relax
-\newif\if@tud@preset@list
+\tud@newif\if@tud@preset@list
\newcommand*\tud@additional@list{}
\let\tud@additional@list\relax
-\newif\if@tud@additional@list
+\tud@newif\if@tud@additional@list
\NewDocumentCommand\tud@declare@start{omr[]r[]m}{%
\Changed@At@CreateList[#2]{#1}%
\IfValueTF{#3}{%
@@ -554,15 +701,19 @@
\fi%
\@tud@declaretrue\@openindexfalse#1\@tud@declarefalse%
}
-\newskip\tud@lastskip
-\pretocmd{\index}{\tud@lastskip=\lastskip}{}{\tud@patch@wrn{index}}
-\pretocmd{\label}{\tud@lastskip=\lastskip}{}{\tud@patch@wrn{label}}
+\tud@newglue\tud@lastskip
+\pretocmd\index{%
+ \tud@lastskip=\lastskip%
+}{}{\tud@patch@wrn{index}}
+\pretocmd\label{%
+ \tud@lastskip=\lastskip%
+}{}{\tud@patch@wrn{label}}
\NewDocumentCommand\printdeclarationlist{!s !d()}{%
\ifx\tud@declaration@list\relax\else%
\ifhmode%
\vskip\medskipamount%
\else%
- \@tempskipa=\glueexpr\medskipamount-\tud@lastskip\relax%
+ \tud@setglue\@tempskipa{\medskipamount-\tud@lastskip}%
\ifdim\@tempskipa>\z@\relax%
\addpenalty{\@beginparpenalty}%
\addvspace{\@tempskipa}%
@@ -619,6 +770,7 @@
\print@changedatlist{#1}{#2}%
}
\newrobustcmd*\bsc{\@backslashchar}
+\newrobustcmd*\txb{{\raise.05em\hbox{\kern.05em\textbar\kern.05em}}}
\newrobustcmd*\suffix[1]{\begingroup~\scriptsize(#1)\endgroup}
\providecommand*\NewExpandableDocumentCommand[3]{%
\NewDocumentCommand#1{#2}{}%
@@ -662,10 +814,12 @@
\newcommand*\tud@bdl@curr{}
\newcommand*\tud@bdl@dflt{tudscr}
\let\tud@bdl@curr\tud@bdl@dflt
-\newcommand*\tud@if@bdl[2]{\ifstr{\tud@bdl@curr}{\tud@bdl@dflt}{#2}{#1}}
+\newcommand*\tud@if@bdl[2]{%
+ \tud@if@strequal{\tud@bdl@curr}{\tud@bdl@dflt}{#2}{#1}%
+}
\NewExpandableDocumentCommand\@Application{sm}{#2}
\NewDocumentCommand\Application{s m !d() !d<> !d||}{%
- \Markup@SetFormat{\sbsfont}%
+ \Markup@SetFormat{\sbifont}%
\IfValueTF{#4}{%
\Process@Markup{\Application{#2}}(#3)<#4>%
}{%
@@ -901,7 +1055,7 @@
\let\textOR\relax%
\let\emph\@firstofone%
#1%
- \ifxblank{#2}{%
+ \tud@if@strblank{#2}{%
\let\tud@reserved\endgroup%
}{%
\protected@edef\tud@reserved{\noexpand\endgroup#3}%
@@ -987,18 +1141,17 @@
\tud@lbl@get@@dflt{#1}#2=#3=%
}
\NewDocumentCommand\tud@lbl@get@@dflt{mmmmr==}{%
- \edef\tud@reserved{\expandafter\detokenize\expandafter{\tud@bdl@dflt}}%
- \ifstr{\tud@reserved}{#2}{}{%
+ \tud@if@strequal{#2}{\tud@bdl@dflt}{}{%
\tud@lbl@get@curr#1{\tud@bdl@dflt:#3:#4}=#5=%
}%
}
\NewDocumentCommand\tud@if@lbl@exists{%
>{\tud@lbl@create}>{\SplitArgument{2}{:}}m%
}{%
- \ifcsdef{r@#1}{%
- \expandafter\@firstoftwo%
- }{%
+ \ifcsundef{r@#1}{%
\expandafter\@secondoftwo%
+ }{%
+ \expandafter\@firstoftwo%
}%
}
\NewDocumentCommand\tud@lbl@create{m}{\tud@lbl@@create#1}
@@ -1012,7 +1165,7 @@
\IfValueTF{#2}{%
\tud@attr@get\@tempb{#2}%
\IfValueTF{#1}{%
- \ifxblank{#1}{%
+ \tud@if@strblank{#1}{%
\edef\@tempa{\tud@bdl@dflt:\@tempb:#2}%
}{%
\edef\@tempa{#1:\@tempb:#2}%
@@ -1032,7 +1185,7 @@
}%
\@tempc%
}
-\newif\if@tud@disposition
+\tud@newif\if@tud@disposition
\newcommand*\ifdisposition{%
\if@tud@disposition%
\expandafter\@firstoftwo%
@@ -1040,7 +1193,7 @@
\expandafter\@secondoftwo%
\fi%
}
-\pretocmd{\tud@sec@format}{%
+\pretocmd\tud@sec@format{%
\@tud@dispositiontrue%
}{}{\tud@patch@wrn{tud@sec@format}}
\newcommand*\Markup@Suppress{\let\Process@Markup\Markup@@Suppress}
@@ -1057,7 +1210,7 @@
\tud@toks@{\Process@@MarkupInline}%
\tud@lbl@get@curr\tud@lbl@tmp{#4:#1}=#2=%
\fi%
- \eaddto@hook\tud@toks@{\expandafter{\tud@lbl@tmp}}%
+ \addto@hook@expandafter\tud@toks@{\expandafter{\tud@lbl@tmp}}%
\begingroup%
\Markup@Gobble*%
\protected@edef\tud@reserved{%
@@ -1065,7 +1218,7 @@
\def\noexpand\tud@reserved{#1}%
}%
\tud@reserved%
- \eaddto@hook\tud@toks@{\expandafter{\tud@reserved}}%
+ \addto@hook@expandafter\tud@toks@{\expandafter{\tud@reserved}}%
\IfValueT{#2}{\addto@hook\tud@toks@{=#2=}}%
\IfValueT{#3}{\addto@hook\tud@toks@{[#3]}}%
\if@tud@declare%
@@ -1084,7 +1237,9 @@
\else%
\if@tud@index\else%
\IfValueT{#5}{%
- \ifxblank{#5}{}{\addto@hook\tud@toks@{<http://www.ctan.org/pkg/#5>}}%
+ \tud@if@strblank{#5}%
+ {}%
+ {\addto@hook\tud@toks@{<http://www.ctan.org/pkg/#5>}}%
}%
\IfValueT{#6}{\addto@hook\tud@toks@{'#6'}}%
\fi%
@@ -1092,9 +1247,9 @@
\fi%
\if@tud@index\else%
\IfValueT{#4}{%
- \ifxblank{#4}{}{%
+ \tud@if@strblank{#4}{}{%
\tud@trace@bdl@add{#4}%
- \ifstr{#6}{none}{}{%
+ \tud@if@strequal{#6}{none}{}{%
\tud@if@lbl@exists{\tud@lbl@tmp}{}{%
\ClassWarning{tudscrmanual}{%
No existing label \tud@lbl@tmp\space for #4%
@@ -1131,20 +1286,21 @@
\let\@tempb\relax%
\IfValueT{#6}{%
\def\@tempb{%
- \ClassWarning{tudscrmanual}%
- {%
+ \ClassWarning{tudscrmanual}{%
You've used the unknown cross-reference\MessageBreak%
shorthand '#6'. Only 'auto', 'page' and 'full'\MessageBreak%
as well as 'none' \IfValueT{#5}{or 'url' }are valid%
}%
}%
- \ifstr{#6}{auto}{\def\@tempb{ in \autoref{#1}}}{%
- \ifstr{#6}{page}{\def\@tempb{ \vpageref{#1}}}{%
- \ifstr{#6}{ppage}{\def\@tempb{ \reftextfaraway{#1}}}{%
- \ifstr{#6}{full}{\def\@tempb{ in \fullref{#1}}}{%
- \ifstr{#6}{none}{\let\@tempa\@tempc\let\@tempb\relax}{}}}}}%
+ \tud@if@strequal{#6}{auto} {\def\@tempb{ in \autoref{#1}}}{%
+ \tud@if@strequal{#6}{page} {\def\@tempb{ \vpageref{#1}}}{%
+ \tud@if@strequal{#6}{ppage}{\def\@tempb{ \reftextfaraway{#1}}}{%
+ \tud@if@strequal{#6}{full} {\def\@tempb{ in \fullref{#1}}}{%
+ \tud@if@strequal{#6}{none} {\let\@tempa\@tempc\let\@tempb\relax}{}}}}}%
\IfValueT{#5}{%
- \ifstr{#6}{url}{\def\@tempa{\href{#5}{\@tempc}}\let\@tempb\relax}{}%
+ \tud@if@strequal{#6}{url}%
+ {\def\@tempa{\href{#5}{\@tempc}}\let\@tempb\relax}%
+ {}%
}%
}%
}{%
@@ -1152,7 +1308,7 @@
\IfValueT{#5}{\def\@tempa{\href{#5}{\@tempc}}}%
\let\@tempb\relax%
\IfValueT{#6}{%
- \ifstr{#6}{none}{\let\@tempa\@tempc}{%
+ \tud@if@strequal{#6}{none}{\let\@tempa\@tempc}{%
\def\@tempb{%
\ClassWarning{tudscrmanual}%
{%
@@ -1184,7 +1340,7 @@
}%
\IfValueT{#3}{\appto\@tempa{=#3}}%
\IfValueT{#4}{\appto\@tempa{#4}}%
- \eaddto@hook\tud@toks@{\expandafter{\@tempa}}%
+ \addto@hook@expandafter\tud@toks@{\expandafter{\@tempa}}%
\the\tud@toks@%
}
\newcommand*\Markup@Inline[1]{\mbox{\Markup@Format{#1}}}
@@ -1194,11 +1350,7 @@
\undef\Markup@Format
\newcommand*\Markup@Suffix{}
\NewDocumentCommand\Markup@SetFormat{omod()}{%
- \def\Markup@Format##1{%
- \def\tud@res@a{#2}%
- \tud@ifdin{\let\tud@res@a\tud@sec@format}{}%
- \begingroup\tud@res@a{\IfValueT{#1}{#1}##1}\endgroup%
- }%
+ \def\Markup@Format##1{\begingroup#2{\IfValueT{#1}{#1}##1}\endgroup}%
\IfValueT{#3}{\def\Markup@Suffix{\suffix{#3}}}%
\IfValueT{#4}{\renewcommand*\Markup@Declare[1]{#4\Markup@Suffix}}%
}
@@ -1215,37 +1367,8 @@
{It seems you have forgotten to use \string\Markup@SetFormat.}%
}{}%
}
-\ifundef{\tud@x@textcase@uclcnotmath}{}{%
- \NewDocumentCommand\tud@nonchangecase{m}{%
- \DeclareExpandableDocumentCommand#1{sm}{%
- \IfBooleanT{##1}{\noexpand\@tud@indextrue}%
- \NoCaseChange{#1{##2}}%
- }%
- }
- \apptocmd{\tud@x@textcase@uclcnotmath}{%
- \tud@nonchangecase\Application%
- \tud@nonchangecase\Distribution%
- \tud@nonchangecase\Engine%
- \tud@nonchangecase\File%
- \tud@nonchangecase\Class%
- \tud@nonchangecase\Package%
- \tud@nonchangecase\Option%
- \tud@nonchangecase\Environment%
- \tud@nonchangecase\Macro%
- \tud@nonchangecase\Length%
- \tud@nonchangecase\Counter%
- \DeclareExpandableDocumentCommand\Key{smm}{%
- \IfBooleanT{##1}{\noexpand\@tud@indextrue}%
- \NoCaseChange{#1{##2}{##3}}%
- }%
- \tud@nonchangecase\Term%
- \tud@nonchangecase\PageStyle%
- \tud@nonchangecase\Font%
- \tud@nonchangecase\Color%
- }{}{\tud@patch@wrn{tud@x@textcase@uclcnotmath}}
-}
\PassOptionsToPackage{xindy,splitindex}{imakeidx}
-\RequirePackage{imakeidx}[2013/07/11]
+\RequirePackage{imakeidx}
\indexsetup{%
level=\addsec,%
noclearpage,firstpagestyle=headings,headers={\indexname}{\indexname},%
@@ -1274,12 +1397,12 @@
\let\item\@idxitem
\imki@othercode%
}%
- \patchcmd{\theindex}{%
+ \patchcmd\theindex{%
\imki@indexlevel{\indexname}\imki@indexheaders%
}{%
\imki@indexheaders%
}{}{\tud@patch@wrn{theindex}}%
- \patchcmd{\theindex}{%
+ \patchcmd\theindex{%
\ifnum\imki@columns>\@ne
\columnsep \imki@columnsep
\ifx\imki@idxprologue\relax
@@ -1306,25 +1429,30 @@
\fi%
}{}{\tud@patch@wrn{theindex}}%
\fi%
+\newcommand*\tud@xdy@settings{}
+\edef\tud@xdy@settings{-M \@currname-ind.xdy -L german-din}
\NewDocumentCommand\makexdyindex{s o m !o}{%
\let\@tempb\@empty%
\IfBooleanT{#1}{%
\def\@tempc{\jobname-#4-declare.idx}%
- \makeindex[name={#4-declare}]%
+ \makeindex[name=#4-declare]%
\IfFileExists{\@tempc}{%
\edef\@tempb{-o \jobname-#4.ind \@tempc}%
}{%
\ClassWarning{tudscrmanual}{File \@tempc\space not found}%
}%
}%
+ \ifundef{\inputencodingname}{}{%
+ \eappto\tud@xdy@settings{\space-C\space\inputencodingname}%
+ }%
\protected@edef\@tempa{%
title={#3},%
columnsep=\noexpand\f@size\noexpand\p@,%
\IfValueTF{#4}{%
name={#4},%
- options={-M \@currname-ind.xdy -L german-din -t \jobname-#4.xlg \@tempb},%
+ options={\tud@xdy@settings\space-t \jobname-#4.xlg \@tempb},%
}{%
- options={-M \@currname-ind.xdy -L german-din -t \jobname.xlg},%
+ options={\tud@xdy@settings\space-t \jobname.xlg},%
}%
\IfValueT{#2}{#2}%
}%
@@ -1339,7 +1467,7 @@
\makexdyindex*{Klassen, Pakete und Dateien}[files]
\makexdyindex[columns=1]{\"Anderungsliste}[changelog]
\undef\makexdyindex
-\newif\if@tud@index
+\tud@newif\if@tud@index
\addtoeachtocfile{\protect\@tud@indextrue}
\newcommand*\tud@idx@key{}
\newcommand*\tud@idx@fmt{}
@@ -1370,8 +1498,8 @@
}%
\tud@reserved%
\def#3{#5}%
- \tud@replace#2{@}{"@}%
- \tud@replace#3{@}{"@}%
+ \tud@replace@@in#2{@}{"@}%
+ \tud@replace@@in#3{@}{"@}%
\let\tud@idx@bdl\tud@bdl@dflt%
\IfValueTF{#8}{%
\def\tud@idx@bdl{#8}%
@@ -1414,8 +1542,10 @@
\fi%
\@tempswafalse%
\IfBooleanT{#1}{\@tempswatrue}%
- \IfValueT{#9}{\ifstr{#9}{declare}{\@tempswatrue}{}}%
- \IfValueT{#9}{\ifstr{#9}{default}{\@tempswatrue}{}}%
+ \IfValueT{#9}{%
+ \tud@if@strequal{#9}{declare}{\@tempswatrue}{}%
+ \tud@if@strequal{#9}{default}{\@tempswatrue}{}%
+ }%
\if@tempswa%
\protected@eappto#2{\expandonce\@tempa}%
\tud@doifPValue{#6}{\noexpand\appto\noexpand#2{=#6}}%
@@ -1451,20 +1581,38 @@
\tud@cleversee{\alsoname}%
}
\newcommand*\tud@cleversee{}
-\def\tud@cleversee#1#2#3\relax{%
- \IfArgIsEmpty{#3}{%
- \emph{#1}\space#2%
- }{%
- \begingroup%
- \def\@tempa, ##1\@nil{##1,\space\emph{\alsoname}\space#2}%
- \@tempa#3\@nil%
- \endgroup%
- }%
+\def\tud@cleversee#1#2\relax{%
+ \begingroup%
+ \let\cleversee\@empty%
+ \let\cleverseealso\@empty%
+ \let\tud@res@a\@empty%
+ \def\tud@res@b{#2}%
+ \def\tud@res@c##1\\##2\@nil{%
+ \appto\tud@res@a{##1}%
+ \def\tud@res@b{##2}%
+ \trim@spaces@in\tud@res@b%
+ \in@{\\}{##2}%
+ }%
+ \in@true%
+ \@whilesw\ifin@\fi{%
+ \expandafter\tud@res@c\tud@res@b\@nil%
+ }%
+ \ifx\tud@res@b\@empty%
+ \mbox{\emph{#1}}%
+ \else%
+ \def\tud@res@c##1 ##2\@nil{%
+ ##2##1\space\mbox{\emph{\alsoname}}%
+ }%
+ \expandafter\tud@res@c\tud@res@b\@nil%
+ \fi%
+ \space\tud@res@a%
+ \endgroup%
}
+\newrobustcmd*\seesep{\txb}%
\NewDocumentCommand\seeref{s m}{%
\emph{\IfBooleanTF{#1}{\alsoname}{\seename}}\space#2%
}
-\newcommand*\seeidx[2]{\pageref{idx:#1}}
+\newrobustcmd*\seeidx[2]{\pageref{idx:#1}}
\NewDocumentCommand\Process@Index{mmd==od()d||}{%
\ifboolexpr{%
bool {@tud@index} or bool {@tud@obsolete}%
@@ -1507,7 +1655,7 @@
\fi%
\else%
\IfValueT{#5}{%
- \ifstr{#5}{declare}{%
+ \tud@if@strequal{#5}{declare}{%
\appto\tud@lbl@tmp{-declare}%
\appto\tud@idx@fmt{|declare}%
}{%
@@ -1590,7 +1738,7 @@
\newcommand*\print@index[1][]{%
\pagebreak[3]%
\@tud@indextrue%
- \ifblank{#1}{%
+ \tud@if@strblank{#1}{%
\def\tud@reserved{\tudhyperdef*{idx:main}}%
}{%
\def\tud@reserved{\tudhyperdef*{idx:#1}}%
@@ -1604,15 +1752,15 @@
\tud@idx@skip%
}%
\fi%
- \ifblank{#1}{\printindex}{\printindex[#1]}%
+ \tud@if@strblank{#1}{\printindex}{\printindex[{#1}]}%
\ifnum\imki@columns>\@ne\relax\vspace{-\multicolsep}\fi%
\let\tud@indexprologue\@empty%
}
-\newif\if@tud@changedat
+\tud@newif\if@tud@changedat
\NewDocumentCommand\Process@ChangedAt{md==od()}{%
\tud@idx@get*\tud@idx@key\tud@idx@fmt\tud@idx@val{#1}=#2=[#3](#4)%
}
-\newlength\changedatskip
+\tud@newdim\changedatskip
\NewDocumentCommand\ChangedAt{s o d() m !O{\changedatskip}}{%
\IfValueTF{#2}{%
\Changed@At@CreateList[#2](#3){#4}%
@@ -1662,7 +1810,7 @@
}%
\IfValueTF{#1}{%
\toks@{#3!Implementierung }%
- \eaddto@hook\toks@{\@tempb}%
+ \addto@hook@expandafter\toks@{\@tempb}%
\addto@hook\toks@{!#1!}%
\IfValueT{#4}{\addto@hook\toks@{#4}}%
\addto@hook\toks@{!}%
@@ -1673,14 +1821,14 @@
\toks@{#3!Allgemein }%
\IfValueTF{#2}{%
\addto@hook\toks@{!}%
- \eaddto@hook\toks@{\@tempb:\space}%
+ \addto@hook@expandafter\toks@{\@tempb:\space}%
\IfValueTF{#5}{%
\addto@hook\toks@{#5}%
}{%
\addto@hook\toks@{\emph{neu}}%
}%
}{%
- \eaddto@hook\toks@{\@tempb}%
+ \addto@hook@expandafter\toks@{\@tempb}%
\addto@hook\toks@{!}%
\addto@hook\toks@{#5}%
}%
@@ -1701,7 +1849,7 @@
\@tud@changedattrue%
#3%
\@tud@changedatfalse%
- \ifxblank{#4}{}{%
+ \tud@if@strblank{#4}{}{%
\eappto\tud@idx@val{%
\expandonce\tud@idx@key: Werte angepasst@%
\expandonce\tud@idx@fmt: Werte angepasst!%
@@ -1718,7 +1866,7 @@
}%
\tud@reserved%
}%
- \ifxblank{#5}{%
+ \tud@if@strblank{#5}{%
\if@tud@obsolete%
\appto\tud@idx@fmt{: \emph{entf\"allt}}%
\else%
@@ -1738,7 +1886,7 @@
\newcommand*\PrintChangelog{%
\begingroup%
\let\lettergroup\@gobble%
- \apptocmd{\theindex}{%
+ \apptocmd\theindex{%
\let\subsubsubitem\subsubitem%
\let\subsubitem\subitem%
\let\subitem\item%
@@ -1756,11 +1904,9 @@
\expandafter\def\csname\string\item\endcsname##1~%
}{%
\endgroup%
- \let\@tempb\@firstofone%
- \if@tud@cdoldfont@active\def\@tempb##1{\NoCaseChange{##1}}\fi%
- \addsec[##1]{\TUDScript \@tempb{##1}}%
+ \addsec[{##1}]{\TUDScript ##1}%
\tudhyperdef*{idx:changelog:##1}%
- \def\@tempa{\indexname: \TUDScript \@tempb{##1}}%
+ \def\@tempa{\indexname: \TUDScript ##1}%
\@mkboth{\@tempa}{\@tempa}%
}%
}{}{\tud@patch@wrn{theindex}}%
@@ -1788,25 +1934,25 @@
\forlistloop\@tempa{\tud@templist}%
\hline%
\end{tabular}%
- }[#2]%
+ }[{#2}]%
\ignorespaces%
}%
\fi%
}
-\RequirePackage{enumitem}[2011/09/28]
+\RequirePackage{enumitem}
\setlist{before*={\endgraf\tud@RaggedRight},partopsep=0pt,noitemsep}
\newcommand*\stditem{}
\newcommand*\tud@before@item[1]{%
\ifdefvoid{\stditem}{%
\let\stditem\item%
\letcs\item{tud@item@#1}%
- \setlength\changedatskip{-\baselineskip}%
+ \tud@setdim\changedatskip{-1\baselineskip}%
}{}%
}
\newcommand*\tud@values{}
\NewDocumentEnvironment{values}{mo}{%
\def\tud@values{#1}%
- \IfValueTF{#2}{\@values[#2]}{\@values}%
+ \IfValueTF{#2}{\@values[{#2}]}{\@values}%
}{%
\end@values%
}
@@ -1863,7 +2009,7 @@
\toks@{\item}%
\IfBooleanT{#1}{\addto@hook\toks@{*}}%
\protected@edef\@tempa{#2\IfValueT{#3}{/#3}}%
- \eaddto@hook\toks@{\expandafter[\@tempa]}%
+ \addto@hook@expandafter\toks@{\expandafter[\@tempa]}%
\IfValueT{#4}{\addto@hook\toks@{[#4]}}%
\IfValueT{#5}{\addto@hook\toks@{(#5)}}%
\the\toks@%
@@ -1895,16 +2041,16 @@
}%
}]%
}
-\newlength\tempdim
+\tud@newglue\tempdim
\newsavebox\tabularm@box
-\newlength\tabularm@wd
+\tud@newdim\tabularm@wd
\newcommand*\tabularm@num{1}
\NewEnviron{tabularm}[1]{%
\begin{lrbox}{\tabularm@box}%
\let\allcolumnpar\@gobble%
\begin{tabular}{*{#1}l}\BODY\end{tabular}%
\end{lrbox}%
- \setlength\tabularm@wd{\wd\tabularm@box}%
+ \tud@setdim\tabularm@wd{\wd\tabularm@box}%
\def\tabularm@num{#1}%
\let\allcolumnpar\tabularm@allcolumnpar%
\begin{tabular}{*{#1}l}\BODY\end{tabular}%
@@ -1912,7 +2058,7 @@
\newcommand*\tabularm@allcolumnpar[1]{%
\multicolumn{\tabularm@num}{@{}p{\tabularm@wd}@{}}{#1}%
}
-\RequirePackage{tabularx}[1999/01/07]
+\RequirePackage{tabularx}
\NewDocumentCommand\TermTable{s m !g}{%
\let\tud@templist\relax%
\forcsvlist{\listadd\tud@templist}{#2}%
@@ -1920,11 +2066,11 @@
\vskip\medskipamount%
\@afterindentfalse\@afterheading%
\IfBooleanTF{#1}{%
- \IfValueTF{#3}{\setlength\@tempdima{#3}}{\setlength\@tempdima{\linewidth}}%
- \setlength\@tempdimc{-.7\baselineskip}%
+ \tud@setdim\@tempdima{\IfValueTF{#3}{#3}{\linewidth}}%
+ \tud@setdim\@tempdimc{-.7\baselineskip}%
\begin{tabularx}{\@tempdima}{lXX}\Term@Table\end{tabularx}%
}{%
- \setlength\@tempdimc{\z@}%
+ \tud@setdim\@tempdimc{\z@}%
\begin{tabular}{lll}\Term@Table\end{tabular}%
}%
\par\addvspace{\medskipamount}%
@@ -1938,9 +2084,9 @@
}
\newcommand*\Term@@Table[1]{%
\Term{#1}'none' & %
- \ifstr{\csuse{#1}}{}{\PName{leer}}{\csuse{#1}} & %
+ \tud@if@strempty{\csuse{#1}}{\PName{leer}}{\csuse{#1}} & %
\selectlanguage{english}\vspace*{\@tempdimc}%
- \ifstr{\csuse{#1}}{}{\PName{empty}}{\csuse{#1}}\tabularnewline%
+ \tud@if@strempty{\csuse{#1}}{\PName{empty}}{\csuse{#1}}\tabularnewline%
}
\newenvironment{Example}{\csuse{Example*}}{%
\csuse{endExample*}%
@@ -1952,11 +2098,10 @@
}{%
\endlabeling%
}
-\newcommand*\tud@write@a{}
-\newwrite\tud@write@a
-\RequirePackage{listings}[2014/03/04]
+\tud@newwrite\tud@write@a
+\RequirePackage{listings}
\lstdefinestyle{tudscr}{%
- basicstyle=\ttfamily\ifdef{\setstretch}{\setstretch{1}}{},%
+ basicstyle=\ttfamily\ifundef{\setstretch}{}{\setstretch{1}},%
keywordstyle=,%
columns=fullflexible,keepspaces,%
aboveskip=\smallskipamount,%
@@ -1968,8 +2113,8 @@
\newcommand*\tud@currentHref{}
\BeforeBeginEnvironment{Code}{\global\let\tud@currentHref\@currentHref}
\AfterEndEnvironment{Code}{\global\let\@currentHref\tud@currentHref}
-\RequirePackage{filemod}[2011/09/19]
-\RequirePackage{ifplatform}[2010/10/22]
+\RequirePackage{filemod}
+\RequirePackage{ifplatform}
\newcommand*\tud@shellescape@wrn[1]{%
\ClassWarning{tudscrmanual}%
{%
@@ -2066,16 +2211,16 @@
}{%
\PassOptionsToPackage{colorinlistoftodos,color=HKS92!10}{todonotes}%
}
-\RequirePackage{todonotes}[2012/07/25]
+\RequirePackage{todonotes}
\AtEndPreamble{%
\ifdim\marginparwidth<2cm\relax%
- \setlength\marginparwidth{2cm}%
+ \tud@setdim\marginparwidth{2cm}%
\fi%
}
\AfterPackage*{todonotes}{%
\newcommand*\tud@todo@type@use{}%
\NewDocumentCommand\ToDo{s o m !o}{%
- \ifbool{@tud@todo}{%
+ \if@tud@todo%
\global\let\tud@currentHref\@currentHref%
\begingroup%
\let\tud@todo@type@use\@empty%
@@ -2124,7 +2269,7 @@
\tud@v@get\tud@res@a{#4}%
\def\tud@res@c##1.##2##3##4\@nil{##1##2##3}%
\edef\tud@res@b{\expandafter\tud@res@c\tud@res@a.000\@nil}%
- \ifnumber{\tud@res@b}{%
+ \Ifnumber{\tud@res@b}{%
\edef\tud@res@c{%
\expandafter\tud@res@c\TUDScriptVersionNumber.000\@nil%
}%
@@ -2160,11 +2305,11 @@
\expandafter\todo\expandafter[\the\toks@]{\trim@spaces{#3}\strut}%
}\usebox\z@%
\renewcommand*\marginpar[2][]{%
- \marginnote[##1]{##2}[\dimexpr-\ht\z@+1.6ex+1.75pt\relax]%
+ \marginnote[{##1}]{##2}[\dimexpr-\ht\z@+1.6ex+1.75pt\relax]%
}%
\toks@\expandafter{\tud@res@a noline,nolist}%
\settowidth\marginparwidth{\tud@res@c}%
- \addtolength\marginparwidth{\dimexpr1.6ex+1pt\relax}%
+ \tud@addtodim\marginparwidth{1.6ex+1pt}%
\expandafter\todo\expandafter[\the\toks@]{\tud@res@c\strut}%
\aftergroup\par\aftergroup\noindent%
\listremove{\tud@todo@type@use}{rls}%
@@ -2173,9 +2318,7 @@
\ifx\tud@todo@type@use\@empty\else%
\begingroup%
\let\tud@res@c\@empty%
- \renewcommand*{\do}[1]{%
- \appto\tud@res@c{,##1}%
- }%
+ \def\do##1{\appto\tud@res@c{,##1}}%
\dolistloop{\tud@todo@type@use}%
\edef\tud@res@c{%
\endgroup%
@@ -2189,7 +2332,7 @@
\fi%
\endgroup%
\global\let\@currentHref\tud@currentHref%
- }{}%
+ \fi%
\ignorespaces%
}%
\newcommand*\ListOfToDo{\if@tud@todo\clearpage\listoftodos\fi}%
@@ -2198,20 +2341,19 @@
\NewDocumentCommand\ToDo{s o m !o}{}%
\newcommand*\ListOfToDo{}%
}
-\RequirePackage{csquotes}[2011/10/22]
-\RequirePackage{textcomp}[2005/09/27]
-\RequirePackage{setspace}[2011/12/19]
+\RequirePackage{textcomp}
+\RequirePackage{setspace}
\setstretch{1.1}
\PassOptionsToPackage{vskip=\smallskipamount}{quoting}
-\RequirePackage{quoting}[2014/01/28]
-\RequirePackage{isodate}[2010/01/03]
-\RequirePackage{hologo}[2012/04/26]
-\RequirePackage{ragged2e}[2009/05/21]
+\RequirePackage{quoting}
+\RequirePackage{isodate}
+\RequirePackage{hologo}
+\RequirePackage{ragged2e}
\@removefromreset{footnote}{chapter}
\renewcommand*\raggedfootnote{\tud@RaggedRight}%
-\RequirePackage{booktabs}[2005/04/14]
-\RequirePackage{caption}[2015/09/17]
-\RequirePackage{floatrow}[2008/08/02]
+\RequirePackage{booktabs}
+\RequirePackage{caption}
+\RequirePackage{floatrow}
\DeclareCaptionSubType[alph]{figure}
\DeclareCaptionSubType[alph]{table}
\captionsetup{font=sf,labelfont=bf,labelsep=space}
@@ -2219,75 +2361,13 @@
\captionsetup[subfloat]{labelformat=brace,list=off}
\KOMAoption{captions}{tableheading,figuresignature}
\floatsetup[table]{style=plaintop}
-\RequirePackage{tikz}[2013/12/13]
-\RequirePackage{pdfpages}[2013/08/25]
-\RequirePackage{units}[1998/08/04]
+\RequirePackage{tikz}
+\RequirePackage{pdfpages}
+\RequirePackage{units}
\AtEndPreamble{%
- \RequirePackage{ellipsis}[2004/9/28]%
+ \RequirePackage{ellipsis}
\let\ellipsispunctuation\relax%
}
-\newcommand*\tud@replace[3]{%
- \begingroup%
- \toks@{\def\@tempa##1}%
- \eaddto@hook\toks@{\detokenize{#2}}%
- \addto@hook\toks@{##2\@nil{\@tempb{##1}{##2}}}%
- \the\toks@%
- \def\@tempb##1##2{%
- \IfArgIsEmpty{##2}{%
- \appto#1{##1}%
- \let\@tempc\relax%
- }{%
- \appto#1{##1#3}%
- \def\@tempc{\@tempa##2\@nil}%
- }%
- \@tempc%
- }%
- \toks@{\@tempa}%
- \edef\@tempc{\expandafter\detokenize\expandafter{#1}}%
- \eaddto@hook\toks@{\@tempc}%
- \eaddto@hook\toks@{\detokenize{#2}\@nil}%
- \def#1{}%
- \the\toks@%
- \edef\tud@reserved{%
- \noexpand\endgroup%
- \def\noexpand#1{#1}%
- }%
- \tud@reserved%
-}
-\newcommand*\Attention[2][\z@]{%
- \marginnote{%
- \setlength\fboxsep{0.25em}%
- \fbox{Achtung!}%
- }[#1]%
- \emph{\trim@spaces{#2}}%
-}
-\NewDocumentCommand\Forum{!s !t'}{%
- \IfBooleanTF{#1}{\toks@{\href}}{\toks@{\hrfn}}%
- \IfBooleanT{#2}{\toks@{\url}}%
- \addto@hook\toks@{{http://latex.wcms-file3.tu-dresden.de/phpBB3/}}%
- \IfBooleanF{#2}{\addto@hook\toks@{{TUD-\LaTeX-Forum}}}%
- \the\toks@\xspace%
-}
-\NewDocumentCommand\CTAN{!s !o !g}{%
- \IfBooleanTF{#1}{\toks@{\href}}{\toks@{\hrfn}}%
- \addto@hook\toks@{{http://www.ctan.org/\IfValueT{#2}{#2}}}%
- \addto@hook\toks@{%
- {\tud@english{Comprehensive TeX Archive Network (CTAN\IfValueT{#3}{~#3})}}%
- }%
- \the\toks@\xspace%
-}
-\NewDocumentCommand\GitHubRepo{!s !t' !O{releases}}{%
- \IfBooleanTF{#1}{\toks@{\href}}{\toks@{\hrfn}}%
- \IfBooleanT{#2}{\toks@{\url}}%
- \addto@hook\toks@{{https://github.com/tud-cd/tudscr/#3}}%
- \IfBooleanF{#2}{%
- \addto@hook\toks@{{\tud@english{GitHub-Repository~\Distribution*{tudscr}}}}%
- }%
- \the\toks@\xspace%
-}
-\newcommand*\Download[1]{%
- https://github.com/tud-cd/tudscr/releases/download/#1%
-}
\newcommand*\notudscrartcl{%
F\"ur die Klassen \Class{tudscrartcl} sowie \Class{tudscrposter} ist diese
Option nicht verf\"ugbar.%
@@ -2300,60 +2380,24 @@
\addto@hook\toks@{{#2}}%
\the\toks@\xspace%
}
-\newcommand*\CD{\tud@english{Corporate Design}\xspace}
-\newcommand*\CDs{\tud@english{Corporate Designs}\xspace}
-\newcommand*\TUD{Technische Universit\"at Dresden\xspace}
-\newcommand*\TnUD{Technischen Universit\"at Dresden\xspace}
-\newcommand*\TUDCD{\CD der \TnUD}
-\newcommand*\TUDCDs{\CDs der \TnUD}
-\newrobustcmd*\DDC{%
- \mbox{%
- D\kern.05em R\kern.05em E\kern.05em S\kern.05em %
- D\kern.05em E\kern.05em N\kern.1em-\kern.1em concept%
- }\xspace%
-}
-\AfterPackage*{hyperref}{%
- \pdfstringdefDisableCommands{%
- \def\DDC{DRESDEN-concept}%
- \def\TUDScript{TUD-Script}%
- \def\KOMAScript{KOMA-Script}%
- }%
-}
-\DeclareTextFontCommand\tud@cdfont@texteb{%
- \fontfamily{\tud@cdfont@fam}\fontseries{\tud@cdfont@ebf}\selectfont%
-}
-\newrobustcmd*\OpenSans{%
- \texorpdfstring{\tud@cdfont@texteb{Open~Sans}}{Open Sans}\xspace%
-}
-\newrobustcmd*\Univers{\texorpdfstring{\textcdbi{Univers}}{Univers}\xspace}
-\newrobustcmd*\DIN{\texorpdfstring{\textcdxi{DIN~Bold}}{DIN Bold}\xspace}
-\renewcommand*\@pnumwidth{2.1em}%
-\renewcommand*\@tocrmarg{3.1em}%
-\newcommand*\textsbn{}
-\newrobustcmd*\sbnfont{\sffamily\bfseries\upshape}
-\DeclareTextFontCommand\textsbn{\sbnfont}
-\newcommand*\textsbs{}
-\newrobustcmd*\sbsfont{\sffamily\bfseries\slshape}
-\DeclareTextFontCommand\textsbs{\sbsfont}
-%%% From File: tudscr-fields.dtx
+%%%% From File: tudscr-fields.dtx (no git version info was found)
\newcommand*\@chairman{}
-\newcommand*\chairman[1]{\gdef\@chairman{#1}}
+\newcommand*\chairman[1]{\tud@trim@field\@chairman{#1}}
\newcommand*\@grade{}
-\newcommand*\grade[1]{\gdef\@grade{#1}}
-\newcommand*\@headline{}
+\newcommand*\grade[1]{\tud@trim@field\@grade{#1}}
\newcommand*\@issuedate{}
\newcommand*\issuedate[1]{\tud@printdate{\@issuedate}{#1}}
\newcommand*\@duedate{}
\newcommand*\duedate[1]{\tud@printdate{\@duedate}{#1}}
\newcommand*\@contactperson{}
-\newcommand*\contactperson[1]{\gdef\@contactperson{#1}}
+\newcommand*\contactperson[1]{\tud@trim@field\@contactperson{#1}}
\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}}
-%%% From File: tudscr-localization.dtx
+\newrobustcmd*\telefax[1]{\tud@trim@field\@telefax{#1}}
+%%%% From File: tudscr-localization.dtx (no git version info was found)
\tud@localization@define{\authorname}
\tud@localization@define{\contactname}
\tud@localization@define{\contactpersonname}
@@ -2409,107 +2453,105 @@
The thesis is evaluated with a grade of \textbf{\@grade}.%
}
\tud@localization@english{\noticename}{Notice}
-%%% From File: tudscr-texindy.dtx
-\begingroup
-\newcommand*\tud@write@xdy{}
-\newwrite\tud@write@xdy
-\newif\if@tud@xdy@glo
-\newcommand*\tud@xdy@create[2][theindex]{%
- \IfFileExists{\@currname-#2.xdy}{}{%
- \ifstr{#1}{theglossary}{\@tud@xdy@glotrue}{\@tud@xdy@glofalse}%
- \openout\tud@write@xdy=\@currname-#2.xdy\relax%
- \write\tud@write@xdy{(require "texindy.xdy")}%
- \write\tud@write@xdy{%
- (define-location-class^^J%
- \space\space"arabic-page-numbers" ("arabic-numbers")%
- \space:min-range-length 1^^J%
+%%%% From File: tudscr-texindy.dtx (no git version info was found)
+\edef\tud@res@a{\catcode`\noexpand\#=\the\catcode`\#\relax}%
+\@makeother\#
+\newcommand*\@hashchar{#}
+\tud@res@a
+\tud@newwrite\tud@xdy@write
+\NewDocumentCommand\tud@xdy@create{s}{%
+ \begingroup%
+ \edef\tud@res@a{\@currname-\IfBooleanTF{#1}{gls}{ind}.xdy}%
+ \expandafter\IfFileExists\expandafter{\tud@res@a}{}{%
+ \IfBooleanTF{#1}{\@tud@res@swatrue}{\@tud@res@swafalse}%
+ \edef\tud@res@b{the\if@tud@res@swa glossary\else index\fi}%
+ \edef\tud@res@a{\noexpand\tud@xdy@@create{\tud@res@b}{\tud@res@a}}%
+ \tud@res@a%
+ }%
+ \endgroup%
+}
+\newcommand*\tud@xdy@@create[2]{%
+ \immediate\openout\tud@xdy@write=#2\relax%
+ \immediate\write\tud@xdy@write{(require "texindy.xdy")}%
+ \immediate\write\tud@xdy@write{%
+ (markup-index^^J%
+ \@spaces:open^^J%
+ "\string\begin{#1}^^J%
+ \space\space\string\providecommand*\string\seesep{/}\@percentchar^^J%
+ "^^J% Ende des Umgebungsbeginns
+ \@spaces:close "\string~n\string~n\string\end{#1}\string~n"^^J%
+ \@spaces:hierdepth 3^^J%
)^^J%
- (markup-range :sep "--")%
- }%
- \write\tud@write@xdy{%
- (merge-rule "\@backslashchar[(.*)\@backslashchar]" "" :eregexp)%
- }%
- \write\tud@write@xdy{%
- (markup-indexentry :open "~n \string\subsubsubitem " :depth 3)%
- }%
- \write\tud@write@xdy{%
- (markup-locclass-list%
- \space:open "\string\,\string\dotfill\string\,"%
- \space:close "\string\relax"%
- \space:sep ",\space"%
- )%
- }%
- \write\tud@write@xdy{%
- (define-attributes (("declare" "!" "important" "?" "default")))^^J%
- (markup-locref%
- \space:attr "declare"\space\space%
- \space:open "\string\textbf{\string\hyperpage{"%
- \space:close "}}"%
+ (define-location-class "arabic-page-numbers"^^J%
+ \@spaces("arabic-numbers")^^J%
+ \@spaces:min-range-length 2^^J%
)^^J%
- (markup-locref%
- \space:attr "!"\@spaces\@spaces%
- \space:open "\string\textbf{\string\hyperpage{"%
- \space:close "}}"%
+ (markup-range :sep "--")^^J%
+ (merge-rule :eregexp^^J%
+ \@spaces"\string\[(.*)\string\]"^^J%
+ \@spaces""^^J%
)^^J%
- (markup-locref%
- \space:attr "important"%
- \space:open "\string\textsl{\string\hyperpage{"%
- \space:close "}}"%
+ (markup-indexentry :depth 3^^J%
+ \@spaces:open\space\space"\string~n\string\subsubsubitem\space"^^J%
)^^J%
- (markup-locref%
- \space:attr "?"\@spaces\@spaces%
- \space:open "\string\textsl{\string\hyperpage{"%
- \space:close "}}"%
+ (markup-locclass-list^^J%
+ \@spaces:open\space\space"\string\,\string\dotfill\string\,"^^J%
+ \@spaces:close "\string\relax"^^J%
+ \@spaces:sep\space\space\space",\space"^^J%
+ )^^J%
+ (define-attributes (("!" "default") ("?" "default") ("default")))^^J%
+ (markup-attribute-group-list :sep ", ")^^J%
+ (markup-locref :attr "!"^^J%
+ \@spaces:open\space\space"\string\textbf{\string\hyperpage{"^^J%
+ \@spaces:close "}}"^^J%
+ )^^J%
+ (markup-locref :attr "?"^^J%
+ \@spaces:open\space\space"\string\textit{\string\hyperpage{"^^J%
+ \@spaces:close "}}"^^J%
+ )^^J%
+ (markup-locref :attr "default"^^J%
+ \@spaces:open\space\space"\string\hyperpage{"^^J%
+ \@spaces:close "}" ^^J%
)^^J%
- (markup-locref%
- \space:attr "default"\space\space%
- \space:open "\string\hyperpage{"\@spaces\@spaces%
- \space:close "}"%
- )%
- }%
- \write\tud@write@xdy{%
(markup-crossref-list :class "see"^^J%
- \space\space:open "\string\cleversee{" \@spaces:sep "; " :close "}"^^J%
+ \@spaces:open\space\space"\string\cleversee\space"^^J%
+ \@spaces:sep\space\space\space"; "^^J%
+ \@spaces:close "\@backslashchar\@backslashchar"^^J%
)^^J%
(markup-crossref-list :class "seealso"^^J%
- \space\space:open "\string\cleverseealso{" :sep "; " :close "}"^^J%
- )%
- }%
- \write\tud@write@xdy{%
+ \@spaces:open\space\space"\string\cleverseealso\space"^^J%
+ \@spaces:sep\space\space\space"; "^^J%
+ \@spaces:close "\@backslashchar\@backslashchar"^^J%
+ )^^J%
(define-crossref-class "seeunverified" :unverified)^^J%
(markup-crossref-list :class "seeunverified"^^J%
- \space\space:open "\string\cleversee{" \@spaces:sep "; " :close "}"^^J%
- )%
- }%
- \write\tud@write@xdy{%
+ \@spaces:open\space\space"\string\cleversee\space"^^J%
+ \@spaces:sep\space\space\space"; "^^J%
+ \@spaces:close "\@backslashchar\@backslashchar"^^J%
+ )^^J%
(define-crossref-class "seeidx" :unverified)^^J%
(markup-crossref-list :class "seeidx"^^J%
- \space\space:open "\string\seeidx{"\@spaces\@spaces:sep "; "%
- \space:close "}{}"^^J%
- )%
- }%
- \write\tud@write@xdy{%
+ \@spaces:open\space\space"\string\seeidx{"^^J%
+ \@spaces:sep\space\space\space"; "^^J%
+ \@spaces:close "}{}"^^J%
+ )^^J%
+ (markup-crossref-layer-list :class "see"%
+ \@spaces\space:sep "\string\seesep{}"%
+ )^^J%
+ (markup-crossref-layer-list :class "seealso"%
+ \space:sep "\string\seesep{}"%
+ )^^J%
(define-location-class-order^^J%
- \space\space(^^J%
+ \@spaces(^^J%
\@spaces"see" "seealso" "seeidx" "seeunverified"^^J%
\@spaces"roman-page-numbers" "arabic-page-numbers" "alpha-page-numbers"^^J%
\@spaces"Roman-page-numbers" "Alpha-page-numbers"^^J%
- \space\space)^^J%
- )%
- }%
- \write\tud@write@xdy{%
- (markup-crossref-layer-list :class "see"%
- \@spaces\space:sep "\string\,\string\textbar\string\,"%
+ \@spaces)^^J%
)^^J%
- (markup-crossref-layer-list :class "seealso"%
- \space:sep "\string\,\string\textbar\string\,"%
- )%
- }%
- \closeout\tud@write@xdy%
}%
+ \immediate\closeout\tud@xdy@write%
}
-\tud@xdy@create{ind}
-\endgroup
+\tud@xdy@create
\endinput
%%
%% End of file `tudscrmanual.cls'.
diff --git a/Master/texmf-dist/tex/latex/tudscr/tudscrtutorial.sty b/Master/texmf-dist/tex/latex/tudscr/tudscrmanual.sty
index 7323baa6070..8fe34bda39e 100644
--- a/Master/texmf-dist/tex/latex/tudscr/tudscrtutorial.sty
+++ b/Master/texmf-dist/tex/latex/tudscr/tudscrmanual.sty
@@ -1,22 +1,25 @@
%%
-%% This is file `tudscrtutorial.sty',
+%% This is file `tudscrmanual.sty',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
-%% tudscr-version.dtx (with options: `package,tutorial')
-%% tudscr-manual.dtx (with options: `package,tutorial,identify')
-%% tudscr-base.dtx (with options: `package,tutorial,load')
-%% tudscr-manual.dtx (with options: `package,tutorial,option')
-%% tudscr-misc.dtx (with options: `package,tutorial,execute')
-%% tudscr-manual.dtx (with options: `package,tutorial,body')
-%% tudscr-texindy.dtx (with options: `package,tutorial')
+%% tudscr-version.dtx (with options: `package,manual,identify')
+%% tudscr-manual.dtx (with options: `package,manual,identify')
+%% tudscr-base.dtx (with options: `package,manual,load')
+%% tudscr-misc.dtx (with options: `package,manual,option')
+%% tudscr-manual.dtx (with options: `package,manual,option')
+%% tudscr-misc.dtx (with options: `package,manual,execute')
+%% tudscr-misc.dtx (with options: `package,manual,body')
+%% tudscr-manual.dtx (with options: `package,manual,body')
+%% tudscr-texindy.dtx (with options: `package,manual')
%%
%% 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.
%% ----------------------------------------------------------------------------
@@ -32,63 +35,150 @@
%%
%% 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}
-\ifx\TUD@Class@Name\@undefined
- \PackageError{%
- tudscrtutorial%
- }{Unsupported class found}{%
- This package can only be used with a class out of the\MessageBreak%
- tudscr bundle (tudscrbook, tudscrreprt, tudscrartcl, tudscrposter).%
- }%
- \endinput%
-\fi
\@ifundefined{TUDScript}{%
\DeclareRobustCommand\TUDScript{%
- \textsf{%
- T\kern.05em U\kern.05em D\kern.1em-\kern.1em Script%
- }%
- \ifcsname xspace\endcsname%
- \xspace%
- \fi%
+ \mbox{%
+ \textsf{%
+ T\kern.05em U\kern.05em D\kern.1em-\kern.1em Script%
+ }%
+ }\ifcsname xspace\endcsname\xspace\fi%
}%
}{}
-%%% From File: tudscr-manual.dtx
-\ProvidesPackage{tudscrtutorial}[%
- 2021/07/15 v2.06n TUD-Script
- package
- (internal tutorials)%
+\providecommand*\TUDScriptContact{hanisch.latex@outlook.com}
+\providecommand*\TUDScriptRepository{https://github.com/tud-cd/tudscr}
+\providecommand*\TUDScriptForum{https://latex.wcms-file3.tu-dresden.de/phpBB3/}
+\providecommand*\TUD@Class@Check[1]{%
+ \ifx\TUD@Class@Name\@undefined%
+ \PackageError{#1}{TUD-Script class not loaded}{%
+ This package requires a class of the TUD-Script bundle\MessageBreak%
+ (tudscrbook, tudscrreprt, tudscrartcl, tudscrposter).%
+ }%
+ \DeclareOption*{}%
+ \ProcessOptions\relax%
+ \expandafter\endinput%
+ \fi%
+}%
+%%%% From File: tudscr-manual.dtx (no git version info was found)
+\ProvidesPackage{tudscrmanual}[%
+ 2022/08/09 v2.06o TUD-Script
+ package (tudscr tutorials)%
]
-%%% From File: tudscr-base.dtx
-\RequirePackage{tudscrbase}[\TUD@Version]
-%%% From File: tudscr-manual.dtx
+\TUD@Class@Check{tudscrtutorial}
+%%%% From File: tudscr-base.dtx (no git version info was found)
+\RequirePackage{tudscrbase}[%
+ 2022/08/09 v2.06o TUD-Script
+]
+%%%% From File: tudscr-misc.dtx (no git version info was found)
+\RequirePackage{scrhack}[%
+ 2022/05/01 v3.36 KOMA-Script
+]
+\RequirePackage{xspace}
+\xspaceaddexceptions{"=}
+\PassOptionsToPackage{quiet}{marginnote}
+\RequirePackage{marginnote}
+\reversemarginpar
+\RequirePackage{shellesc}
+\RequirePackage{pdftexcmds}
+\PassOptionsToPackage{hyperindex=false}{hyperref}
+\AfterPackage*{bookmark}{\bookmarksetup{open,openlevel=1}}
+\AfterAtEndOfPackage*{hyperref}{%
+ \@ifpackageloaded{bookmark}{}{\RequirePackage{bookmark}}%
+ \hypersetup{colorlinks,linkcolor=blue}%
+}
+\newcommand*\hrfn[2]{%
+ \href{#1}{\trim@spaces{#2}}%
+ \footnote{\strut\url{#1}}%
+}
+\newrobustcmd*\mailto[1]{\mbox{\href{mailto:#1}{\nolinkurl{#1}}}}
+\TUD@UnwindPackage{hyperref}{%
+ \RequirePackage{url}
+ \providerobustcmd*\url[1]{\texttt{\detokenize{#1}}}%
+ \providerobustcmd*\nolinkurl[1]{\url{#1}}%
+ \providerobustcmd*\href[3][]{#3}%
+ \providecommand*\hypersetup[1]{}%
+ \providecommand*\phantomsection{}%
+ \providecommand*\pdfbookmark[3][]{}%
+ \providecommand*\currentpdfbookmark[2]{}%
+ \providecommand*\subpdfbookmark[2]{}%
+ \providecommand*\belowpdfbookmark[2]{}%
+}
+\AfterPackage*{babel}{\RequirePackage{csquotes}}
+\TUD@UnwindPackage{babel}{%
+ \ClassWarningNoLine{\TUD@Class@Name}{Package `babel' not loaded}%
+ \providecommand*\selectlanguage[1]{}%
+ \providecommand*\glqq{\quotedblbase}%
+ \providecommand*\grqq{\textquotedblleft}%
+ \providecommand*\seename{see}%
+ \providecommand*\alsoname{see\nobreakspace also}%
+}
+\TUD@UnwindPackage{csquotes}{%
+ \ClassWarningNoLine{\TUD@Class@Name}{Package `csquotes' not loaded}%
+ \providecommand\enquote[1]{\emph{#1}}%
+}
+\newcommand*\tud@replace@in[3]{%
+ \begingroup%
+ \edef\tud@res@a{\expandonce{#1}}%
+ \let\tud@res@c\@empty%
+ \def\tud@res@b##1#2##2\@nil{%
+ \IfArgIsEmpty{##2}{%
+ \appto\tud@res@c{##1}%
+ }{%
+ \appto\tud@res@c{##1#3}%
+ \tud@res@b##2\@nil%
+ }%
+ }%
+ \expandafter\tud@res@b\tud@res@a#2\@nil%
+ \edef\tud@res@a{%
+ \endgroup%
+ \unexpanded{\def#1}{\expandonce\tud@res@c}%
+ }%
+ \tud@res@a%
+}
+\newcommand*\tud@replace@@in[3]{%
+ \begingroup%
+ \protected@edef\tud@res@a{#1}%
+ \edef\tud@res@a{\detokenize\expandafter{\tud@res@a}}%
+ \edef\tud@res@b{%
+ \unexpanded{\tud@replace@in\tud@res@a}{\detokenize{#2}}{\detokenize{#3}}%
+ }%
+ \tud@res@b%
+ \edef\tud@res@a{%
+ \endgroup%
+ \unexpanded{\def#1}{\tud@res@a}%
+ }%
+ \tud@res@a%
+}
+%%%% From File: tudscr-manual.dtx (no git version info was found)
\TUD@key{final}[true]{%
\TUD@set@ifkey{final}{@tempswa}{#1}%
\ifx\FamilyKeyState\FamilyKeyStateProcessed%
@@ -120,7 +210,7 @@
\ifundef{\hypersetup}{}{\hypersetup{hidelinks}}%
}{}%
}
-\newif\if@tud@todo
+\tud@newif\if@tud@todo
\newcommand*\tud@todo@type@pos{}
\let\tud@todo@type@pos\relax
\newcommand*\tud@todo@type@neg{}
@@ -132,7 +222,7 @@
\let\tud@todo@type@neg\relax%
\else%
\def\@tempa not##1##2##3##4\@nil{%
- \ifstr{##1##2##3}{not}{%
+ \tud@if@strequal{##1##2##3}{not}{%
\IfArgIsEmpty{##4}{}{%
\listeadd\tud@todo@type@neg{##4}%
\@tud@todotrue%
@@ -150,36 +240,126 @@
\expandafter\@tempa\@tempb\@empty\@empty\@empty\@nil%
\fi%
}
-%%% From File: tudscr-misc.dtx
+%%%% From File: tudscr-misc.dtx (no git version info was found)
\KOMAoptions{headings=small}
\TUDoptions{cdfoot=true}
\TUDExecuteOptions{%
- ToDo=true%
}
\TUDProcessOptions\relax
-%%% From File: tudscr-manual.dtx
-\PassOptionsToPackage{log-declarations=false}{xparse}
-\RequirePackage{xparse}[2013/12/31]
-\RequirePackage{scrhack}[2014/02/27]
-\RequirePackage{babel}[2014/03/24]
-\PassOptionsToPackage{quiet}{marginnote}
-\RequirePackage{marginnote}[2012/03/29]
-\reversemarginpar
-\RequirePackage{xspace}[2009/10/20]
-\xspaceaddexceptions{"=}
+%%%% From File: tudscr-misc.dtx (no git version info was found)
+\renewcommand*\@pnumwidth{2.1em}
+\renewcommand*\@tocrmarg{3.1em}
+\newcommand*\textsbn{}
+\newrobustcmd*\sbnfont{\sffamily\bfseries\upshape}
+\DeclareTextFontCommand\textsbn{\sbnfont}
+\newcommand*\textsbi{}
+\newrobustcmd*\sbifont{\sffamily\bfseries\itshape}
+\DeclareTextFontCommand\textsbi{\sbifont}
+\newcommand*\textttit{}
+\newrobustcmd*\ttitfont{\ttfamily\itshape}
+\DeclareTextFontCommand\textttit{\ttitfont}
+\newcommand*\tud@english[1]{%
+ \iflanguageloaded{english}{\foreignlanguage{english}{#1}}{#1}%
+}
+\AfterPackage*{babel}{%
+ \renewcommand*\tud@english[1]{\foreignlanguage{english}{#1}}%
+}
+\kernel@make@fragile\KOMAScript
+\edef\KOMAScript{\noexpand\mbox{\expandonce\KOMAScript}\noexpand\xspace}
+\robustify\KOMAScript
+\robustify\TUDScript
+\AfterPackage*{hyperref}{%
+ \pdfstringdefDisableCommands{%
+ \def\KOMAScript{KOMA-Script{}}%
+ \def\TUDScript{TUD-Script{}}%
+ }%
+}
\newcommand*\vTUDScript{v\TUDScriptVersionNumber}
-\newcommand*\vKOMAScript{v\TUD@Version@KOMA}
-\newcommand*\tud@english[1]{#1}
-\AtBeginDocument{%
- \iflanguageloaded{english}{%
- \renewcommand*\tud@english[1]{\foreignlanguage{english}{#1}}%
- }{}%
+\newcommand*\vKOMAScript{v\TUD@KOMAVersionNumber}
+\newrobustcmd*\CD{\tud@english{Corporate Design}\xspace}
+\newrobustcmd*\CDs{\tud@english{Corporate Designs}\xspace}
+\newrobustcmd*\TUD{Technische Universit\"at Dresden\xspace}
+\newrobustcmd*\TnUD{Technischen Universit\"at Dresden\xspace}
+\newcommand*\TUDCD{\CD der \TnUD}
+\newcommand*\TUDCDs{\CDs der \TnUD}
+\newrobustcmd*\TUDForum{\mbox{T\kern.05em U\kern.05em D-\LaTeX-Forum}\xspace}
+\newrobustcmd*\DDC{%
+ \mbox{%
+ D\kern.05em R\kern.05em E\kern.05em S\kern.05em %
+ D\kern.05em E\kern.05em N\kern.1em-\kern.1em concept%
+ }\xspace%
+}
+\AfterPackage*{hyperref}{%
+ \pdfstringdefDisableCommands{%
+ \def\CD{Corporate Design{}}%
+ \def\CDs{Corporate Designs{}}%
+ \def\TUD{Technische Universit\"at Dresden{}}%
+ \def\TnUD{Technischen Universit\"at Dresden{}}%
+ \def\TUDForum{TUD-LaTeX-Forum{}}%
+ \def\DDC{DRESDEN-concept{}}%
+ }%
+}
+\newrobustcmd*\OpenSans{\textcdbn{Open\nobreakspace Sans}\xspace}
+\newrobustcmd*\Univers{\textcdbi{Univers}\xspace}
+\newrobustcmd*\DIN{\textcdbi{DIN\nobreakspace Bold}\xspace}
+\AfterPackage*{hyperref}{%
+ \pdfstringdefDisableCommands{%
+ \def\OpenSans{Open Sans{}}%
+ \def\Univers{Univers{}}%
+ \def\DIN{DIN Bold{}}%
+ }%
+}
+\newcommand*\GitHubBase[1]{}
+\NewDocumentCommand\GitHubRepo{!s !t' !O{releases} !D(){tud-cd/tudscr} !d<>}{%
+ \IfBooleanTF{#1}{\toks@{\href}}{\toks@{\hrfn}}%
+ \IfBooleanT{#2}{\toks@{\url}}%
+ \def\@tempa{https://github.com/#4/}%
+ \edef\@tempa{{\@tempa\IfValueTF{#5}{issues/#5}{#3}}}%
+ \addto@hook@expandafter\toks@{\@tempa}%
+ \IfBooleanF{#2}{%
+ \addto@hook\toks@{{\tud@english{GitHub-Repository~\textsbn{#4}}}}%
+ }%
+ \the\toks@\xspace%
+}
+\newcommand*\Download[1]{%
+ https://github.com/tud-cd/tudscr/releases/download/#1%
+}
+\NewDocumentCommand\CTAN{!s !o !g}{%
+ \IfBooleanTF{#1}{\toks@{\href}}{\toks@{\hrfn}}%
+ \addto@hook\toks@{{http://www.ctan.org/\IfValueT{#2}{#2}}}%
+ \addto@hook\toks@{%
+ {\tud@english{Comprehensive TeX Archive Network (CTAN\IfValueT{#3}{~#3})}}%
+ }%
+ \the\toks@\xspace%
+}
+\NewDocumentCommand\Forum{!s !t' !O{\TUDForum} !d<>}{%
+ \IfBooleanTF{#1}{\toks@{\href}}{\toks@{\hrfn}}%
+ \IfBooleanT{#2}{\toks@{\url}}%
+ \def\@tempa{http://latex.wcms-file3.tu-dresden.de/phpBB3/}%
+ \edef\@tempa{{\@tempa\IfValueT{#4}{viewtopic.php?t=#4}}}%
+ \addto@hook@expandafter\toks@{\@tempa}%
+ \IfBooleanF{#2}{\addto@hook\toks@{{#3}}}%
+ \the\toks@\xspace%
+}
+\newcommand*\Attention[2][\z@]{%
+ \marginnote{%
+ \tud@setdim\fboxsep{0.25em}%
+ \fbox{Achtung!}%
+ }[{#1}]%
+ \emph{\trim@spaces{#2}}%
+}
+\newrobustcmd*\TUDScriptContactTitle{%
+ \ifundef{\emailaddress}{%
+ \qquad\expandafter\mailto\expandafter{\TUDScriptContact}%
+ }{%
+ \expandafter\emailaddress\expandafter{\TUDScriptContact}%
+ }%
+}
+\AfterPackage*{hyperref}{%
+ \pdfstringdefDisableCommands{\let\TUDScriptContactTitle\relax}%
}
-\RequirePackage{shellesc}[2016/06/07]
-\RequirePackage{pdftexcmds}[2016/05/21]
-\RequirePackage{scrwfile}[2013/08/05]
-\PassOptionsToPackage{hyperindex=false,colorlinks,linkcolor=blue}{hyperref}
-\PassOptionsToPackage{open,openlevel=0}{bookmark}
+%%%% From File: tudscr-manual.dtx (no git version info was found)
+\RequirePackage{scrwfile}
\AfterPackage*{hyperref}{%
\renewcaptionname{ngerman}{\sectionautorefname}{Unterkapitel}%
\renewcaptionname{ngerman}{\subsectionautorefname}{Abschnitt}%
@@ -189,7 +369,7 @@
\hyperref{../\tud@manualname.pdf}{\tud@manualname}{#1}{#2}%
}%
\newcommand*\autorefname[1][current]{%
- \ifstr{#1}{current}{%
+ \tud@if@strequal{#1}{current}{%
\expandafter\HyPsd@@autorefname\@currentHref\@nil%
}{%
\auto@refname\HyPsd@@autorefname{#1}%
@@ -208,18 +388,12 @@
\def\auto@@refname#1#2#3#4#5\@nil#6\@nil{#6#4.\@nil}%
}
\TUD@UnwindPackage{hyperref}{%
- \PackageWarningNoLine{tudscrtutorial}%
+ \PackageWarningNoLine{tudscrmanual}%
{%
It is strongly recommended to load package `hyperref'. \MessageBreak%
Nevertheless, essential commands are rudimentarily\MessageBreak%
defined. At least the package `url' is loaded%
}%
- \providecommand*\hypersetup[1]{}%
- \providecommand*\href[3][]{#3}%
- \providecommand*\phantomsection{}%
- \providecommand*\texorpdfstring[2]{#1}%
- \RequirePackage{url}[2013/09/16]%
- \providecommand*\nolinkurl[1]{\url{#1}}%
\providecommand*\hyperpage[1]{#1}%
\providecommand*\autoref{??\xspace\kernel@ifstar{\ref}{\ref}}%
\providecommand*\hyperdef[3]{\label{#1.#2}#3}%
@@ -241,27 +415,10 @@
\providecommand*\tudhyperref[2]{#2}%
\providecommand*\autorefname[1][]{??\xspace}%
}
-\newcommand*\hrfn[2]{%
- \href{#1}{\trim@spaces{#2}}%
- \footnote{%
- \begingroup%
- \def\_{_}%
- \edef\@tempa{#1}%
- \strut\expandafter\url\expandafter{\@tempa}%
- \endgroup%
- }%
-}
-\newrobustcmd*\mailto[1]{\mbox{\href{mailto:#1}{\nolinkurl{#1}}}}%
-\AfterPackage*{hyperref}{%
- \patchcmd{\pdfstringdef}{\csname HyPsd@babel@}{%
- \let\bbl@info\@gobble\csname HyPsd@babel@%
- }{}{\tud@patch@wrn{pdfstringdef}}%
-}
-\RequirePackage{varioref}[2011/10/02]
-\renewcommand*\fullref[1]{\hyperref[#1]{\autoref*{#1} \vpageref{#1}}}
-\AfterPackage*{hyperref}{\RequirePackage[babel]{microtype}[2013/05/23]}
-\TUD@UnwindPackage{hyperref}{\RequirePackage[babel]{microtype}[2013/05/23]}
+\RequirePackage{varioref}
+\renewcommand*\fullref[1]{\hyperref[{#1}]{\autoref*{#1} \vpageref{#1}}}
\newrobustcmd*\bsc{\@backslashchar}
+\newrobustcmd*\txb{{\raise.05em\hbox{\kern.05em\textbar\kern.05em}}}
\newrobustcmd*\suffix[1]{\begingroup~\scriptsize(#1)\endgroup}
\providecommand*\NewExpandableDocumentCommand[3]{%
\NewDocumentCommand#1{#2}{}%
@@ -283,13 +440,13 @@
\tud@reserved%
}
\newcommand*\tud@keyval@error{%
- \PackageError{tudscrtutorial}%
+ \PackageError{tudscrmanual}%
{Wrong usage of optional argument for value}%
{There are two optional arguments for a value given!}%
}
\newenvironment{Bundle}[1]{%
\tud@if@bdl{%
- \PackageError{tudscrtutorial}%
+ \PackageError{tudscrmanual}%
{Nested environment `Bundle'}{%
It is not possible to nest this environment, when\MessageBreak%
a cross-label was given before.%
@@ -305,10 +462,12 @@
\newcommand*\tud@bdl@curr{}
\newcommand*\tud@bdl@dflt{tudscr}
\let\tud@bdl@curr\tud@bdl@dflt
-\newcommand*\tud@if@bdl[2]{\ifstr{\tud@bdl@curr}{\tud@bdl@dflt}{#2}{#1}}
+\newcommand*\tud@if@bdl[2]{%
+ \tud@if@strequal{\tud@bdl@curr}{\tud@bdl@dflt}{#2}{#1}%
+}
\NewExpandableDocumentCommand\@Application{sm}{#2}
\NewDocumentCommand\Application{s m !d() !d<> !d||}{%
- \Markup@SetFormat{\sbsfont}%
+ \Markup@SetFormat{\sbifont}%
\IfValueTF{#4}{%
\Process@Markup{\Application{#2}}(#3)<#4>%
}{%
@@ -453,7 +612,7 @@
\let\textOR\relax%
\let\emph\@firstofone%
#1%
- \ifxblank{#2}{%
+ \tud@if@strblank{#2}{%
\let\tud@reserved\endgroup%
}{%
\protected@edef\tud@reserved{\noexpand\endgroup#3}%
@@ -517,8 +676,7 @@
\tud@lbl@get@@dflt{#1}#2=#3=%
}
\NewDocumentCommand\tud@lbl@get@@dflt{mmmmr==}{%
- \edef\tud@reserved{\expandafter\detokenize\expandafter{\tud@bdl@dflt}}%
- \ifstr{\tud@reserved}{#2}{}{%
+ \tud@if@strequal{#2}{\tud@bdl@dflt}{}{%
\tud@lbl@get@curr#1{\tud@bdl@dflt:#3:#4}=#5=%
}%
}
@@ -533,7 +691,7 @@
\IfValueTF{#2}{%
\tud@attr@get\@tempb{#2}%
\IfValueTF{#1}{%
- \ifxblank{#1}{%
+ \tud@if@strblank{#1}{%
\edef\@tempa{\tud@bdl@dflt:\@tempb:#2}%
}{%
\edef\@tempa{#1:\@tempb:#2}%
@@ -553,7 +711,7 @@
}%
\@tempc%
}
-\newif\if@tud@disposition
+\tud@newif\if@tud@disposition
\newcommand*\ifdisposition{%
\if@tud@disposition%
\expandafter\@firstoftwo%
@@ -561,7 +719,7 @@
\expandafter\@secondoftwo%
\fi%
}
-\pretocmd{\tud@sec@format}{%
+\pretocmd\tud@sec@format{%
\@tud@dispositiontrue%
}{}{\tud@patch@wrn{tud@sec@format}}
\newcommand*\Markup@Suppress{\let\Process@Markup\Markup@@Suppress}
@@ -569,7 +727,7 @@
\NewDocumentCommand\Process@Markup{md==od()d<>d''}{%
\tud@toks@{\Process@@MarkupInline}%
\tud@lbl@get@curr\tud@lbl@tmp{#4:#1}=#2=%
- \eaddto@hook\tud@toks@{\expandafter{\tud@lbl@tmp}}%
+ \addto@hook@expandafter\tud@toks@{\expandafter{\tud@lbl@tmp}}%
\begingroup%
\Markup@Gobble*%
\protected@edef\tud@reserved{%
@@ -577,12 +735,14 @@
\def\noexpand\tud@reserved{#1}%
}%
\tud@reserved%
- \eaddto@hook\tud@toks@{\expandafter{\tud@reserved}}%
+ \addto@hook@expandafter\tud@toks@{\expandafter{\tud@reserved}}%
\IfValueT{#2}{\addto@hook\tud@toks@{=#2=}}%
\IfValueT{#3}{\addto@hook\tud@toks@{[#3]}}%
\if@tud@index\else%
\IfValueT{#5}{%
- \ifxblank{#5}{}{\addto@hook\tud@toks@{<http://www.ctan.org/pkg/#5>}}%
+ \tud@if@strblank{#5}%
+ {}%
+ {\addto@hook\tud@toks@{<http://www.ctan.org/pkg/#5>}}%
}%
\IfValueT{#6}{\addto@hook\tud@toks@{'#6'}}%
\fi%
@@ -596,10 +756,10 @@
\IfValueT{#5}{\def\@tempa{\href{#5}{\@tempc}}}%
\let\@tempb\relax%
\IfValueT{#6}{%
- \ifstr{#6}{none}{\let\@tempa\@tempc}{%
- \ifstr{#6}{manual}{\def\@tempa{\tudhyperref{#1}{\@tempc}}}{%
+ \tud@if@strequal{#6}{none}{\let\@tempa\@tempc}{%
+ \tud@if@strequal{#6}{manual}{\def\@tempa{\tudhyperref{#1}{\@tempc}}}{%
\def\@tempb{%
- \PackageWarning{tudscrtutorial}%
+ \PackageWarning{tudscrmanual}%
{%
You've used the unknown cross-reference\MessageBreak%
shorthand '#6'. Only 'none' and 'manual'\MessageBreak%
@@ -625,7 +785,7 @@
}%
\IfValueT{#3}{\appto\@tempa{=#3}}%
\IfValueT{#4}{\appto\@tempa{#4}}%
- \eaddto@hook\tud@toks@{\expandafter{\@tempa}}%
+ \addto@hook@expandafter\tud@toks@{\expandafter{\@tempa}}%
\the\tud@toks@%
}
\newcommand*\Markup@Inline[1]{\mbox{\Markup@Format{#1}}}
@@ -633,11 +793,7 @@
\undef\Markup@Format
\newcommand*\Markup@Suffix{}
\NewDocumentCommand\Markup@SetFormat{omod()}{%
- \def\Markup@Format##1{%
- \def\tud@res@a{#2}%
- \tud@ifdin{\let\tud@res@a\tud@sec@format}{}%
- \begingroup\tud@res@a{\IfValueT{#1}{#1}##1}\endgroup%
- }%
+ \def\Markup@Format##1{\begingroup#2{\IfValueT{#1}{#1}##1}\endgroup}%
\IfValueT{#3}{\def\Markup@Suffix{\suffix{#3}}}%
}
\newcommand*\Markup@ClearFormat{%
@@ -648,34 +804,13 @@
\Markup@ClearFormat
\newcommand*\Markup@CheckFormat{%
\ifundef\Markup@Format{%
- \PackageError{tudscrtutorial}%
+ \PackageError{tudscrmanual}%
{\string\Markup@SetFormat\space unused}%
{It seems you have forgotten to use \string\Markup@SetFormat.}%
}{}%
}
-\ifundef{\tud@x@textcase@uclcnotmath}{}{%
- \NewDocumentCommand\tud@nonchangecase{m}{%
- \DeclareExpandableDocumentCommand#1{sm}{%
- \IfBooleanT{##1}{\noexpand\@tud@indextrue}%
- \NoCaseChange{#1{##2}}%
- }%
- }
- \apptocmd{\tud@x@textcase@uclcnotmath}{%
- \tud@nonchangecase\Application%
- \tud@nonchangecase\Distribution%
- \tud@nonchangecase\Engine%
- \tud@nonchangecase\File%
- \tud@nonchangecase\Class%
- \tud@nonchangecase\Package%
- \tud@nonchangecase\Option%
- \tud@nonchangecase\Environment%
- \tud@nonchangecase\Macro%
- \tud@nonchangecase\Length%
- \tud@nonchangecase\Counter%
- }{}{\tud@patch@wrn{tud@x@textcase@uclcnotmath}}
-}
\PassOptionsToPackage{xindy,splitindex}{imakeidx}
-\RequirePackage{imakeidx}[2013/07/11]
+\RequirePackage{imakeidx}
\indexsetup{%
level=\subsection*,%
noclearpage,firstpagestyle=headings,headers={\indexname}{\indexname},%
@@ -704,12 +839,12 @@
\let\item\@idxitem
\imki@othercode%
}%
- \patchcmd{\theindex}{%
+ \patchcmd\theindex{%
\imki@indexlevel{\indexname}\imki@indexheaders%
}{%
\imki@indexheaders%
}{}{\tud@patch@wrn{theindex}}%
- \patchcmd{\theindex}{%
+ \patchcmd\theindex{%
\ifnum\imki@columns>\@ne
\columnsep \imki@columnsep
\ifx\imki@idxprologue\relax
@@ -736,16 +871,21 @@
\fi%
}{}{\tud@patch@wrn{theindex}}%
\fi%
+\newcommand*\tud@xdy@settings{}
+\edef\tud@xdy@settings{-M \@currname-ind.xdy -L german-din}
\NewDocumentCommand\makexdyindex{s o m !o}{%
\let\@tempb\@empty%
+ \ifundef{\inputencodingname}{}{%
+ \eappto\tud@xdy@settings{\space-C\space\inputencodingname}%
+ }%
\protected@edef\@tempa{%
title={#3},%
columnsep=\noexpand\f@size\noexpand\p@,%
\IfValueTF{#4}{%
name={#4},%
- options={-M \@currname-ind.xdy -L german-din -t \jobname-#4.xlg \@tempb},%
+ options={\tud@xdy@settings\space-t \jobname-#4.xlg \@tempb},%
}{%
- options={-M \@currname-ind.xdy -L german-din -t \jobname.xlg},%
+ options={\tud@xdy@settings\space-t \jobname.xlg},%
}%
\IfValueT{#2}{#2}%
}%
@@ -757,7 +897,7 @@
\makexdyindex{L\"angen und Z\"ahler}[misc]
\makexdyindex*{Klassen, Pakete und Dateien}[files]
\undef\makexdyindex
-\newif\if@tud@index
+\tud@newif\if@tud@index
\addtoeachtocfile{\protect\@tud@indextrue}
\newcommand*\tud@idx@key{}
\newcommand*\tud@idx@fmt{}
@@ -773,8 +913,8 @@
}%
\tud@reserved%
\def#3{#5}%
- \tud@replace#2{@}{"@}%
- \tud@replace#3{@}{"@}%
+ \tud@replace@@in#2{@}{"@}%
+ \tud@replace@@in#3{@}{"@}%
\let\tud@idx@bdl\tud@bdl@dflt%
\IfValueTF{#8}{%
\def\tud@idx@bdl{#8}%
@@ -807,8 +947,10 @@
\fi%
\@tempswafalse%
\IfBooleanT{#1}{\@tempswatrue}%
- \IfValueT{#9}{\ifstr{#9}{declare}{\@tempswatrue}{}}%
- \IfValueT{#9}{\ifstr{#9}{default}{\@tempswatrue}{}}%
+ \IfValueT{#9}{%
+ \tud@if@strequal{#9}{declare}{\@tempswatrue}{}%
+ \tud@if@strequal{#9}{default}{\@tempswatrue}{}%
+ }%
\if@tempswa%
\protected@eappto#2{\expandonce\@tempa}%
\tud@doifPValue{#6}{\noexpand\appto\noexpand#2{=#6}}%
@@ -839,20 +981,41 @@
}
\newrobustcmd*\cleversee{\tud@cleversee{\seename}}
\newrobustcmd*\cleverseealso{%
- \PackageWarning{tudscrtutorial}%
+ \PackageWarning{tudscrmanual}%
{You should use `|see' instead of `|seealso'}%
\tud@cleversee{\alsoname}%
}
\newcommand*\tud@cleversee{}
-\def\tud@cleversee#1#2#3\relax{%
- \IfArgIsEmpty{#3}{%
- \emph{#1}\space#2%
- }{%
- \begingroup%
- \def\@tempa, ##1\@nil{##1,\space\emph{\alsoname}\space#2}%
- \@tempa#3\@nil%
- \endgroup%
- }%
+\def\tud@cleversee#1#2\relax{%
+ \begingroup%
+ \let\cleversee\@empty%
+ \let\cleverseealso\@empty%
+ \let\tud@res@a\@empty%
+ \def\tud@res@b{#2}%
+ \def\tud@res@c##1\\##2\@nil{%
+ \appto\tud@res@a{##1}%
+ \def\tud@res@b{##2}%
+ \trim@spaces@in\tud@res@b%
+ \in@{\\}{##2}%
+ }%
+ \in@true%
+ \@whilesw\ifin@\fi{%
+ \expandafter\tud@res@c\tud@res@b\@nil%
+ }%
+ \ifx\tud@res@b\@empty%
+ \mbox{\emph{#1}}%
+ \else%
+ \def\tud@res@c##1 ##2\@nil{%
+ ##2##1\space\mbox{\emph{\alsoname}}%
+ }%
+ \expandafter\tud@res@c\tud@res@b\@nil%
+ \fi%
+ \space\tud@res@a%
+ \endgroup%
+}
+\newrobustcmd*\seesep{\txb}%
+\NewDocumentCommand\seeref{s m}{%
+ \emph{\IfBooleanTF{#1}{\alsoname}{\seename}}\space#2%
}
\NewDocumentCommand\Process@Index{mmd==od()d||}{%
\ifboolexpr{%
@@ -860,7 +1023,7 @@
}{}{%
\IfBooleanTF{#1}{%
\IfValueT{#6}{%
- \PackageWarning{tudscrtutorial}%
+ \PackageWarning{tudscrmanual}%
{%
You've used the starred version. No index entry\MessageBreak%
for #2 is created. The\MessageBreak%
@@ -908,18 +1071,15 @@
\pagebreak[3]%
\@tud@indextrue%
\indexprologue[\tud@idx@skip]{}%
- \ifblank{#1}{\printindex}{\printindex[#1]}%
+ \tud@if@strblank{#1}{\printindex}{\printindex[{#1}]}%
\ifnum\imki@columns>\@ne\relax\vspace{-\multicolsep}\fi%
}
-\newcommand*\tud@write@a{}
-\newwrite\tud@write@a
-\newcommand*\tud@write@b{}
-\newwrite\tud@write@b
-\newcommand*\tud@read{}
-\newread\tud@read
-\RequirePackage{listings}[2014/03/04]
+\tud@newwrite\tud@write@a
+\tud@newwrite\tud@write@b
+\tud@newread\tud@read
+\RequirePackage{listings}
\lstdefinestyle{tudscr}{%
- basicstyle=\ttfamily\ifdef{\setstretch}{\setstretch{1}}{},%
+ basicstyle=\ttfamily\ifundef{\setstretch}{}{\setstretch{1}},%
keywordstyle=,%
columns=fullflexible,keepspaces,%
aboveskip=\smallskipamount,%
@@ -927,10 +1087,10 @@
language=[LaTeX]TeX,%
texcl,%
}
-\RequirePackage{filemod}[2011/09/19]
-\RequirePackage{ifplatform}[2010/10/22]
+\RequirePackage{filemod}
+\RequirePackage{ifplatform}
\newcommand*\tud@shellescape@wrn[1]{%
- \PackageWarning{tudscrtutorial}%
+ \PackageWarning{tudscrmanual}%
{%
File `#1' is missing!\MessageBreak%
You have to recompile this document with\MessageBreak%
@@ -969,17 +1129,17 @@
\endgroup%
}
\newcommand*\tud@tut@append[1]{%
- \ifstr{#1}{preamble}{%
+ \tud@if@strequal{#1}{preamble}{%
\tud@tut@readtostream{\tud@tut@temp.tex}{\tud@write@a}%
}{%
- \ifstr{#1}{trunk}{%
+ \tud@if@strequal{#1}{trunk}{%
\tud@tut@readtostream{\tud@tut@temp.tex}{\tud@write@b}%
}{%
\tud@tut@readtostream{\tud@tut@temp.tex}{#1}%
}%
}%
}
-\TUDoptions{headingsvskip=-10ex}
+\TUDoptions{headingsvskip=-6ex}
\newcommand\StartTutorial[1][]{%
\immediate\openout\tud@write@a=\tud@tut@temp-preamble.tex\relax%
\immediate\openout\tud@write@b=\tud@tut@temp-trunk.tex\relax%
@@ -987,7 +1147,7 @@
\Hy@raisedlink{\hyperdef{\jobname}{tutorials:\jobname}{}}%
\faculty{}%
\maketitle%
- \ifblank{#1}{}{%
+ \IfArgIsEmpty{#1}{}{%
\noindent%
\begin{abstract}%
\noindent#1%
@@ -1179,11 +1339,11 @@
\endgroup%
}%
\@tempa{\Code@Preamble}{}%
- \setlength\@tempdimc{\leftskip}%
- \setlength\leftskip{\leftmargin}%
+ \tud@setdim\@tempdimc{\leftskip}%
+ \tud@setdim\leftskip{\leftmargin}%
\@tempa{\input{\tud@tut@temp.tex}}{\Code@Hook}%
\global\let\Code@Hook\relax%
- \setlength\leftskip{\@tempdimc}%
+ \tud@setdim\leftskip{\@tempdimc}%
\noindent\ignorespaces%
}
\newcommand*\InputCode{\input{\tud@tut@temp.tex}}
@@ -1218,7 +1378,7 @@
\ifx\@tempa\@tempb\relax%
\let\@tempb\@empty%
\else%
- \edef\@tempb{\etex@unexpanded{\def\StandaloneDate}{\@date}}%
+ \edef\@tempb{\unexpanded{\def\StandaloneDate}{\@date}}%
\fi%
\edef\@tempa{%
\tud@latex@ext -jobname=\tud@tut@temp\space%
@@ -1245,11 +1405,11 @@
\@tempcnta\z@%
\@for\@tempa:=#3\do{\advance\@tempcnta\@ne}%
\ifnum\@tempcnta>\z@\relax%
- \setlength\@tempdima{\textwidth}%
+ \tud@setdim\@tempdima{\textwidth}%
\divide\@tempdima\@tempcnta%
\advance\@tempcnta\m@ne%
\multiply\@tempcnta 2%
- \addtolength\@tempdima{-\@tempcnta\tabcolsep}%
+ \tud@addtodim\@tempdima{-\@tempcnta\tabcolsep}%
\@for\@tempa:=#3\do{%
\advance\@tempcnta\m@ne%
\edef\@tempb{%
@@ -1276,7 +1436,7 @@
\else%
\PassOptionsToPackage{off}{auto-pst-pdf}%
\fi%
- \RequirePackage{auto-pst-pdf}[2009/04/26]%
+ \RequirePackage{auto-pst-pdf}
\ifnum\pdf@shellescape=\@ne\relax%
\edef\@tempa{\app@exe{\app@rm "*\app@suffix*"}}%
\@tempa%
@@ -1288,16 +1448,16 @@
}{%
\PassOptionsToPackage{colorinlistoftodos,color=HKS92!10}{todonotes}%
}
-\RequirePackage{todonotes}[2012/07/25]
+\RequirePackage{todonotes}
\AtEndPreamble{%
\ifdim\marginparwidth<2cm\relax%
- \setlength\marginparwidth{2cm}%
+ \tud@setdim\marginparwidth{2cm}%
\fi%
}
\AfterPackage*{todonotes}{%
\newcommand*\tud@todo@type@use{}%
\NewDocumentCommand\ToDo{s o m !o}{%
- \ifbool{@tud@todo}{%
+ \if@tud@todo%
\global\let\tud@currentHref\@currentHref%
\begingroup%
\let\tud@todo@type@use\@empty%
@@ -1346,7 +1506,7 @@
\tud@v@get\tud@res@a{#4}%
\def\tud@res@c##1.##2##3##4\@nil{##1##2##3}%
\edef\tud@res@b{\expandafter\tud@res@c\tud@res@a.000\@nil}%
- \ifnumber{\tud@res@b}{%
+ \Ifnumber{\tud@res@b}{%
\edef\tud@res@c{%
\expandafter\tud@res@c\TUDScriptVersionNumber.000\@nil%
}%
@@ -1382,11 +1542,11 @@
\expandafter\todo\expandafter[\the\toks@]{\trim@spaces{#3}\strut}%
}\usebox\z@%
\renewcommand*\marginpar[2][]{%
- \marginnote[##1]{##2}[\dimexpr-\ht\z@+1.6ex+1.75pt\relax]%
+ \marginnote[{##1}]{##2}[\dimexpr-\ht\z@+1.6ex+1.75pt\relax]%
}%
\toks@\expandafter{\tud@res@a noline,nolist}%
\settowidth\marginparwidth{\tud@res@c}%
- \addtolength\marginparwidth{\dimexpr1.6ex+1pt\relax}%
+ \tud@addtodim\marginparwidth{1.6ex+1pt}%
\expandafter\todo\expandafter[\the\toks@]{\tud@res@c\strut}%
\aftergroup\par\aftergroup\noindent%
\listremove{\tud@todo@type@use}{rls}%
@@ -1395,9 +1555,7 @@
\ifx\tud@todo@type@use\@empty\else%
\begingroup%
\let\tud@res@c\@empty%
- \renewcommand*{\do}[1]{%
- \appto\tud@res@c{,##1}%
- }%
+ \def\do##1{\appto\tud@res@c{,##1}}%
\dolistloop{\tud@todo@type@use}%
\edef\tud@res@c{%
\endgroup%
@@ -1411,7 +1569,7 @@
\fi%
\endgroup%
\global\let\@currentHref\tud@currentHref%
- }{}%
+ \fi%
\ignorespaces%
}%
\newcommand*\ListOfToDo{\if@tud@todo\clearpage\listoftodos\fi}%
@@ -1420,63 +1578,16 @@
\NewDocumentCommand\ToDo{s o m !o}{}%
\newcommand*\ListOfToDo{}%
}
-\RequirePackage{csquotes}[2011/10/22]
-\RequirePackage{textcomp}[2005/09/27]
-\RequirePackage{setspace}[2011/12/19]
+\RequirePackage{textcomp}
+\RequirePackage{setspace}
\setstretch{1.1}
\PassOptionsToPackage{vskip=\smallskipamount}{quoting}
-\RequirePackage{quoting}[2014/01/28]
-\RequirePackage{isodate}[2010/01/03]
-\RequirePackage{hologo}[2012/04/26]
-\newcommand*\tud@replace[3]{%
- \begingroup%
- \toks@{\def\@tempa##1}%
- \eaddto@hook\toks@{\detokenize{#2}}%
- \addto@hook\toks@{##2\@nil{\@tempb{##1}{##2}}}%
- \the\toks@%
- \def\@tempb##1##2{%
- \IfArgIsEmpty{##2}{%
- \appto#1{##1}%
- \let\@tempc\relax%
- }{%
- \appto#1{##1#3}%
- \def\@tempc{\@tempa##2\@nil}%
- }%
- \@tempc%
- }%
- \toks@{\@tempa}%
- \edef\@tempc{\expandafter\detokenize\expandafter{#1}}%
- \eaddto@hook\toks@{\@tempc}%
- \eaddto@hook\toks@{\detokenize{#2}\@nil}%
- \def#1{}%
- \the\toks@%
- \edef\tud@reserved{%
- \noexpand\endgroup%
- \def\noexpand#1{#1}%
- }%
- \tud@reserved%
-}
-\newcommand*\Attention[2][\z@]{%
- \marginnote{%
- \setlength\fboxsep{0.25em}%
- \fbox{Achtung!}%
- }[#1]%
- \emph{\trim@spaces{#2}}%
-}
-\NewDocumentCommand\Forum{!s !t'}{%
- \IfBooleanTF{#1}{\toks@{\href}}{\toks@{\hrfn}}%
- \IfBooleanT{#2}{\toks@{\url}}%
- \addto@hook\toks@{{http://latex.wcms-file3.tu-dresden.de/phpBB3/}}%
- \IfBooleanF{#2}{\addto@hook\toks@{{TUD-\LaTeX-Forum}}}%
- \the\toks@\xspace%
-}
-\NewDocumentCommand\CTAN{!s !o !g}{%
- \IfBooleanTF{#1}{\toks@{\href}}{\toks@{\hrfn}}%
- \addto@hook\toks@{{http://www.ctan.org/\IfValueT{#2}{#2}}}%
- \addto@hook\toks@{%
- {\tud@english{Comprehensive TeX Archive Network (CTAN\IfValueT{#3}{~#3})}}%
- }%
- \the\toks@\xspace%
+\RequirePackage{quoting}
+\RequirePackage{isodate}
+\RequirePackage{hologo}
+\newcommand*\notudscrartcl{%
+ F\"ur die Klassen \Class{tudscrartcl} sowie \Class{tudscrposter} ist diese
+ Option nicht verf\"ugbar.%
}
\NewDocumentCommand\scrguide{!s !O{\KOMAScript-Handbuch}}{%
\IfBooleanTF{#1}{\toks@{\href}}{\toks@{\hrfn}}%
@@ -1486,117 +1597,93 @@
\addto@hook\toks@{{#2}}%
\the\toks@\xspace%
}
-\newcommand*\CD{\tud@english{Corporate Design}\xspace}
-\newcommand*\CDs{\tud@english{Corporate Designs}\xspace}
-\newcommand*\TUD{Technische Universit\"at Dresden\xspace}
-\newcommand*\TnUD{Technischen Universit\"at Dresden\xspace}
-\newcommand*\TUDCD{\CD der \TnUD}
-\newcommand*\TUDCDs{\CDs der \TnUD}
-\newrobustcmd*\DDC{%
- \mbox{%
- D\kern.05em R\kern.05em E\kern.05em S\kern.05em %
- D\kern.05em E\kern.05em N\kern.1em-\kern.1em concept%
- }\xspace%
-}
-\AfterPackage*{hyperref}{%
- \pdfstringdefDisableCommands{%
- \def\DDC{DRESDEN-concept}%
- \def\TUDScript{TUD-Script}%
- \def\KOMAScript{KOMA-Script}%
- }%
-}
-\DeclareTextFontCommand\tud@cdfont@texteb{%
- \fontfamily{\tud@cdfont@fam}\fontseries{\tud@cdfont@ebf}\selectfont%
-}
-\newrobustcmd*\OpenSans{%
- \texorpdfstring{\tud@cdfont@texteb{Open~Sans}}{Open Sans}\xspace%
+%%%% From File: tudscr-texindy.dtx (no git version info was found)
+\edef\tud@res@a{\catcode`\noexpand\#=\the\catcode`\#\relax}%
+\@makeother\#
+\newcommand*\@hashchar{#}
+\tud@res@a
+\tud@newwrite\tud@xdy@write
+\NewDocumentCommand\tud@xdy@create{s}{%
+ \begingroup%
+ \edef\tud@res@a{\@currname-\IfBooleanTF{#1}{gls}{ind}.xdy}%
+ \expandafter\IfFileExists\expandafter{\tud@res@a}{}{%
+ \IfBooleanTF{#1}{\@tud@res@swatrue}{\@tud@res@swafalse}%
+ \edef\tud@res@b{the\if@tud@res@swa glossary\else index\fi}%
+ \edef\tud@res@a{\noexpand\tud@xdy@@create{\tud@res@b}{\tud@res@a}}%
+ \tud@res@a%
+ }%
+ \endgroup%
}
-\newrobustcmd*\Univers{\texorpdfstring{\textcdbi{Univers}}{Univers}\xspace}
-\newrobustcmd*\DIN{\texorpdfstring{\textcdxi{DIN~Bold}}{DIN Bold}\xspace}
-\renewcommand*\@pnumwidth{2.1em}%
-\renewcommand*\@tocrmarg{3.1em}%
-\newcommand*\textsbn{}
-\newrobustcmd*\sbnfont{\sffamily\bfseries\upshape}
-\DeclareTextFontCommand\textsbn{\sbnfont}
-\newcommand*\textsbs{}
-\newrobustcmd*\sbsfont{\sffamily\bfseries\slshape}
-\DeclareTextFontCommand\textsbs{\sbsfont}
-%%% From File: tudscr-texindy.dtx
-\begingroup
-\newcommand*\tud@write@xdy{}
-\newwrite\tud@write@xdy
-\newif\if@tud@xdy@glo
-\newcommand*\tud@xdy@create[2][theindex]{%
- \IfFileExists{\@currname-#2.xdy}{}{%
- \ifstr{#1}{theglossary}{\@tud@xdy@glotrue}{\@tud@xdy@glofalse}%
- \openout\tud@write@xdy=\@currname-#2.xdy\relax%
- \write\tud@write@xdy{(require "texindy.xdy")}%
- \write\tud@write@xdy{%
- (define-location-class^^J%
- \space\space"arabic-page-numbers" ("arabic-numbers")%
- \space:min-range-length 1^^J%
+\newcommand*\tud@xdy@@create[2]{%
+ \immediate\openout\tud@xdy@write=#2\relax%
+ \immediate\write\tud@xdy@write{(require "texindy.xdy")}%
+ \immediate\write\tud@xdy@write{%
+ (markup-index^^J%
+ \@spaces:open^^J%
+ "\string\begin{#1}^^J%
+ \space\space\string\providecommand*\string\seesep{/}\@percentchar^^J%
+ "^^J% Ende des Umgebungsbeginns
+ \@spaces:close "\string~n\string~n\string\end{#1}\string~n"^^J%
+ \@spaces:hierdepth 3^^J%
)^^J%
- (markup-range :sep "--")%
- }%
- \write\tud@write@xdy{%
- (merge-rule "\@backslashchar[(.*)\@backslashchar]" "" :eregexp)%
- }%
- \write\tud@write@xdy{%
- (markup-locclass-list%
- \space:open "\string\,\string\dotfill\string\,"%
- \space:close "\string\relax"%
- \space:sep ",\space"%
- )%
- }%
- \write\tud@write@xdy{%
- (define-attributes (("declare" "!" "important" "?" "default")))^^J%
- (markup-locref%
- \space:attr "declare"\space\space%
- \space:open "\string\textbf{\string\hyperpage{"%
- \space:close "}}"%
+ (define-location-class "arabic-page-numbers"^^J%
+ \@spaces("arabic-numbers")^^J%
+ \@spaces:min-range-length 2^^J%
)^^J%
- (markup-locref%
- \space:attr "!"\@spaces\@spaces%
- \space:open "\string\textbf{\string\hyperpage{"%
- \space:close "}}"%
+ (markup-range :sep "--")^^J%
+ (merge-rule :eregexp^^J%
+ \@spaces"\string\[(.*)\string\]"^^J%
+ \@spaces""^^J%
)^^J%
- (markup-locref%
- \space:attr "important"%
- \space:open "\string\textsl{\string\hyperpage{"%
- \space:close "}}"%
+ (markup-indexentry :depth 3^^J%
+ \@spaces:open\space\space"\string~n\string\subsubsubitem\space"^^J%
)^^J%
- (markup-locref%
- \space:attr "?"\@spaces\@spaces%
- \space:open "\string\textsl{\string\hyperpage{"%
- \space:close "}}"%
+ (markup-locclass-list^^J%
+ \@spaces:open\space\space"\string\,\string\dotfill\string\,"^^J%
+ \@spaces:close "\string\relax"^^J%
+ \@spaces:sep\space\space\space",\space"^^J%
+ )^^J%
+ (define-attributes (("!" "default") ("?" "default") ("default")))^^J%
+ (markup-attribute-group-list :sep ", ")^^J%
+ (markup-locref :attr "!"^^J%
+ \@spaces:open\space\space"\string\textbf{\string\hyperpage{"^^J%
+ \@spaces:close "}}"^^J%
+ )^^J%
+ (markup-locref :attr "?"^^J%
+ \@spaces:open\space\space"\string\textit{\string\hyperpage{"^^J%
+ \@spaces:close "}}"^^J%
+ )^^J%
+ (markup-locref :attr "default"^^J%
+ \@spaces:open\space\space"\string\hyperpage{"^^J%
+ \@spaces:close "}" ^^J%
)^^J%
- (markup-locref%
- \space:attr "default"\space\space%
- \space:open "\string\hyperpage{"\@spaces\@spaces%
- \space:close "}"%
- )%
- }%
- \write\tud@write@xdy{%
(markup-crossref-list :class "see"^^J%
- \space\space:open "\string\cleversee{" \@spaces:sep "; " :close "}"^^J%
+ \@spaces:open\space\space"\string\cleversee\space"^^J%
+ \@spaces:sep\space\space\space"; "^^J%
+ \@spaces:close "\@backslashchar\@backslashchar"^^J%
)^^J%
(markup-crossref-list :class "seealso"^^J%
- \space\space:open "\string\cleverseealso{" :sep "; " :close "}"^^J%
- )%
- }%
- \write\tud@write@xdy{%
+ \@spaces:open\space\space"\string\cleverseealso\space"^^J%
+ \@spaces:sep\space\space\space"; "^^J%
+ \@spaces:close "\@backslashchar\@backslashchar"^^J%
+ )^^J%
(markup-crossref-layer-list :class "see"%
- \@spaces\space:sep "\string\,\string\textbar\string\,"%
+ \@spaces\space:sep "\string\seesep{}"%
)^^J%
(markup-crossref-layer-list :class "seealso"%
- \space:sep "\string\,\string\textbar\string\,"%
- )%
- }%
- \closeout\tud@write@xdy%
+ \space:sep "\string\seesep{}"%
+ )^^J%
+ (define-location-class-order^^J%
+ \@spaces(^^J%
+ \@spaces"see" "seealso"^^J%
+ \@spaces"roman-page-numbers" "arabic-page-numbers" "alpha-page-numbers"^^J%
+ \@spaces"Roman-page-numbers" "Alpha-page-numbers"^^J%
+ \@spaces)^^J%
+ )^^J%
}%
+ \immediate\closeout\tud@xdy@write%
}
-\tud@xdy@create{ind}
-\endgroup
+\tud@xdy@create
\endinput
%%
-%% End of file `tudscrtutorial.sty'.
+%% End of file `tudscrmanual.sty'.
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'.
diff --git a/Master/texmf-dist/tex/latex/tudscr/tudscrreprt.cls b/Master/texmf-dist/tex/latex/tudscr/tudscrreprt.cls
index c89aa909f66..ce7e4457c86 100644
--- a/Master/texmf-dist/tex/latex/tudscr/tudscrreprt.cls
+++ b/Master/texmf-dist/tex/latex/tudscr/tudscrreprt.cls
@@ -4,7 +4,7 @@
%%
%% The original source files were:
%%
-%% tudscr-version.dtx (with options: `class,report')
+%% tudscr-version.dtx (with options: `class,report,identify')
%% tudscr-base.dtx (with options: `class,report,load')
%% tudscr-base.dtx (with options: `class,report,option')
%% tudscr-fonts.dtx (with options: `class,report,option')
@@ -25,14 +25,15 @@
%% tudscr-layout.dtx (with options: `class,report,body')
%% tudscr-title.dtx (with options: `class,report,body')
%% tudscr-frontmatter.dtx (with options: `class,report,body')
-%% tudscr-comp.dtx (with options: `class,report,body')
%% tudscr-misc.dtx (with options: `class,report,body')
+%% tudscr-comp.dtx (with options: `class,report,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{tudscrreprt}{scrreprt}{document 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,%
@@ -795,13 +819,13 @@
\TUD@key@preset{cdchapter}{#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@cover@num{0}
@@ -844,15 +868,15 @@
\TUD@SpecialOptionAtDocument{tud@cd@process}%
\fi%
}
-\newif\if@tud@parttitle
+\tud@newif\if@tud@parttitle
\TUD@key{parttitle}[true]{%
\TUD@set@ifkey{parttitle}{@tud@parttitle}{#1}%
}
-\newif\if@tud@chapterpage
+\tud@newif\if@tud@chapterpage
\TUD@key{chapterpage}[true]{%
\TUD@set@ifkey{chapterpage}{@tud@chapterpage}{#1}%
}
-\newif\if@tud@clearcolor
+\tud@newif\if@tud@clearcolor
\newcommand*\tud@cleardoublepage{\cleardoubleoddpage}
\TUD@key{cleardoublespecialpage}[true]{%
\TUD@set@numkey{cleardoublespecialpage}{@tempa}{%
@@ -877,7 +901,7 @@
\renewcommand*\tud@cleardoublepage{\cleardoubleoddstandardpage}%
\fi%
\else%
- \AfterPreamble{%
+ \AfterEndPreamble{%
\ifcsundef{ps@#1}{%
\ClassError{\TUD@Class@Name}{`#1' is no valid pagestyle}{%
You tried to use `#1' as a pagestyle for option\MessageBreak%
@@ -891,19 +915,28 @@
\fi%
}
\newcommand*\tud@pagecolor{}%
-\newcommand*\tud@dim@pageheadingsvskip{0pt}
-\TUD@key{pageheadingsvskip}{%
- \TUD@set@dimenkey{pageheadingsvskip}{\tud@dim@pageheadingsvskip}{#1}%
+\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%
+ }%
}
-\newcommand*\tud@dim@headingsvskip{0pt}
+\newcommand*\tud@headingsvskip@dim{0pt}
\TUD@key{headingsvskip}{%
- \TUD@set@dimenkey{headingsvskip}{\tud@dim@headingsvskip}{#1}%
+ \TUD@set@dimkey{headingsvskip}{\tud@headingsvskip@dim}{#1}%
+}
+\newcommand*\tud@pageheadingsvskip@dim{\tud@headingsvskip@dim}
+\TUD@key{pageheadingsvskip}{%
+ \TUD@set@dimkey{pageheadingsvskip}{\tud@pageheadingsvskip@dim}{#1}%
}
-\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}%
@@ -918,27 +951,27 @@
}
\DefineFamilyMember{KOMA}
\DefineFamilyKey{KOMA}{headings}{%
+ \FamilyKeyStateUnknownValue%
\TUD@SpecialOptionAtDocument{tud@x@scr@headings@reset}%
- \FamilyKeyStateProcessed%
}
\DefineFamilyKey{KOMA}{open}{%
+ \FamilyKeyStateUnknownValue%
\TUD@SpecialOptionAtDocument{tud@x@scr@headings@reset}%
- \FamilyKeyStateProcessed%
}
\DefineFamilyKey{KOMA}{chapterprefix}{%
+ \FamilyKeyStateUnknownValue%
\TUD@SpecialOptionAtDocument{tud@x@scr@headings@reset}%
- \FamilyKeyStateProcessed%
}
-%%% From File: tudscr-title.dtx
-\newif\if@tud@subjectthesis
+%%%% From File: tudscr-title.dtx (no git version info was found)
+\tud@newif\if@tud@subjectthesis
\TUD@key{subjectthesis}[true]{%
\TUD@set@ifkey{subjectthesis}{@tud@subjectthesis}{#1}%
}
-\newif\if@tud@titlesignature
+\tud@newif\if@tud@titlesignature
\TUD@key{titlesignature}[true]{%
\TUD@set@ifkey{titlesignature}{@tud@titlesignature}{#1}%
}
-%%% 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},%
{chapter}{3},{chap}{3},{addchap}{3},%
@@ -958,11 +991,11 @@
}
\newcommand*\tud@abstract@level@num{0}
\tud@locked@newnum{tud@abstract@toc@num}{0}
-\newif\if@tud@abstract@multi
+\tud@newif\if@tud@abstract@multi
\@tud@abstract@multitrue
-\newif\if@tud@abstract@fil
+\tud@newif\if@tud@abstract@fil
\@tud@abstract@filtrue
-\newif\if@tud@abstract@markboth
+\tud@newif\if@tud@abstract@markboth
\TUD@key{abstract}[true]{%
\edef\@tempb{\TUD@bool@numkey,\tud@fm@switch}%
\TUD@set@numkey{abstract}{@tempa}{\@tempb}{#1}%
@@ -1021,15 +1054,16 @@
}
\DefineFamilyMember{KOMA}
\DefineFamilyKey{KOMA}{abstract}[true]{%
+ \FamilyKeyStateUnknownValue%
\AtEndOfFamilyOptions{\TUDoptions{abstract=#1}}%
}
\newcommand*\tud@declaration@level@num{1}
\tud@locked@newnum{tud@declaration@toc@num}{0}
-\newif\if@tud@declaration@multi
+\tud@newif\if@tud@declaration@multi
\@tud@declaration@multitrue
-\newif\if@tud@declaration@fil
+\tud@newif\if@tud@declaration@fil
\@tud@declaration@filtrue
-\newif\if@tud@declaration@markboth
+\tud@newif\if@tud@declaration@markboth
\TUD@key{declaration}[true]{%
\edef\@tempb{\TUD@bool@numkey,\tud@fm@switch}%
\TUD@set@numkey{declaration}{@tempa}{\@tempb}{#1}%
@@ -1086,8 +1120,8 @@
\fi%
\fi%
}
-%%% 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}%
}
@@ -1097,7 +1131,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
@@ -1114,7 +1148,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}%
{%
@@ -1165,16 +1199,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}
@@ -1202,88 +1243,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}%
{%
@@ -1292,6 +1280,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%
}
@@ -1445,7 +1439,7 @@
\fi%
}
\TUD@key{clearcolour}[true]{\TUDoptions{clearcolor=#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%
@@ -1460,12 +1454,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}%
}{%
@@ -1480,34 +1474,36 @@
\TUD@key@preset{ttfont}{roboto}%
\TUD@key@preset{headings}{heavy}%
}
-\DeclareOption*{\tud@x@scr@checkoptions}
\TUDExecuteOptions{%
cd=true,tudbookmarks=true%
}
+\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%
@@ -1527,14 +1523,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}{%
@@ -1573,11 +1571,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}
@@ -1590,12 +1586,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}{%
@@ -1603,8 +1604,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}%
@@ -1621,6 +1622,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][-]{%
@@ -1655,7 +1667,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%
@@ -1672,7 +1684,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}%
@@ -1680,8 +1695,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}%
@@ -1695,7 +1714,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%
@@ -1713,7 +1732,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{%
@@ -1727,8 +1746,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 %
@@ -1745,40 +1764,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{%
@@ -1808,7 +1799,7 @@
}%
\edef\tud@res@a{%
\endgroup%
- \noexpand\DeclareRobustCommand%
+ \noexpand\renewrobustcmd*%
\expandafter\noexpand\csname #1family\endcsname{%
\expandafter\noexpand\csname tud@x@fontspec@fam@#2\endcsname%
}%
@@ -1816,8 +1807,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}%
@@ -1842,13 +1834,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%
@@ -1897,12 +1882,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%
@@ -1916,7 +1908,6 @@
\fi%
\tud@cdfont@@set%
\fi%
- \tud@cdfont@wrn%
}
\newcommand*\tud@cdfont@md{m}
\newcommand*\tud@cdfont@bf{b}
@@ -1984,7 +1975,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%
@@ -2005,35 +1996,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}%
- \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}%
+ \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@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{%
@@ -2074,28 +2087,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}
- \fi%
+ \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{}%
@@ -2118,7 +2136,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{%
@@ -2136,23 +2154,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{}%
@@ -2180,26 +2201,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{%
@@ -2218,7 +2219,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}%
@@ -2227,7 +2228,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%
@@ -2269,7 +2270,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]{%
@@ -2277,29 +2278,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}%
@@ -2308,20 +2309,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}%
@@ -2329,8 +2330,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{_}{}%
@@ -2339,9 +2339,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}%
@@ -2351,8 +2351,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{_}{}%
@@ -2395,12 +2394,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%
@@ -2485,24 +2484,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%
@@ -2517,8 +2516,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%
}
@@ -2602,7 +2611,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}}%
}{}%
@@ -2630,7 +2639,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{%
@@ -2643,7 +2652,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{%
@@ -2742,26 +2751,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%
@@ -2769,43 +2771,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}{}{%
@@ -2851,12 +2819,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%
@@ -2866,104 +2833,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}%
- \fi%
+ \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{%
@@ -2972,14 +2963,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{%
@@ -2992,18 +2983,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{}
@@ -3032,7 +3078,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%
@@ -3055,7 +3101,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}%
@@ -3158,7 +3204,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}%
@@ -3167,13 +3213,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%
@@ -3188,7 +3233,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}{}{%
@@ -3202,49 +3247,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@set{%
@@ -3264,14 +3267,14 @@
\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}%
\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}%
\fi%
\ifcase\tud@head@font@num\relax\else% true/heavy
\tud@head@cdfont@set%
@@ -3310,7 +3313,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}%
@@ -3336,20 +3442,26 @@
\newcommand*\@department{}
\newcommand*\@institute{}
\newcommand*\@chair{}
-\newcommand*\faculty[2][]{\tud@head@text@field{faculty}{#2}}
-\newcommand*\department[2][]{\tud@head@text@field{department}{#2}}
-\newcommand*\institute[2][]{\tud@head@text@field{institute}{#2}}
-\newcommand*\chair[2][]{\tud@head@text@field{chair}{#2}}
+\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}%
\global\@tud@head@text@settrue%
}
+\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%
@@ -3360,7 +3472,7 @@
}
\newcommand*\@@author{}
\renewcommand*\author[1]{%
- \gdef\@author{#1}%
+ \tud@trim@field\@author{#1}%
\begingroup%
\let\thanks\@gobble%
\let\footnote\@gobble%
@@ -3392,128 +3504,160 @@
\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*\@matriculationnumber{}
-\newrobustcmd*\matriculationnumber[1]{%
- \gdef\@matriculationnumber{#1}\ignorespaces%
-}
+\newrobustcmd*\matriculationnumber[1]{\tud@trim@field\@matriculationnumber{#1}}
\newcommand*\@matriculationyear{}
-\newrobustcmd*\matriculationyear[1]{\gdef\@matriculationyear{#1}\ignorespaces}
+\newrobustcmd*\matriculationyear[1]{\tud@trim@field\@matriculationyear{#1}}
\newcommand*\@placeofbirth{}
-\newrobustcmd*\placeofbirth[1]{\gdef\@placeofbirth{#1}\ignorespaces}
+\newrobustcmd*\placeofbirth[1]{\tud@trim@field\@placeofbirth{#1}}
\newcommand*\@thesis{}
\newcommand*\@@thesis{}
-\newcommand*\thesis[1]{\tud@thesis@do{thesis}{#1}}
-\renewcommand*\subject[1]{\tud@thesis@do{subject}{#1}}
-\newcommand*\tud@thanks{}
-\newcommand*\tud@thesis@do[2]{%
+\newcommand*\thesis[1]{\tud@thesis@evaluate{thesis}{#1}}
+\CheckCommand*\subject[1]{\gdef\@subject{#1}}
+\newcommand*\@@subject{}
+\renewcommand*\subject[1]{\tud@thesis@evaluate{subject}{#1}}
+\newcommand*\tud@thesis@evaluate[2]{%
\begingroup%
- \global\let\tud@thanks\relax%
- \def\thanks##1{\gdef\tud@thanks{##1}}%
+ \expandafter\tud@trim@field\csname @#1\endcsname{#2}%
+ \let\tud@res@c\@empty%
+ \def\thanks##1{\listgadd\tud@res@c{##1}}%
\let\footnote\thanks%
\sbox\z@{#2}%
\let\thanks\@gobble%
\let\footnote\@gobble%
- \tud@lowerstring{\@tempa}{#2}%
- \ifstr{#1}{thesis}{\protected@xdef\@@thesis{#2}}{}%
- \protected@edef\@tempa{%
+ \protected@csxdef{@@#1}{\trim@spaces{#2}}%
+ \letcs\tud@res@a{@@#1}%
+ \TUD@set@numkey{thesis}{@tempa}{%
+ {habil}{0},
+ {diss}{1},{doctoral}{1},{phd}{1},
+ {diploma}{2},
+ {master}{3},
+ {bachelor}{4},
+ {student}{5},
+ {evidence}{6},
+ {project}{7},
+ {seminar}{8},
+ {term}{9},
+ {research}{10},
+ {log}{11},
+ {report}{12},
+ {internship}{13}
+ }{\tud@res@a}%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed%
+ \ifcase\@tempa\relax% habil
+ \def\tud@res@a{\habilitationname}%
+ \or% diss
+ \def\tud@res@a{\dissertationname}%
+ \or% diploma
+ \def\tud@res@a{\diplomathesisname}%
+ \or% master
+ \def\tud@res@a{\masterthesisname}%
+ \or% bachelor
+ \def\tud@res@a{\bachelorthesisname}%
+ \or% student
+ \def\tud@res@a{\studentthesisname}%
+ \or% evidence
+ \def\tud@res@a{\studentresearchname}%
+ \or% project
+ \def\tud@res@a{\projectpapername}%
+ \or% seminar
+ \def\tud@res@a{\seminarpapername}%
+ \or% term
+ \def\tud@res@a{\termpapername}%
+ \or% research
+ \def\tud@res@a{\researchname}%
+ \or% log
+ \def\tud@res@a{\logname}%
+ \or% report
+ \def\tud@res@a{\reportname}%
+ \or% internship
+ \def\tud@res@a{\internshipname}%
+ \else%
+ \FamilyKeyStateUnknownValue%
+ \fi%
+ \fi%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed%
+ \global\cslet{@@#1}\tud@res@a%
+ \tud@if@strequal{#1}{subject}{%
+ \ifx\@@thesis\@empty\global\let\@@thesis\@@subject\fi%
+ }{}%
+ \def\do##1{\appto\tud@res@a{\thanks{##1}}}%
+ \dolistloop{\tud@res@c}%
+ \fi%
+ \edef\tud@res@a{%
\endgroup%
- \def\noexpand\@tempa{\@tempa}%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed%
+ \noexpand\csgdef{@#1}{\expandonce\tud@res@a}%
+ \fi%
}%
- \@tempa%
- \ifstr{\@tempa}{diss}{\tud@thesis@@do{#1}{\dissertationname}}{%
- \ifstr{\@tempa}{doctoral}{\tud@thesis@@do{#1}{\dissertationname}}{%
- \ifstr{\@tempa}{phd}{\tud@thesis@@do{#1}{\dissertationname}}{%
- \ifstr{\@tempa}{diploma}{\tud@thesis@@do{#1}{\diplomathesisname}}{%
- \ifstr{\@tempa}{master}{\tud@thesis@@do{#1}{\masterthesisname}}{%
- \ifstr{\@tempa}{bachelor}{\tud@thesis@@do{#1}{\bachelorthesisname}}{%
- \ifstr{\@tempa}{student}{\tud@thesis@@do{#1}{\studentthesisname}}{%
- \ifstr{\@tempa}{evidence}{\tud@thesis@@do{#1}{\studentresearchname}}{%
- \ifstr{\@tempa}{project}{\tud@thesis@@do{#1}{\projectpapername}}{%
- \ifstr{\@tempa}{seminar}{\tud@thesis@@do{#1}{\seminarpapername}}{%
- \ifstr{\@tempa}{term}{\tud@thesis@@do{#1}{\termpapername}}{%
- \ifstr{\@tempa}{research}{\tud@thesis@@do{#1}{\researchname}}{%
- \ifstr{\@tempa}{log}{\tud@thesis@@do{#1}{\logname}}{%
- \ifstr{\@tempa}{report}{\tud@thesis@@do{#1}{\reportname}}{%
- \ifstr{\@tempa}{internship}{\tud@thesis@@do{#1}{\internshipname}}{%
- \csdef{@#1}{#2}%
- }}}}}}}}}}}}}}}%
-}
-\newcommand*\tud@thesis@@do[2]{%
- \ifstr{#1}{subject}{%
- \ifx\@thesis\@empty\else%
- \ClassWarning{\TUD@Class@Name}{%
- Field `thesis' is overwritten by `subject'%
- }%
- \fi%
- \TUD@key@preset{subjectthesis}{true}%
- }{%
- \TUD@key@preset{subjectthesis}{false}%
- }%
- \ifx\tud@thanks\relax%
- \gdef\@thesis{#2}%
- \else%
- \protected@xdef\@thesis{\noexpand#2\noexpand\thanks{\tud@thanks}}%
- \fi%
- \protected@xdef\@@thesis{\trim@spaces{#2}}%
+ \tud@res@a%
}
\newcommand*\@graduation{}
\newcommand*\@graduationabbreviation{}
\newcommand*\graduation[2][]{%
- \gdef\@graduationabbreviation{}%
- \ifxblank{#1}{}{\gdef\@graduationabbreviation{(#1)}}%
- \gdef\@graduation{#2}%
+ \tud@trim@field\@graduationabbreviation{#1}%
+ \tud@trim@field\@graduation{#2}%
}
\newcommand*\@professor{}
-\newcommand*\professor[1]{\gdef\@professor{#1}}
+\newcommand*\professor[1]{\tud@trim@field\@professor{#1}}
\newcommand*\@supervisor{}
-\newcommand*\supervisor[1]{\gdef\@supervisor{#1}}
+\newcommand*\supervisor[1]{\tud@trim@field\@supervisor{#1}}
\newcommand*\@supporter{}
-\newcommand*\supporter[1]{\gdef\@supporter{#1}}
+\newcommand*\supporter[1]{\tud@trim@field\@supporter{#1}}
\newcommand*\@company{}
-\newcommand*\company[1]{\gdef\@company{#1}}
+\newcommand*\company[1]{\tud@trim@field\@company{#1}}
\newcommand*\@referee{}
-\newcommand*\referee[1]{\gdef\@referee{#1}}
+\newcommand*\referee[1]{\tud@trim@field\@referee{#1}}
\newcommand*\@advisor{}
-\newcommand*\advisor[1]{\gdef\@advisor{#1}}
-\newlength\tud@len@signatureskip
-\setlength\tud@len@signatureskip{8ex plus 6ex minus 6ex}
+\newcommand*\advisor[1]{\tud@trim@field\@advisor{#1}}
+\tud@newglue\tud@glue@signaturevskip
+\tud@setglue\tud@glue@signaturevskip{8ex plus 6ex minus 6ex}
\newcommand*\@confirmationclosing{%
\tud@date@check%
\ifx\@date\@empty\else%
\medskip\noindent%
\ifx\@place\@empty\else\@place,\nobreakspace\fi\@date%
\fi%
- \vskip\tud@len@signatureskip\noindent%
+ \vskip\tud@glue@signaturevskip\noindent%
\begingroup%
\let\and\hfil%
\@@author\hfil%
\endgroup%
}
-\newcommand*\confirmationclosing[1]{\gdef\@confirmationclosing{#1}}
+\newcommand*\confirmationclosing[1]{\tud@trim@field\@confirmationclosing{#1}}
\newcommand*\@place{Dresden}
-\newcommand*\place[1]{\gdef\@place{#1}}
+\newcommand*\place[1]{\tud@trim@field\@place{#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}}
\TUD@UnwindPackage{isodate}{%
\@ifpackageloaded{datetime2}{%
@@ -3526,9 +3670,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{%
@@ -3574,26 +3719,43 @@
}
\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*\@defensedate{}
\newcommand*\defensedate[1]{\tud@printdate{\@defensedate}{#1}}
\newcommand*\@dateofbirth{}
-\newrobustcmd*\dateofbirth[1]{%
- \tud@printdate{\@dateofbirth}{#1}\ignorespaces%
+\newrobustcmd*\dateofbirth[1]{\tud@printdate{\@dateofbirth}{#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{%
@@ -3603,20 +3765,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}%
@@ -3632,6 +3801,7 @@
\tud@cs@restore{@##1}%
\global\csletcs{@##1}{@##1}%
}{}%
+ \ifcsdef{##1}{\tud@cs@restore{##1}}{}%
}%
\letcs\@tempb{tud@split#1@list}%
\let\and\relax%
@@ -3640,16 +3810,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%
@@ -3667,7 +3837,7 @@
matriculationnumber,studentid,matriculationid,%
placeofbirth,birthplace,dateofbirth,birthday,%
}
-%%% 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}{%
@@ -3677,7 +3847,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.%
}%
}%
@@ -3708,6 +3878,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}
@@ -3832,6 +4003,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}
@@ -3937,6 +4109,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}
@@ -3960,8 +4133,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
@@ -3971,73 +4144,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}%
@@ -4060,58 +4233,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%
@@ -4122,50 +4295,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{}
@@ -4181,8 +4352,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%
@@ -4196,11 +4367,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
@@ -4338,7 +4509,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}%
@@ -4352,7 +4523,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%
@@ -4361,11 +4532,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}%
@@ -4373,15 +4544,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%
}%
@@ -4402,16 +4573,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%
@@ -4450,11 +4624,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}%
}%
@@ -4471,25 +4645,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{%
@@ -4500,20 +4674,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%
@@ -4522,7 +4700,7 @@
\fi\fi\fi\fi%
\if@tempswa%
\@tempswafalse%
- \IfArgIsEmpty{##2}{}{\ifnumber{##2}{\@tempswatrue}{}}%
+ \IfArgIsEmpty{##2}{}{\Ifnumber{##2}{\@tempswatrue}{}}%
\fi%
}%
\expandafter\@tempb\@tempa\@nil%
@@ -4538,7 +4716,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}%
}{}%
@@ -4573,7 +4751,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}%
}%
}%
@@ -4588,16 +4766,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%
}%
}%
@@ -4606,24 +4784,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]{%
@@ -4674,7 +4853,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,%
@@ -4692,8 +4871,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,%
@@ -4704,7 +4882,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,%
@@ -4726,8 +4905,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,%
@@ -4741,37 +4919,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%
@@ -4790,45 +4974,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%
@@ -4849,68 +5031,69 @@
\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%
- \setlength\tud@len@areaheadvskip{.22\tud@len@topmargin}%
+ \ifdim\tud@dim@areadiff<\z@\relax\tud@setdim\tud@dim@areadiff{\z@}\fi%
+ \global\tud@dim@areadiff=\tud@dim@areadiff%
+ \tud@setdim\tud@dim@areaheadvskip{\tud@dim@topmargin*11/50}%
\if@tud@cdgeometry@adjust%
- \setlength\tud@len@areaheadvskip{.5\tud@len@areaheadvskip}%
+ \tud@setdim\tud@dim@areaheadvskip{\tud@dim@areaheadvskip/2}%
\fi%
- \global\tud@len@areaheadvskip=\tud@len@areaheadvskip%
+ \global\tud@dim@areaheadvskip=\tud@dim@areaheadvskip%
\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%
}%
@@ -4945,11 +5128,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%
@@ -4976,12 +5159,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%
@@ -5007,14 +5190,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}%
@@ -5025,90 +5208,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%
@@ -5116,17 +5293,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}%
}%
@@ -5140,8 +5317,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{}%
@@ -5156,41 +5333,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%
@@ -5199,10 +5387,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}%
@@ -5212,24 +5400,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%
@@ -5238,8 +5426,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%
@@ -5248,9 +5436,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%
@@ -5259,10 +5446,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%
@@ -5271,11 +5458,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%
@@ -5284,16 +5470,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%
@@ -5308,7 +5494,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}%
@@ -5318,7 +5506,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%
@@ -5330,7 +5518,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%
@@ -5338,7 +5528,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
@@ -5351,13 +5541,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}%
@@ -5365,16 +5551,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}%
@@ -5387,7 +5570,7 @@
contents=\tud@head@bar@restore,%
]{tudheadings.last}%
\DeclareNewPageStyleByLayers[%
- onselect=\tud@ps@onselect,onbackground=\tud@ps@onbackground%
+ onbackground=\tud@ps@onbackground%
]{tudheadings}{%
tudheadings.head.back,%
tudheadings.head.content,%
@@ -5411,7 +5594,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,%
@@ -5437,7 +5620,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,%
@@ -5459,12 +5642,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}%
@@ -5473,6 +5654,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}
@@ -5481,13 +5678,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}}
@@ -5503,26 +5702,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}
@@ -5562,7 +5756,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}%
@@ -5587,8 +5781,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{}
@@ -5596,13 +5792,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%
@@ -5613,7 +5809,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%
@@ -5625,7 +5821,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{%
@@ -5639,7 +5835,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%
@@ -5651,16 +5847,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}%
@@ -5668,16 +5864,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%
@@ -5685,33 +5883,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}{%
@@ -5726,14 +5965,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}%
}
@@ -5743,26 +5986,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}}%
@@ -5773,18 +6007,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}%
}%
@@ -5803,11 +6038,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%
@@ -5821,57 +6066,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%
@@ -5883,12 +6130,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%
}%
}%
@@ -5906,14 +6153,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}%
@@ -5943,11 +6191,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.%
@@ -5961,26 +6212,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%
}%
@@ -5992,22 +6244,22 @@
}
\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@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%
@@ -6017,44 +6269,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%
}%
@@ -6062,39 +6299,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}%
@@ -6123,13 +6346,13 @@
\newcommand*\tud@envir@ps{tudheadings}
\newcommand*\tud@envir@selectps{%
\expandafter\pagestyle\expandafter{\tud@envir@ps}%
- \ifstr{\GetRealPageStyle{\tud@envir@ps}}{empty}{%
+ \tud@if@strequal{\GetRealPageStyle{\tud@envir@ps}}{empty}{%
\renewcommand*\titlepagestyle{empty}%
\renewcommand*\partpagestyle{empty}%
\renewcommand*\chapterpagestyle{empty}%
\renewcommand*\indexpagestyle{empty}%
}{}%
- \ifstr{\GetRealPageStyle{\tud@envir@ps}}{empty.tudheadings}{%
+ \tud@if@strequal{\GetRealPageStyle{\tud@envir@ps}}{empty.tudheadings}{%
\renewcommand*\titlepagestyle{empty.tudheadings}%
\renewcommand*\partpagestyle{empty.tudheadings}%
\renewcommand*\chapterpagestyle{empty.tudheadings}%
@@ -6170,11 +6393,12 @@
\TUD@parameter@def{language}{\selectlanguage{#1}}%
\TUD@parameter@def{columns}{\renewcommand*\tud@x@multicol@num{#1}}%
\TUD@parameter@def{pagestyle}{%
- \tud@if@tudheadings{#1}{\renewcommand*\tud@envir@ps{#1}}{%
- \ifstr{#1}{empty}{\renewcommand*\tud@envir@ps{empty.tudheadings}}{%
- \ifstr{#1}{plain}{\renewcommand*\tud@envir@ps{plain.tudheadings}}{%
- \ifstr{#1}{headings}{\renewcommand*\tud@envir@ps{tudheadings}}{%
- \TUD@parameter@error{pagestyle}{%
+ \tud@if@tudheadings{#1}{\def\tud@envir@ps{#1}}{%
+ \def\tud@envir@ps{tudheadings}%
+ \tud@if@strequal{#1}{empty}{\def\tud@envir@ps{empty.tudheadings}}{%
+ \tud@if@strequal{#1}{plain}{\def\tud@envir@ps{plain.tudheadings}}{%
+ \tud@if@strequal{#1}{headings}{}{%
+ \TUD@parameter@err{pagestyle}{%
headings, plain, empty or any tudheadings page style type%
}%
}}}%
@@ -6190,7 +6414,7 @@
capabilities of package `scrlayer-scrpage' instead%
}%
]{fancyhdr}
-%%% From File: tudscr-layout.dtx
+%%%% From File: tudscr-layout.dtx (no git version info was found)
\newcommand*\tud@cleardoublespecialpage[2][]{%
\begingroup%
\addtokomafont{pagenumber}{\usekomafont{tudheadings}}%
@@ -6227,37 +6451,49 @@
}%
\global\let\tud@clearcolor@wrn\relax%
}
-\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%
+\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[%
@@ -6279,15 +6515,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
@@ -6299,46 +6545,35 @@
\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@part@hook{}
+\let\tud@part@hook\relax
+\AddtoDoHook{heading/begingroup/part}{\tud@part@hook}
\newcommand*\tud@title@fontcolor{}
\newcommand*\tud@part@fontcolor{}
\newcommand*\tud@chapter@fontcolor{}
@@ -6362,16 +6597,17 @@
\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}%
}%
\tud@komafont@set{author}{\usekomafont{subject}}%
@@ -6379,6 +6615,7 @@
\tud@komafont@set{date}{\usekomafont{titlepage}}%
\fi%
\ifcase\tud@cd@part@num\relax% false
+ \tud@cs@restore{partlineswithprefixformat}%
\tud@cs@restore{scr@part@beforeskip}%
\tud@cs@restore{scr@part@innerskip}%
\tud@cs@restore{scr@part@afterskip}%
@@ -6386,17 +6623,19 @@
\tud@cs@restore{partheadendvskip}%
\tud@cs@restore{partheademptypage}%
\tud@cs@restore{partpagestyle}%
- \tud@cs@restore{partlineswithprefixformat}%
+ \let\tud@part@hook\relax%
\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@beforeskip}%
+ \renewcommand*\scr@part@beforeskip{\tud@cd@beforevskip@@dim}%
\tud@cs@store{scr@part@innerskip}%
- \renewcommand*\scr@part@innerskip{\tud@cd@innerskip}%
+ \renewcommand*\scr@part@innerskip{\tud@cd@innervskip@@dim}%
\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{partheadendvskip}%
@@ -6405,51 +6644,51 @@
\let\partheademptypage\tud@partheademptypage%
\tud@cs@store{partpagestyle}%
\renewcommand*\partpagestyle{plain.tudheadings}%
- \tud@cs@store{partlineswithprefixformat}%
- \let\partlineswithprefixformat\tud@partlineswithprefixformat%
+ \def\tud@part@hook{\let\setparsizes\@gobblefour}%
\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}%
\renewcommand*\raggedpart{\tud@raggedright}%
\fi%
\ifcase\tud@cd@chapter@num\relax% false
+ \tud@cs@restore{chapterlineswithprefixformat}%
+ \tud@cs@restore{chapterlinesformat}%
\tud@cs@restore{scr@chapter@beforeskip}%
\tud@cs@restore{scr@chapter@innerskip}%
\tud@cs@restore{scr@chapter@afterskip}%
\tud@cs@restore{chapterheadstartvskip}%
- \tud@cs@restore{chapterlineswithprefixformat}%
- \tud@cs@restore{chapterlinesformat}%
\tud@cs@restore{tud@chapter@before@hook}%
\tud@cs@restore{tud@chapter@after@hook}%
\tud@komafont@unset{chapter}%
\tud@komafont@unset{chapterprefix}%
\tud@cs@restore{raggedchapter}%
\else% !false
+ \tud@cs@store{chapterlineswithprefixformat}%
+ \let\chapterlineswithprefixformat\tud@chapterlineswithprefixformat%
+ \tud@cs@store{chapterlinesformat}%
+ \let\chapterlinesformat\tud@chapterlinesformat%
\tud@cs@store{scr@chapter@beforeskip}%
- \renewcommand*\scr@chapter@beforeskip{\tud@cd@beforeskip}%
+ \renewcommand*\scr@chapter@beforeskip{\tud@cd@beforevskip@@dim}%
\tud@cs@store{scr@chapter@innerskip}%
- \renewcommand*\scr@chapter@innerskip{\tud@cd@innerskip}%
+ \renewcommand*\scr@chapter@innerskip{\tud@cd@innervskip@@dim}%
\tud@cs@store{scr@chapter@afterskip}%
- \renewcommand*\scr@chapter@afterskip{\tud@cd@afterskip}%
+ \renewcommand*\scr@chapter@afterskip{\tud@cd@aftervskip@@glue}%
\tud@cs@store{chapterheadstartvskip}%
\let\chapterheadstartvskip\tud@chapterheadstartvskip%
- \tud@cs@store{chapterlineswithprefixformat}%
- \let\chapterlineswithprefixformat\tud@chapterlineswithprefixformat%
- \tud@cs@store{chapterlinesformat}%
- \let\chapterlinesformat\tud@chapterlinesformat%
\tud@cs@store{tud@chapter@before@hook}%
\renewcommand*\tud@chapter@before@hook{\tud@chapter@pre}%
\tud@cs@store{tud@chapter@after@hook}%
\renewcommand*\tud@chapter@after@hook{\tud@chapter@app}%
\tud@komafont@set{chapter}{%
\tud@sec@fontface%
- \tud@sec@fontsize%
+ \tud@sec@fontsizecmd%
\tud@color{\tud@chapter@fontcolor}%
}%
\tud@komafont@set{chapterprefix}{\usesizeofkomafont{partnumber}}%
@@ -6494,12 +6733,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%
@@ -6519,35 +6758,64 @@
\tud@komafont@unset{footnote}%
\tud@cs@restore{footnoterule}%
}
-\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%
}
+\patchcmd\scr@startpart{%
+ \partheadstartvskip
+ \vbox to\z@{\vss\use@preamble{#1@o}\strut\par}%
+ \vskip-\baselineskip\nobreak
+}{%
+ \ifcase\tud@cd@part@num\relax% false
+ \partheadstartvskip%
+ \vbox to\z@{\vss\use@preamble{#1@o}\strut\par}%
+ \vskip-\baselineskip\nobreak%
+ \else%
+ {%
+ \setbox\z@\vbox{%
+ \vskip\dimexpr%
+ \tud@cd@innervskip@@dim-\tud@sec@baselineskip@@dim-\baselineskip%
+ \relax%
+ \use@preamble{#1@o}\strut\par%
+ }%
+ \vbox to \z@{\box\z@\vss}%
+ \vskip\dimexpr\parskip-\baselineskip\relax%
+ }%
+ \partheadstartvskip%
+ \fi%
+}{}{\tud@patch@wrn{scr@startpart}}
\newcommand*\tud@preamble@fontcolor{}
\newcommand*\tud@partpreamble{%
- \@tempskipa=\glueexpr\tud@cd@afterskip\relax%
- \ifdim\@tempskipa<\z@\@tempskipa-\@tempskipa\fi%
+ \tud@setglue\@tempskipa{\tud@cd@aftervskip@@glue}%
+ \tud@length@setabsolute\@tempskipa%
\vskip\@tempskipa%
\ifnum\tud@abstract@level@num>\@ne\relax% sec/chap
\renewcommand*\tud@abstract@level@num{1}%
\fi%
\KOMAoptions{titlepage=false}%
- \null\vskip-\baselineskip%
+ \null\vskip-1\baselineskip%
\addtokomafont{disposition}{\tud@color{\tud@part@fontcolor}}%
\addtokomafont{dictum}{\tud@color{\tud@part@fontcolor}}%
\let\tud@preamble@fontcolor\tud@part@fontcolor%
@@ -6558,7 +6826,7 @@
\renewcommand*\tud@abstract@level@num{1}%
\fi%
\KOMAoptions{titlepage=false}%
- \null\vskip-\baselineskip%
+ \null\vskip-1\baselineskip%
\if@tud@chapterpage%
\addtokomafont{disposition}{\tud@color{\tud@chapter@fontcolor}}%
\addtokomafont{dictum}{\tud@color{\tud@chapter@fontcolor}}%
@@ -6571,7 +6839,7 @@
\hbox to\hsize{#4\parbox[{#2}]{#3}{#6\par}#5\par}%
}%
}
-\patchcmd{\set@@@@preamble}{%
+\patchcmd\set@@@@preamble{%
\hbox to\hsize{#4\parbox[{#2}]{#3}{#6\par}#5\par}%
}{%
\def\@tempa####1@####2{%
@@ -6587,24 +6855,30 @@
\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@chapter@subtitle{}
\newcommand*\setchaptersubtitle[1]{\gdef\tud@chapter@subtitle{#1}}
\newkomafont{chaptersubtitle}{%
- \tud@thesis@fontsize%
- \fontseries{\tud@cdfont@bf}\selectfont%
+ \tud@subtitle@fontsizecmd%
+ \fontseriesforce{\tud@cdfont@bf}\selectfont%
\tud@color{\tud@chapter@fontcolor}%
}
\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}%
}%
}
+\AddtoDoHook{heading/preinit/part}{
+ \TUD@deprecated@length\pageheadingsvskip%
+}
\newcommand*\tud@partheadstartvskip{%
\renewcommand*\tud@part@fontcolor{}% false/true
\ifcase\tud@cd@part@num\relax\or\or% litecolor
@@ -6619,9 +6893,8 @@
\renewcommand*\tud@part@fontcolor{HKS41!30}%
\fi%
\tud@cd@specialpage@set{part}%
- \tud@cd@headstartvskip%
- \TUD@deprecated@lengthcs{pageheadingsvskip}%
- \vspace*{\tud@dim@pageheadingsvskip}%
+ \tud@cd@headstart@vskip%
+ \vspace*{\dimexpr\tud@pageheadingsvskip@dim\relax}%
}
\newcommand*\tud@partheademptypage{%
\tud@cleardoublespecialpage{%
@@ -6647,6 +6920,7 @@
}
\newcommand*\tud@partformat{}%
\newcommand*\tud@partlineswithprefixformat[3]{%
+ \vskip-2\parskip%
\if@tud@parttitle%
\ifx\@@title\@empty%
\ClassWarning{\TUD@Class@Name}{%
@@ -6655,48 +6929,59 @@
}%
\fi%
\tud@cd@vphantom%
- \tud@sec@format[#1]{%
- \usekomafont{#1}{\nobreak\interlinepenalty \@M\@@title\strut\@@par}%
+ \usekomafont{#1}{%
+ \tud@sec@format{\nobreak\interlinepenalty\@M\@@title\strut\@@par}%
}%
- \setpartsubtitle{%
- \setkomafont{part}{}%
- \tud@sec@format[partnumber]{\IfUseNumber{\partformat\enskip}{}#3}%
+ \def\tud@partformat##1\nobreak\interlinepenalty\@M##2\strut\@@par##3\@nil{%
+ \def\tud@partformat{\IfUseNumber{\partformat\enskip}{}##2}%
}%
+ \expandafter\expandafter\expandafter\tud@partformat%
+ \expandafter\@firstofone\@gobbletwo#3\@nil%
+ \expandafter\setpartsubtitle\expandafter{\tud@partformat}%
\else%
\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}%
\fi%
\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
+\AddtoDoHook{heading/preinit/chapter}{
+ \if@tud@chapterpage%
+ \TUD@deprecated@length\pageheadingsvskip%
+ \else%
+ \TUD@deprecated@length\headingsvskip%
+ \fi%
+}
\newcommand*\tud@chapterheadstartvskip{%
\renewcommand*\tud@chapter@fontcolor{}%
\ifcase\tud@cd@chapter@num\relax\or\else% *color
\renewcommand*\tud@chapter@fontcolor{HKS41}%
\fi%
- \tud@cd@headstartvskip%
+ \tud@cd@headstart@vskip%
\if@tud@chapterpage%
- \TUD@deprecated@lengthcs{pageheadingsvskip}%
- \vspace*{\tud@dim@pageheadingsvskip}%
+ \vspace*{\dimexpr\tud@pageheadingsvskip@dim\relax}%
\else%
- \TUD@deprecated@lengthcs{headingsvskip}%
- \vspace*{\tud@dim@headingsvskip}%
+ \vspace*{\dimexpr\tud@headingsvskip@dim\relax}%
\fi%
}
\newcommand*\tud@chapterformat{}%
\newcommand*\tud@chapterlineswithprefixformat[3]{%
- \edef\tud@chapterformat{%
- \noexpand\tud@sec@format{\expandonce\chapterformat}%
- }%
+ \edef\tud@chapterformat{\noexpand\tud@sec@format{\expandonce\chapterformat}}%
\let\chapterformat\tud@chapterformat%
\IfUseNumber{}{\tud@cd@vphantom}%
- #2\tud@sec@format[#1]{#3}%
+ #2\tud@sec@format[{#1}]{#3}%
\tud@sec@subtitle{#1}%
}
\newcommand*\tud@chapterlinesformat[3]{%
\tud@cd@vphantom%
- \@hangfrom{#2}{\tud@sec@format[#1]{#3}}%
+ \@hangfrom{#2}{\tud@sec@format[{#1}]{#3}}%
\tud@sec@subtitle{#1}%
}
\newcommand*\tud@chapter@pre{%
@@ -6758,34 +7043,33 @@
}
\newcommand*\tud@chapter@before@hook{}
\newcommand*\tud@chapter@after@hook{}
-\pretocmd{\scr@startchapter}{%
+\pretocmd\scr@startchapter{%
\tud@chapter@before@hook%
}{}{\tud@patch@wrn{scr@startchapter}}
-\apptocmd{\scr@@startchapter}{%
+\apptocmd\scr@@startchapter{%
\tud@chapter@after@hook%
}{}{\tud@patch@wrn{scr@@startchapter}}
-\apptocmd{\scr@@startschapter}{%
+\apptocmd\scr@@startschapter{%
\tud@chapter@after@hook%
}{}{\tud@patch@wrn{scr@@startschapter}}
\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{thesis}{%
\usekomafont{title}%
- \tud@thesis@fontsize%
+ \tud@subtitle@fontsizecmd%
}
\newkomafont{titlepage}{%
\raggedtitle%
@@ -6799,6 +7083,8 @@
\newcommand*\tud@title@pagenumber{}
\let\tud@title@pagenumber\relax
\newcommand*\tud@maketitle[1][]{%
+ \TUD@deprecated@length\pageheadingsvskip%
+ \TUD@deprecated@length\headingsvskip%
\begingroup%
\cleardoublepage%
\TUD@parameter@set{title}{#1}%
@@ -6812,7 +7098,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%
@@ -6846,7 +7134,9 @@
}
\tud@cs@store{maketitle}
\let\maketitle\tud@maketitle
-\patchcmd{\titlepage}{\thispagestyle{empty}}{%
+\patchcmd\titlepage{%
+ \thispagestyle{empty}%
+}{%
\tud@if@tudheadings{\currentpagestyle}{%
\thispagestyle{empty.tudheadings}%
}{%
@@ -6916,19 +7206,18 @@
\fi%
\next@tdpage%
\fi%
- \tud@cd@headstartvskip%
- \TUD@deprecated@lengthcs{pageheadingsvskip}%
- \vspace*{\tud@dim@pageheadingsvskip}%
+ \vspace*{-\baselineskip}%
+ \tud@cd@headstart@vskip%
+ \vspace*{\dimexpr\tud@pageheadingsvskip@dim\relax}%
\tud@cd@vphantom%
\setparsizes{\z@}{\z@}{\z@\@plus1fil}\par@updaterelative%
{\usekomafont{titlepage}{%
\tud@maketitle@head%
{\usekomafont{title}{\tud@title@format{\@title}\par}}%
\ifx\@subtitle\@empty\else%
- {\usekomafont{partnumber}{\nobreak\tud@sec@strut}}%
- {\usekomafont{subtitle}{\tud@title@format{\@subtitle}\par}}%
+ {\usekomafont{subtitle}{\tud@title@format[partnumber]{\@subtitle}\par}}%
\fi%
- \vskip 2\bigskipamount%
+ \vskip\glueexpr\bigskipamount*2\relax%
\let\tud@split@author@do\tud@split@author@title%
\tud@multiple@split{@author}\par%
\vskip 2ex\@plus1ex\@minus1ex%
@@ -6951,7 +7240,7 @@
\def\@tempc{%
\@graduation%
\ifx\@graduationabbreviation\@empty\else%
- \nobreakspace\@graduationabbreviation%
+ \nobreakspace(\@graduationabbreviation)%
\fi%
}%
{\usekomafont{titlepage}{\graduationtext\par}}%
@@ -6971,10 +7260,10 @@
\tud@date@check%
\ifx\@date\@empty\else%
\vskip 2ex\@plus1ex\@minus1ex%
- \ifxblank{\datetext}{}{\datetext\tud@title@delimiter}%
+ \tud@if@strblank{\datetext}{}{\datetext\tud@title@delimiter}%
{\usekomafont{date}{\tud@date@print\par}}%
\ifx\@defensedate\@empty\else%
- \ifxblank{\defensedatetext}{}{%
+ \tud@if@strblank{\defensedatetext}{}{%
\defensedatetext\tud@title@delimiter%
}%
{\usekomafont{date}{\@defensedate\par}}%
@@ -6983,7 +7272,7 @@
\fi%
\if@tud@titlesignature%
\let\tud@split@@author@do\tud@split@author@signature%
- \vskip\tud@len@signatureskip\noindent%
+ \vskip\tud@glue@signaturevskip\noindent%
\tud@ifin@and{\@@author}{}{\hfill}%
\tud@multiple@split{@@author}%
\fi%
@@ -7061,7 +7350,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%
@@ -7085,7 +7376,7 @@
\ifx\@extratitle\@empty%
\ifx\@frontispiece\@empty\else%
\if@twoside\null\fi%
- \fi
+ \fi%
\else%
\tud@res@a{\@makeextratitle}%
\fi%
@@ -7101,9 +7392,9 @@
}
\newcommand*\tud@maketitle@@inpage{%
\global\@topnum=\z@%
- \tud@cd@headstartvskip%
- \TUD@deprecated@lengthcs{headingsvskip}%
- \vspace*{\tud@dim@headingsvskip}%
+ \vspace*{-\baselineskip}%
+ \tud@cd@headstart@vskip%
+ \vspace*{\dimexpr\tud@headingsvskip@dim\relax}%
\tud@cd@vphantom%
\setparsizes{\z@}{\z@}{\z@\@plus1fil}\par@updaterelative%
{\usekomafont{titlepage}{%
@@ -7112,11 +7403,10 @@
\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%
- \vskip 2\bigskipamount%
+ \vskip\bigskipamount%
\let\tud@split@author@do\tud@split@author@title%
\tud@multiple@split{@author}\par%
\ifx\@date\@empty\else%
@@ -7136,11 +7426,9 @@
\ifx\@advisor\@empty\else\tud@title@wrn{advisor}\fi%
\ifx\@supervisor\@empty\else\tud@title@wrn{supervisor}\fi%
\ifx\@professor\@empty\else\tud@title@wrn{professor}\fi%
- \vskip 2\bigskipamount%
+ \vskip\bigskipamount%
\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]}{}%
}}%
@@ -7148,43 +7436,27 @@
\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%
\tud@thesis@tosubject%
\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%
- \vskip\dimexpr-\@tempdima-\p@-\medskipamount\relax%
+ \vskip\dimexpr-\@tempdima-\p@-1\medskipamount\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*\tud@thesis@tosubject{%
\if@tud@subjectthesis\ifx\@thesis\@empty\else%
@@ -7235,7 +7507,9 @@
\ifx\@dateofbirth\@empty\else%
\if@titlepage%
\tud@newline@title%
- \ifxblank{\dateofbirthtext}{}{\dateofbirthtext\tud@title@delimiter}%
+ \tud@if@strblank{\dateofbirthtext}%
+ {}%
+ {\dateofbirthtext\tud@title@delimiter}%
\@dateofbirth%
\ifx\@placeofbirth\@empty\else%
\nobreakspace\placeofbirthtext\nobreakspace\@placeofbirth%
@@ -7245,15 +7519,17 @@
\fi%
\fi%
\def\@tempc##1{%
- \ifstr{\csuse{@##1}}{}{}{%
+ \expandafter\ifx\csname @##1\endcsname\@empty\else%
\if@titlepage%
\tud@newline@title%
- \ifstr{\csuse{##1name}}{}{}{\csuse{##1name}\tud@title@delimiter}%
+ \tud@if@strblank{\csuse{##1name}}%
+ {}%
+ {\csuse{##1name}\tud@title@delimiter}%
\csuse{@##1}%
\else%
\tud@title@wrn{##1}%
\fi%
- }%
+ \fi%
}%
\@tempc{course}%
\@tempc{discipline}%
@@ -7272,9 +7548,9 @@
\newcommand*\tud@split@author@signature[2]{%
\tud@multiple@fields@store{@author}{#1}%
\vbox{%
- \hsize=.3\textwidth%
+ \hsize=\dimexpr\textwidth*3/10\relax%
\centering%
- \rule{.3\textwidth}{.05pt}\newline%
+ \rule{\dimexpr\textwidth*3/10\relax}{.05pt}\newline%
\ignorespaces#1\strut\unskip%
}%
\tud@multiple@fields@restore{@author}%
@@ -7283,15 +7559,16 @@
\newcommand\maketitleonecolumn[2][]{%
\if@twocolumn%
\if@titlepage%
- \tud@maketitle[#1]%
- \onecolumn{#2}\twocolumn%
+ \tud@maketitle[{#1}]%
+ \onecolumn#2\twocolumn%
\else%
- \tud@title@twocolumn{\tud@maketitle[#1]{#2}}%
+ \tud@title@twocolumn{\tud@maketitle[{#1}]#2}%
\fi%
\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
@@ -7301,14 +7578,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%
}{}%
@@ -7318,7 +7595,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%
@@ -7331,13 +7608,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%
}{}%
}
-\newif\if@tud@coverpage
+\tud@newif\if@tud@coverpage
\newcommand*\makecover[1][]{%
\if@titlepageiscoverpage%
\ClassWarning{\TUD@Class@Name}{%
@@ -7374,23 +7651,22 @@
\if@tud@cdgeometry@cover%
\if@tud@coverpage%
\def\coverpagetopmargin{%
- \dimexpr\tud@len@topmargin+\tud@len@barheight%
- +\tud@len@headsep\relax%
+ \tud@dim@topmargin+\tud@dim@barheight+\tud@dim@headsep%
}%
\else%
\tud@if@v@lower{2.03}{%
- \def\coverpagetopmargin{.5\tud@len@both}%
+ \def\coverpagetopmargin{\tud@dim@bothmargin/2}%
}{%
- \def\coverpagetopmargin{\tud@len@slimmargin}%
+ \def\coverpagetopmargin{\tud@dim@slimmargin}%
}%
\fi%
\tud@if@v@lower{2.03}{%
- \def\coverpagebottommargin{.5\tud@len@both}%
+ \def\coverpagebottommargin{\tud@dim@bothmargin/2}%
}{%
- \def\coverpagebottommargin{\tud@len@widemargin}%
+ \def\coverpagebottommargin{\tud@dim@widemargin}%
}%
- \def\coverpageleftmargin{\tud@len@widemargin}%
- \def\coverpagerightmargin{\tud@len@slimmargin}%
+ \def\coverpageleftmargin{\tud@dim@widemargin}%
+ \def\coverpagerightmargin{\tud@dim@slimmargin}%
\fi%
\if@tud@coverpage%
\edef\titlepage@restore{%
@@ -7403,7 +7679,7 @@
}%
\begingroup%
\tud@cover@setmargins%
- \tud@len@areavskip=\z@%
+ \tud@setdim\tud@dim@areavskip{\z@}%
\tud@maketitle%
\clearpage%
\titlepage@restore%
@@ -7434,41 +7710,37 @@
\TUD@parameter@ps@def{#1}%
\TUD@parameter@handler@value{pagenumber}%
}
-\renewcommand*{\coverpagetopmargin}{%
+\renewcommand*\coverpagetopmargin{%
\if@tud@coverpage%
- \dimexpr\tud@len@topmargin+\tud@len@barheight+\tud@len@headsep\relax%
+ \tud@dim@topmargin+\tud@dim@barheight+\tud@dim@headsep%
\else%
- \dimexpr\topmargin+1in\relax%
+ \topmargin+1in%
\fi%
}
-\renewcommand*{\coverpagebottommargin}{%
+\renewcommand*\coverpagebottommargin{%
\if@tud@coverpage%
- \dimexpr\tud@len@widemargin\relax%
+ \tud@dim@widemargin%
\else%
- 2\dimexpr\coverpagetopmargin\relax%
+ \coverpagetopmargin*2%
\fi%
}
\newcommand*\tud@cover@fixmargins{%
\begingroup%
\tud@cdgeometry@assignlayout%
\tud@x@geometry@fixmargins%
- \setlength\@tempdima{%
- \dimexpr\coverpagebottommargin-\tud@len@layoutvoffset
- +\paperheight-\tud@len@layoutheight\relax%
+ \tud@setdim\@tempdima{%
+ \coverpagebottommargin-\tud@dim@layoutvoffset%
+ +\paperheight-\tud@dim@layoutheight%
}%
\edef\coverpagebottommargin{\the\@tempdima}%
- \setlength\@tempdima{%
- \dimexpr\coverpagetopmargin+\tud@len@layoutvoffset\relax%
- }%
+ \tud@setdim\@tempdima{\coverpagetopmargin+\tud@dim@layoutvoffset}%
\edef\coverpagetopmargin{\the\@tempdima}%
- \setlength\@tempdima{%
- \dimexpr\coverpagerightmargin-\tud@len@layouthoffset
- +\paperwidth-\tud@len@layoutwidth\relax%
+ \tud@setdim\@tempdima{%
+ \coverpagerightmargin-\tud@dim@layouthoffset%
+ +\paperwidth-\tud@dim@layoutwidth%
}%
\edef\coverpagerightmargin{\the\@tempdima}%
- \setlength\@tempdima{%
- \dimexpr\coverpageleftmargin+\tud@len@layouthoffset\relax%
- }%
+ \tud@setdim\@tempdima{\coverpageleftmargin+\tud@dim@layouthoffset}%
\edef\coverpageleftmargin{\the\@tempdima}%
\edef\tud@res@a{%
\endgroup%
@@ -7490,7 +7762,7 @@
-\coverpagebottommargin\relax%
\headheight=0pt%
\headsep=0pt%
- \footskip=\baselineskip%
+ \footskip=1\baselineskip%
\@colht=\textheight%
\@colroom=\textheight%
\vsize=\textheight%
@@ -7498,10 +7770,10 @@
\hsize=\columnwidth%
\linewidth=\hsize%
}
-%%% 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%
- \ifnumless{\csuse{tud@#1@level@num}}{3}{% false/true/section
+ \ifnum\csuse{tud@#1@level@num}<3\relax% false/true/section
\ifboolexpr{%
bool {@titlepage} and bool {@tud@#1@fil} and bool {@tud@#1@multi}%
}{%
@@ -7520,10 +7792,10 @@
\boolfalse{@tud@#1@fil}%
\fi%
}{}%
- }{% chapter
+ \else% chapter
\boolfalse{@tud@#1@multi}%
\boolfalse{@tud@#1@fil}%
- }%
+ \fi%
\ifnum\csuse{tud@#1@toc@num}>\tw@\relax%
\tud@fm@toc{#1}{#2}%
\fi%
@@ -7531,26 +7803,27 @@
#2%
}
\newcommand*\tud@fm@@toc{}
-\newcommand*\tud@fm@@@toc{}
\newcommand*\tud@fm@toc[2]{%
\ifbool{@tud@#1@multi}{%
\begingroup%
- \let\tud@fm@@@toc\@empty%
+ \let\tud@fm@@toc\@empty%
\renewcommand*\tud@fm@head[2]{%
- \protected@edef\@tempa{##2}%
- \protected@xdef\tud@fm@@toc{\tud@fm@@@toc\@tempa}%
- \protected@xdef\tud@fm@@@toc{\tud@fm@@toc/}%
+ \protected@xdef\tud@fm@@toc{%
+ \ifx\tud@fm@@toc\@empty\else\tud@fm@@toc/\fi##2%
+ }%
}%
\let\clearpage\relax%
\sbox\z@{\vbox{#2}}%
\csuse{phantomsection}%
\protected@edef\@tempa{%
- \noexpand\endgroup%
- \noexpand\ifnumodd{\csname tud@#1@toc@num\endcsname}{%
- \noexpand\addchaptertocentry{}{\tud@fm@@toc}%
- }{%
- \noexpand\addsectiontocentry{}{\tud@fm@@toc}%
- }%
+ \endgroup%
+ \ifx\tud@fm@@toc\@empty\else%
+ \ifodd\csuse{tud@#1@toc@num}\relax
+ \noexpand\addchaptertocentry{}{\tud@fm@@toc}%
+ \else
+ \noexpand\addsectiontocentry{}{\tud@fm@@toc}%
+ \fi
+ \fi%
}%
\@tempa%
}{%
@@ -7627,19 +7900,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%
@@ -7648,7 +7922,7 @@
\endgraf%
\endgroup%
\nopagebreak%
- \vskip\dimexpr\medskipamount-\parskip\relax%
+ \vskip\medskipamount\vskip-\parskip%
\@afterheading%
\or% section
\section*{#2}%
@@ -7719,7 +7993,7 @@
\clearpage%
\else%
\ifnum\tud@abstract@level@num=\tw@\relax%
- \vskip\dimexpr\bigskipamount-\parskip\relax%
+ \vskip\bigskipamount\vskip-\parskip%
\fi%
\fi%
]
@@ -7728,7 +8002,7 @@
\TUD@parameter@def{columns}{\renewcommand*\tud@x@multicol@num{#1}}%
\TUD@parameter@def{pagestyle}{\tud@fm@pagestyle{abstract}{#1}}%
\TUD@parameter@def{markboth}[true]{%
- \ifstrbool{#1}{%
+ \tud@if@strbool{#1}{%
\@tud@abstract@markbothtrue%
\ifx\tud@envir@ps\relax\def\tud@envir@ps{headings}\fi%
}{%
@@ -7749,7 +8023,7 @@
the environment `abstract'.%
}%
}
-\newif\if@tud@declarations
+\tud@newif\if@tud@declarations
\NewEnviron{declarations}[1][]{%
\@tud@declarationstrue%
\ifnum\tud@declaration@level@num>\tw@\relax\@titlepagetrue\fi% chapter
@@ -7778,7 +8052,7 @@
\clearpage%
\else%
\ifnum\tud@declaration@level@num=\tw@\relax%
- \vskip\dimexpr\bigskipamount-\parskip\relax%
+ \vskip\bigskipamount\vskip-\parskip%
\fi%
\fi%
]
@@ -7787,7 +8061,7 @@
\TUD@parameter@def{columns}{\renewcommand*\tud@x@multicol@num{#1}}%
\TUD@parameter@def{pagestyle}{\tud@fm@pagestyle{declaration}{#1}}%
\TUD@parameter@def{markboth}[true]{%
- \ifstrbool{#1}{%
+ \tud@if@strbool{#1}{%
\@tud@declaration@markbothtrue%
\ifx\tud@envir@ps\relax\def\tud@envir@ps{headings}\fi%
}{%
@@ -7818,29 +8092,29 @@
}%
}
\newcommand*\tud@fm@declaration[1][]{%
- \ifbool{@tud@declarations}{%
+ \if@tud@declarations%
\begingroup%
- \tud@fm@@confirmation[\tud@fm@supporter,#1]%
- \tud@fm@blocking[#1]%
+ \tud@fm@@confirmation[{\tud@fm@supporter,#1}]%
+ \tud@fm@blocking[{#1}]%
\endgroup%
- }{%
- \begin{declarations}[\tud@fm@supporter,#1]%
+ \else%
+ \begin{declarations}[{\tud@fm@supporter,#1}]%
\tud@fm@@confirmation%
\tud@fm@blocking%
\end{declarations}%
- }%
+ \fi%
}
\newcommand*\nextdeclaration[3][]{%
- \ifbool{@tud@declarations}{%
+ \if@tud@declarations%
\tud@fm@body@start{declaration}{#1}{#2}%
#3%
\tud@fm@body@end{declaration}%
- }{%
+ \else%
\ClassError{\TUD@Class@Name}{Incorrect usage of `\string\nextdeclaration'}{%
The command `\string\nextdeclaration' can only be used\MessageBreak%
within the environment `declarations'.%
}%
- }%
+ \fi%
}
\newcommand*\confirmation{%
\kernel@ifstar{%
@@ -7855,18 +8129,18 @@
\begingroup%
\TUD@parameter@handler@default[declaration]{supporter}%
\undef\KV@declaration@company%
- \ifbool{@tud@declarations}{%
- \tud@fm@@confirmation[\tud@fm@supporter,#1]%
- }{%
- \begin{declarations}[\tud@fm@supporter,#1]%
+ \if@tud@declarations%
+ \tud@fm@@confirmation[{\tud@fm@supporter,#1}]%
+ \else%
+ \begin{declarations}[{\tud@fm@supporter,#1}]%
\tud@fm@@confirmation%
\end{declarations}%
- }%
+ \fi%
\endgroup%
}
\newcommand*\tud@fm@@confirmation[1][]{%
\tud@fm@body@start{declaration}{#1}{\confirmationname}%
- \confirmationtext\vskip\z@\@confirmationclosing%
+ \confirmationtext\vskip\z@skip\@confirmationclosing%
\tud@fm@body@end{declaration}%
}
\newcommand*\blocking[1][]{%
@@ -7875,13 +8149,13 @@
\undef\KV@declaration@supporter%
\undef\KV@declaration@closing%
\undef\KV@declaration@confirmationclosing%
- \ifbool{@tud@declarations}{%
- \tud@fm@blocking[#1]%
- }{%
- \begin{declarations}[#1]%
+ \if@tud@declarations%
+ \tud@fm@blocking[{#1}]%
+ \else%
+ \begin{declarations}[{#1}]%
\tud@fm@blocking%
\end{declarations}%
- }%
+ \fi%
\endgroup%
}
\newcommand*\tud@fm@blocking[1][]{%
@@ -7889,76 +8163,15 @@
\blockingtext%
\tud@fm@body@end{declaration}%
}
-%%% From File: tudscr-comp.dtx
-\newlength\footlogoheight
-\setlength\footlogoheight{\maxdimen}
-\newlength\pageheadingsvskip
-\setlength\pageheadingsvskip{\maxdimen}
-\newlength\headingsvskip
-\setlength\headingsvskip{\maxdimen}
-\newcommand*\chapterheadingvskip{}
-\let\chapterheadingvskip\headingsvskip
-\TUD@deprecated@cs{professorship}{chair}
-\TUD@deprecated@cs{studentid}{matriculationnumber}
-\TUD@deprecated@cs{matriculationid}{matriculationnumber}
-\TUD@deprecated@cs{enrolmentyear}{matriculationyear}
-\TUD@deprecated@cs{birthplace}{placeofbirth}
-\TUD@deprecated@cs{submissiondate}{date}
-\TUD@deprecated@cs{oralexaminationdate}{defensedate}
-\TUD@deprecated@cs{birthday}{dateofbirth}
-\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{%
@@ -7967,7 +8180,6 @@
\let\@footnotemark\H@@footnotemark%
\let\@footnotetext\H@@footnotetext%
}%
- \pdfstringdefDisableCommands{\let\NoCaseChange\@firstofone}%
}
\newcommand*\tud@x@bookmark@startatroot{\relax}
\AfterPackage{bookmark}{%
@@ -7975,7 +8187,7 @@
\if@tud@bookmarks\bookmarksetup{startatroot}\fi%
}%
}
-\apptocmd{\titlepage}{%
+\apptocmd\titlepage{%
\tud@x@bookmark@startatroot%
\@tud@res@swafalse%
\if@tud@coverpage\@tud@res@swatrue\fi%
@@ -7990,13 +8202,13 @@
]{\titlepagename}{title}%
\fi%
}{}{\tud@patch@wrn{titlepage}}
-\pretocmd{\tud@maketitle@inpage}{%
+\pretocmd\tud@maketitle@inpage{%
\tud@x@bookmark@startatroot%
\tudbookmark[%
0%
]{\titlename}{title}%
}{}{\tud@patch@wrn{tud@maketitle@inpage}}
-\pretocmd{\@maketitle}{%
+\pretocmd\@maketitle{%
\tud@x@bookmark@startatroot%
\tudbookmark[%
0%
@@ -8023,10 +8235,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%
@@ -8037,22 +8249,22 @@
\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
+\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%
@@ -8072,22 +8284,67 @@
\global\@tud@cdgeometry@processfalse%
\fi%
}
+%%%% From File: tudscr-comp.dtx (no git version info was found)
+\tud@newglue\footlogoheight
+\tud@setdim\footlogoheight{\maxdimen}
+\tud@newglue\pageheadingsvskip
+\tud@setdim\pageheadingsvskip{\maxdimen}
+\tud@newglue\headingsvskip
+\tud@setdim\headingsvskip{\maxdimen}
+\newcommand*\chapterheadingvskip{}
+\let\chapterheadingvskip\headingsvskip
+\TUD@deprecated@cs{professorship}{chair}
+\TUD@deprecated@cs{studentid}{matriculationnumber}
+\TUD@deprecated@cs{matriculationid}{matriculationnumber}
+\TUD@deprecated@cs{enrolmentyear}{matriculationyear}
+\TUD@deprecated@cs{birthplace}{placeofbirth}
+\TUD@deprecated@cs{submissiondate}{date}
+\TUD@deprecated@cs{oralexaminationdate}{defensedate}
+\TUD@deprecated@cs{birthday}{dateofbirth}
+\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 `tudscrreprt.cls'.
diff --git a/Master/texmf-dist/tex/latex/tudscr/tudscrsupervisor.sty b/Master/texmf-dist/tex/latex/tudscr/tudscrsupervisor.sty
index f6ba53ee5ef..3e03df69d2b 100644
--- a/Master/texmf-dist/tex/latex/tudscr/tudscrsupervisor.sty
+++ b/Master/texmf-dist/tex/latex/tudscr/tudscrsupervisor.sty
@@ -4,16 +4,18 @@
%%
%% The original source files were:
%%
-%% tudscr-version.dtx (with options: `package,supervisor')
-%% tudscr-supervisor.dtx (with options: `package,supervisor')
-%% tudscr-fields.dtx (with options: `package,supervisor')
-%% tudscr-localization.dtx (with options: `package,supervisor')
+%% tudscr-version.dtx (with options: `package,supervisor,identify')
+%% tudscr-supervisor.dtx (with options: `package,supervisor,identify')
+%% tudscr-fields.dtx (with options: `package,supervisor,body')
+%% tudscr-localization.dtx (with options: `package,supervisor,body')
+%% tudscr-supervisor.dtx (with options: `package,supervisor,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.
%% ----------------------------------------------------------------------------
@@ -29,77 +31,159 @@
%%
%% 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}
-\ifx\TUD@Class@Name\@undefined
- \PackageError{%
- tudscrsupervisor%
- }{Unsupported class found}{%
- This package can only be used with a class out of the\MessageBreak%
- tudscr bundle (tudscrbook, tudscrreprt, tudscrartcl, tudscrposter).%
- }%
- \endinput%
-\fi
\@ifundefined{TUDScript}{%
\DeclareRobustCommand\TUDScript{%
- \textsf{%
- T\kern.05em U\kern.05em D\kern.1em-\kern.1em Script%
- }%
- \ifcsname xspace\endcsname%
- \xspace%
- \fi%
+ \mbox{%
+ \textsf{%
+ T\kern.05em U\kern.05em D\kern.1em-\kern.1em Script%
+ }%
+ }\ifcsname xspace\endcsname\xspace\fi%
}%
}{}
-%%% From File: tudscr-supervisor.dtx
+\providecommand*\TUDScriptContact{hanisch.latex@outlook.com}
+\providecommand*\TUDScriptRepository{https://github.com/tud-cd/tudscr}
+\providecommand*\TUDScriptForum{https://latex.wcms-file3.tu-dresden.de/phpBB3/}
+\providecommand*\TUD@Class@Check[1]{%
+ \ifx\TUD@Class@Name\@undefined%
+ \PackageError{#1}{TUD-Script class not loaded}{%
+ This package requires a class of the TUD-Script bundle\MessageBreak%
+ (tudscrbook, tudscrreprt, tudscrartcl, tudscrposter).%
+ }%
+ \DeclareOption*{}%
+ \ProcessOptions\relax%
+ \expandafter\endinput%
+ \fi%
+}%
+%%%% From File: tudscr-supervisor.dtx (no git version info was found)
\ProvidesPackage{tudscrsupervisor}[%
- 2021/07/15 v2.06n TUD-Script
- package
- (commands for supervisors)%
+ 2022/08/09 v2.06o TUD-Script
+ package (commands for supervisors)%
]
+\TUD@Class@Check{tudscrsupervisor}
+%%%% From File: tudscr-fields.dtx (no git version info was found)
+\newcommand*\@chairman{}
+\newcommand*\chairman[1]{\tud@trim@field\@chairman{#1}}
+\newcommand*\@grade{}
+\newcommand*\grade[1]{\tud@trim@field\@grade{#1}}
+\newcommand*\@issuedate{}
+\newcommand*\issuedate[1]{\tud@printdate{\@issuedate}{#1}}
+\newcommand*\@duedate{}
+\newcommand*\duedate[1]{\tud@printdate{\@duedate}{#1}}
+\@ifclassloaded{tudscrposter}{\@tempswafalse}{\@tempswatrue}
+\if@tempswa
+\newcommand*\@contactperson{}
+\newcommand*\contactperson[1]{\tud@trim@field\@contactperson{#1}}
+\newcommand*\@office{}
+\newrobustcmd*\office[1]{\tud@trim@field\@office{#1}}
+\newcommand*\@telephone{}
+\newrobustcmd*\telephone[1]{\tud@trim@field\@telephone{#1}}
+\newcommand*\@telefax{}
+\newrobustcmd*\telefax[1]{\tud@trim@field\@telefax{#1}}
+\newcommand*\tud@split@contactperson@do[2]{}
+\newcommand*\tud@split@contactperson@list{emailaddress,office,telephone,telefax}
+\fi
+%%%% From File: tudscr-localization.dtx (no git version info was found)
+\tud@localization@define{\authorname}
+\tud@localization@define{\contactname}
+\tud@localization@define{\contactpersonname}
+\tud@localization@define{\taskname}
+\tud@localization@define{\tasktext}
+\tud@localization@define{\namesname}
+\tud@localization@define{\issuedatetext}
+\tud@localization@define{\duedatetext}
+\tud@localization@define{\chairmanname}
+\tud@localization@define{\focusname}
+\tud@localization@define{\objectivesname}
+\tud@localization@define{\evaluationname}
+\tud@localization@define{\evaluationtext}
+\tud@localization@define{\contentname}
+\tud@localization@define{\assessmentname}
+\tud@localization@define{\gradetext}
+\tud@localization@define{\noticename}
+\tud@localization@german{\authorname}{Autor}
+\tud@localization@german{\contactname}{Kontakt}
+\tud@localization@german{\contactpersonname}{Ansprechpartner}
+\tud@localization@german{\taskname}{Aufgabenstellung}
+\tud@localization@german{\tasktext}{f\"ur die Anfertigung einer}
+\tud@localization@german{\namesname}{Name}
+\tud@localization@german{\issuedatetext}{Ausgeh\"andigt am}
+\tud@localization@german{\duedatetext}{Einzureichen am}
+\tud@localization@german{\chairmanname}{Pr\"ufungsausschussvorsitzender}
+\tud@localization@german{\focusname}{Schwerpunkte der Arbeit}
+\tud@localization@german{\objectivesname}{Ziele der Arbeit}
+\tud@localization@german{\evaluationname}{Gutachten}
+\tud@localization@german{\evaluationtext}{f\"ur die}
+\tud@localization@german{\contentname}{Inhalt}
+\tud@localization@german{\assessmentname}{Bewertung}
+\tud@localization@german{\gradetext}{%
+ Die Arbeit wird mit der Note \textbf{\@grade} bewertet.%
+}
+\tud@localization@german{\noticename}{Aushang}
+\tud@localization@english{\authorname}{Author}
+\tud@localization@english{\contactname}{Contact}
+\tud@localization@english{\contactpersonname}{Counterpart}
+\tud@localization@english{\taskname}{Task}
+\tud@localization@english{\tasktext}{for the preparation of a}
+\tud@localization@english{\namesname}{Name}
+\tud@localization@english{\issuedatetext}{Issued on}
+\tud@localization@english{\duedatetext}{Due date for submission}
+\tud@localization@english{\chairmanname}{Chairman of the Audit Committee}
+\tud@localization@english{\focusname}{Focus of work}
+\tud@localization@english{\objectivesname}{Objectives of work}
+\tud@localization@english{\evaluationname}{Evaluation}
+\tud@localization@english{\evaluationtext}{for the}
+\tud@localization@english{\contentname}{Content}
+\tud@localization@english{\assessmentname}{Assessment}
+\tud@localization@english{\gradetext}{%
+ The thesis is evaluated with a grade of \textbf{\@grade}.%
+}
+\tud@localization@english{\noticename}{Notice}
+%%%% From File: tudscr-supervisor.dtx (no git version info was found)
\newcommand*\tud@multiple@fields@output{}
\newcommand*\tud@multiple@fields@style{table}
\newcommand*\student{\author}
-\newlength\tud@len@authortable
+\tud@newdim\tud@dim@authortable
\newcommand*\tud@authortable@set{%
\begingroup%
\let\thanks\@gobble%
\let\footnote\@gobble%
\tud@multiple@split{@author}%
\tud@multiple@fields@preset{@author}{\null}{}%
- \setlength\tud@len@authortable{2em}%
+ \tud@setdim\tud@dim@authortable{2em}%
\def\@tempb##1{%
- \expandafter\ifx\csname @##1\endcsname\@empty\else%
- \expandafter\appto\expandafter\@tempa\expandafter{%
- \expandafter,\csname ##1name\endcsname%
- }%
- \fi%
+ \tud@if@strempty{\csname @##1\endcsname}{}{%
+ \eappto\@tempa{,\expandafter\noexpand\csname ##1name\endcsname}%
+ }%
}%
\def\@tempa{%
\namesname,\titlename,\issuedatetext,\duedatetext,\supervisorname%
@@ -113,14 +197,14 @@
\@tempb{discipline}%
\@for\@tempb:=\@tempa\do{%
\settowidth\@tempdima{\@tempb\tud@title@delimiter}%
- \ifdim\@tempdima>\tud@len@authortable\relax%
- \setlength\tud@len@authortable{\@tempdima}%
+ \ifdim\@tempdima>\tud@dim@authortable\relax%
+ \tud@setdim\tud@dim@authortable{\@tempdima}%
\fi%
}%
- \global\tud@len@authortable=\tud@len@authortable%
+ \global\tud@dim@authortable=\tud@dim@authortable%
\begingroup%
\setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative%
- \begin{tabular}{@{}p{\tud@len@authortable}}%
+ \begin{tabular}{@{}p{\tud@dim@authortable}}%
\ifx\@course\@empty\else%
\coursename\tud@title@delimiter\tabularnewline%
\fi%
@@ -154,8 +238,8 @@
}%
\tud@multiple@split{@author}%
\vskip\smallskipamount%
- \begin{tabular}{@{}p{\tud@len@authortable}%
- p{\dimexpr\textwidth-\tud@len@authortable-2\tabcolsep\relax}@{}}%
+ \begin{tabular}{@{}p{\tud@dim@authortable}%
+ p{\dimexpr\textwidth-\tabcolsep*2-\tud@dim@authortable\relax}@{}}%
\titlename\tud@title@delimiter & \tud@RaggedRight\textsf{\textbf{\@@title}}%
\end{tabular}%
\par%
@@ -164,17 +248,18 @@
\endgroup%
\noindent\ignorespaces%
}
+\newcommand*\@headline{}
\newenvironment{task}[1][]{%
\cleardoubleoddpage%
\let\@headline\@empty%
\TUD@parameter@family{tudpage}{%
- \TUD@parameter@def{headline}{\def\@headline{##1}}%
+ \TUD@parameter@def{headline}{\tud@trim@field\@headline{##1}}%
\TUD@parameter@let{heading}{headline}%
\TUD@parameter@let{line}{headline}%
\TUD@parameter@def{style}{\def\tud@multiple@fields@style{##1}}%
\TUD@parameter@handler@default{headline}%
}%
- \tudpage[pagestyle=empty,#1]%
+ \tudpage[{pagestyle=empty,#1}]%
\tudbookmark{\taskname}{task}%
\subsection*{%
\ifx\@headline\@empty%
@@ -187,10 +272,10 @@
\tud@authortable@set%
}{%
\def\tud@multiple@fields@output##1{%
- \ifstr{\tud@multiple@fields@style}{table}{%
+ \tud@if@strequal{\tud@multiple@fields@style}{table}{%
\def\and{%
\tabularnewline%
- \ifstr{\csuse{##1othername}}{}{}{%
+ \tud@if@strempty{\csuse{##1othername}}{}{%
\csuse{##1othername}\tud@title@delimiter%
}%
& \def\and{\tabularnewline &}%
@@ -204,17 +289,17 @@
\ifdim\parskip>\z@\vskip\parskip\else\vskip\topsep\fi\medskip%
\begingroup%
\setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative%
- \begin{tabular}{@{}p{\tud@len@authortable}l@{}}%
+ \begin{tabular}{@{}p{\tud@dim@authortable}l@{}}%
\ifx\@referee\@empty\else%
\refereename\tud@title@delimiter & %
- \tud@multiple@fields@output{referee}\tabularnewline[\smallskipamount]%
+ \tud@multiple@fields@output{referee}\tabularnewline[1\smallskipamount]%
\fi%
\supervisorname\tud@title@delimiter & %
- \tud@multiple@fields@output{supervisor}\tabularnewline[\smallskipamount]%
+ \tud@multiple@fields@output{supervisor}\tabularnewline[1\smallskipamount]%
\issuedatetext\tud@title@delimiter & \@issuedate\tabularnewline%
\duedatetext\tud@title@delimiter & \@duedate\tabularnewline%
\end{tabular}%
- \vskip\tud@len@signatureskip\noindent%
+ \vskip\tud@glue@signaturevskip\noindent%
\ifx\@chairman\@empty\else%
\begin{tabular}{@{}l@{}}%
\@chairman\tabularnewline%
@@ -234,7 +319,7 @@
\aftergroup\cleardoublepage%
}
\newcommand\taskform[3][]{%
- \begin{task}[#1]%
+ \begin{task}[{#1}]%
\ifblank{#2}{}{\minisec{\objectivesname}\smallskip#2}%
\ifblank{#3}{}{%
\minisec{\focusname}\smallskip%
@@ -248,13 +333,13 @@
\cleardoubleoddpage%
\let\@headline\@empty%
\TUD@parameter@family{tudpage}{%
- \TUD@parameter@def{headline}{\def\@headline{##1}}%
+ \TUD@parameter@def{headline}{\tud@trim@field\@headline{##1}}%
\TUD@parameter@let{heading}{headline}%
\TUD@parameter@let{line}{headline}%
\TUD@parameter@def{grade}{\def\@grade{##1}}%
\TUD@parameter@handler@default{headline}%
}%
- \tudpage[pagestyle=empty,#1]%
+ \tudpage[{pagestyle=empty,#1}]%
\tudbookmark{\evaluationname}{evaluation}%
\subsection*{%
\ifx\@headline\@empty%
@@ -268,17 +353,17 @@
}{%
\removelastskip%
\ifdim\parskip>\z@\vskip\parskip\else\vskip\topsep\fi%
- \setlength\@tempskipa{\smallskipamount}%
+ \tud@setglue\@tempskipa{\smallskipamount}%
\ifx\@grade\@empty\else%
\vskip\@tempskipa\noindent%
\gradetext%
- \setlength\@tempskipa{\bigskipamount}%
+ \tud@setglue\@tempskipa{\bigskipamount}%
\fi%
\ifx\@date\@empty\else%
\vskip\@tempskipa\noindent%
\ifx\@place\@empty\else\@place,\nobreakspace\fi\@date%
\fi%
- \vskip\tud@len@signatureskip\noindent%
+ \vskip\tud@glue@signaturevskip\noindent%
\ifx\@referee\@empty\let\@referee\@supervisor\fi%
\let\@tempa\refereename%
\def\and{%
@@ -299,7 +384,7 @@
\aftergroup\cleardoublepage%
}
\newcommand\evaluationform[5][]{%
- \begin{evaluation}[#1]%
+ \begin{evaluation}[{#1}]%
\ifblank{#2}{}{\minisec{\taskname}\smallskip#2}%
\ifblank{#3}{}{\minisec{\contentname}\smallskip#3}%
\ifblank{#4}{}{\minisec{\assessmentname}\smallskip#4}%
@@ -310,12 +395,12 @@
\cleardoubleoddpage%
\def\@headline{\noticename}%
\TUD@parameter@family{tudpage}{%
- \TUD@parameter@def{headline}{\def\@headline{##1}}%
+ \TUD@parameter@def{headline}{\tud@trim@field\@headline{##1}}%
\TUD@parameter@let{heading}{headline}%
\TUD@parameter@let{line}{headline}%
\TUD@parameter@handler@default{headline}%
}%
- \tudpage[pagestyle=empty,cdhead=date,#1]%
+ \tudpage[{pagestyle=empty,cdhead=date,#1}]%
\tudbookmark{\noticename}{notice}%
\ifx\@headline\@empty\else%
\section*{\@headline}%
@@ -330,10 +415,10 @@
\tud@multiple@fields@preset{@contactperson}{}{##1}%
\begin{tabular}[t]{@{}l@{}}%
\ignorespaces##1\tabularnewline%
+ \ifx\@emailaddress\@empty\else\@emailaddress\tabularnewline\fi%
\ifx\@office\@empty\else\@office\tabularnewline\fi%
\ifx\@telephone\@empty\else\@telephone\tabularnewline\fi%
\ifx\@telefax\@empty\else\@telefax\tabularnewline\fi%
- \ifx\@emailaddress\@empty\else\@emailaddress\tabularnewline\fi%
\end{tabular}%
\tud@multiple@fields@restore{@contactperson}%
\tud@multiple@@@split{##2}{\hfill}%
@@ -345,7 +430,7 @@
\aftergroup\cleardoublepage%
}
\newcommand\noticeform[3][]{%
- \begin{notice}[#1]%
+ \begin{notice}[{#1}]%
\ifblank{#2}{}{%
\ifx\@@title\@empty\else%
\minisec{\expandonce{\@@title}}\medskip%
@@ -360,85 +445,6 @@
}%
\end{notice}%
}
-%%% From File: tudscr-fields.dtx
-\newcommand*\@chairman{}
-\newcommand*\chairman[1]{\gdef\@chairman{#1}}
-\newcommand*\@grade{}
-\newcommand*\grade[1]{\gdef\@grade{#1}}
-\newcommand*\@headline{}
-\newcommand*\@issuedate{}
-\newcommand*\issuedate[1]{\tud@printdate{\@issuedate}{#1}}
-\newcommand*\@duedate{}
-\newcommand*\duedate[1]{\tud@printdate{\@duedate}{#1}}
-\@ifclassloaded{tudscrposter}{\@tempswafalse}{\@tempswatrue}
-\if@tempswa
-\newcommand*\@contactperson{}
-\newcommand*\contactperson[1]{\gdef\@contactperson{#1}}
-\newcommand*\@office{}
-\newrobustcmd*\office[1]{\gdef\@office{#1}}
-\newcommand*\@telephone{}
-\newrobustcmd*\telephone[1]{\gdef\@telephone{#1}}
-\newcommand*\@telefax{}
-\newrobustcmd*\telefax[1]{\gdef\@telefax{#1}}
-\newcommand*\tud@split@contactperson@do[2]{}
-\newcommand*\tud@split@contactperson@list{emailaddress,office,telephone,telefax}
-\fi
-%%% From File: tudscr-localization.dtx
-\tud@localization@define{\authorname}
-\tud@localization@define{\contactname}
-\tud@localization@define{\contactpersonname}
-\tud@localization@define{\taskname}
-\tud@localization@define{\tasktext}
-\tud@localization@define{\namesname}
-\tud@localization@define{\issuedatetext}
-\tud@localization@define{\duedatetext}
-\tud@localization@define{\chairmanname}
-\tud@localization@define{\focusname}
-\tud@localization@define{\objectivesname}
-\tud@localization@define{\evaluationname}
-\tud@localization@define{\evaluationtext}
-\tud@localization@define{\contentname}
-\tud@localization@define{\assessmentname}
-\tud@localization@define{\gradetext}
-\tud@localization@define{\noticename}
-\tud@localization@german{\authorname}{Autor}
-\tud@localization@german{\contactname}{Kontakt}
-\tud@localization@german{\contactpersonname}{Ansprechpartner}
-\tud@localization@german{\taskname}{Aufgabenstellung}
-\tud@localization@german{\tasktext}{f\"ur die Anfertigung einer}
-\tud@localization@german{\namesname}{Name}
-\tud@localization@german{\issuedatetext}{Ausgeh\"andigt am}
-\tud@localization@german{\duedatetext}{Einzureichen am}
-\tud@localization@german{\chairmanname}{Pr\"ufungsausschussvorsitzender}
-\tud@localization@german{\focusname}{Schwerpunkte der Arbeit}
-\tud@localization@german{\objectivesname}{Ziele der Arbeit}
-\tud@localization@german{\evaluationname}{Gutachten}
-\tud@localization@german{\evaluationtext}{f\"ur die}
-\tud@localization@german{\contentname}{Inhalt}
-\tud@localization@german{\assessmentname}{Bewertung}
-\tud@localization@german{\gradetext}{%
- Die Arbeit wird mit der Note \textbf{\@grade} bewertet.%
-}
-\tud@localization@german{\noticename}{Aushang}
-\tud@localization@english{\authorname}{Author}
-\tud@localization@english{\contactname}{Contact}
-\tud@localization@english{\contactpersonname}{Counterpart}
-\tud@localization@english{\taskname}{Task}
-\tud@localization@english{\tasktext}{for the preparation of a}
-\tud@localization@english{\namesname}{Name}
-\tud@localization@english{\issuedatetext}{Issued on}
-\tud@localization@english{\duedatetext}{Due date for submission}
-\tud@localization@english{\chairmanname}{Chairman of the Audit Committee}
-\tud@localization@english{\focusname}{Focus of work}
-\tud@localization@english{\objectivesname}{Objectives of work}
-\tud@localization@english{\evaluationname}{Evaluation}
-\tud@localization@english{\evaluationtext}{for the}
-\tud@localization@english{\contentname}{Content}
-\tud@localization@english{\assessmentname}{Assessment}
-\tud@localization@english{\gradetext}{%
- The thesis is evaluated with a grade of \textbf{\@grade}.%
-}
-\tud@localization@english{\noticename}{Notice}
\endinput
%%
%% End of file `tudscrsupervisor.sty'.
diff --git a/Master/texmf-dist/tex/latex/tudscr/twocolfix.sty b/Master/texmf-dist/tex/latex/tudscr/twocolfix.sty
index d1328fd1411..9d3f755df31 100644
--- a/Master/texmf-dist/tex/latex/tudscr/twocolfix.sty
+++ b/Master/texmf-dist/tex/latex/tudscr/twocolfix.sty
@@ -7,10 +7,11 @@
%% tudscr-twocolfix.dtx (with options: `package')
%%
%% 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.
%% ----------------------------------------------------------------------------
@@ -26,12 +27,11 @@
%%
%% The current maintainer and author of this work is Falk Hanisch.
%%
-%%% From File: tudscr-twocolfix.dtx
+%%%% From File: tudscr-twocolfix.dtx (no git version info was found)
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{twocolfix}[%
- 2021/07/15 v2.06n TUD-Script
- package
- (twocolumn layout bugfix)%
+ 2022/08/09 v2.06o TUD-Script
+ package (twocolumn layout bugfix)%
]
\long\def \@tempa [#1]{%
\@nodocument%