diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/tudscr/tudscrfonts.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/tudscr/tudscrfonts.sty | 1190 |
1 files changed, 635 insertions, 555 deletions
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'. |