diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/tudscr/tudscrfonts.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/tudscr/tudscrfonts.sty | 1382 |
1 files changed, 711 insertions, 671 deletions
diff --git a/Master/texmf-dist/tex/latex/tudscr/tudscrfonts.sty b/Master/texmf-dist/tex/latex/tudscr/tudscrfonts.sty index 1b028cd45f7..b4b704fdb7c 100644 --- a/Master/texmf-dist/tex/latex/tudscr/tudscrfonts.sty +++ b/Master/texmf-dist/tex/latex/tudscr/tudscrfonts.sty @@ -4,15 +4,15 @@ %% %% The original source files were: %% -%% tudscr-version.dtx (with options: `package') -%% tudscr-fonts.dtx (with options: `package,identify') -%% tudscr-base.dtx (with options: `load') -%% tudscr-comp.dtx (with options: `package,preset,fonts') -%% tudscr-fonts.dtx (with options: `package,option') -%% tudscr-comp.dtx (with options: `package,option,fonts') -%% tudscr-misc.dtx (with options: `package,execute,fonts') -%% tudscr-fonts.dtx (with options: `package,body') -%% tudscr-comp.dtx (with options: `package,body,fonts') +%% tudscr-version.dtx (with options: `package,fonts') +%% tudscr-fonts.dtx (with options: `package,fonts,identify') +%% tudscr-base.dtx (with options: `package,fonts,load') +%% tudscr-fonts.dtx (with options: `package,fonts,option') +%% 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') %% %% ============================================================================ %% @@ -42,136 +42,126 @@ %% ============================================================================ %% %%% From File: tudscr-version.dtx -\begingroup% - \catcode`\@11\relax% - \ifx\TUDVersion\undefined% - \newcommand*\@TUDVersion[1]{\gdef\TUDVersion{#1}}% - \else% - \newcommand*\@TUDVersion[1]{% +\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.17}% + } + \else + \newcommand*\TUD@Version@Check[1]{% \def\@tempa{#1}% - \ifx\TUDVersion\@tempa\else% + \ifx\TUD@Version\@tempa\else% \@latex@warning@no@line{% - \noexpand\TUDVersion\space is `\TUDVersion',\MessageBreak% + \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-KOMA-Script-Bundle versions% }% \fi% - }% - \fi% - \@TUDVersion{2016/06/17 v2.04e TUD-KOMA-Script}% -\endgroup% + } + \fi + \TUD@Version@Check{2016/07/26 v2.05 TUD-KOMA-Script} +\endgroup +\NeedsTeXFormat{LaTeX2e} \providecommand*\tudscrmail{tudscr@gmail.com} \@ifundefined{TUDScript}{% - \DeclareRobustCommand{\TUDScript}{% + \DeclareRobustCommand\TUDScript{% \ifdin{TUD-KOMA-SCRIPT}{% \textsf{T\kern.05em U\kern.05em D\kern.1em-\kern.1em}\KOMAScript% }\csname xspace\endcsname% }% }{} %%% From File: tudscr-fonts.dtx -\NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{% - tudscrfonts% -}[% - 2016/06/17 v2.04e TUD-KOMA-Script - package - (corporate design fonts)% +\ProvidesPackage{tudscrfonts}[% + 2016/07/26 v2.05 TUD-KOMA-Script + package (corporate design fonts)% ] -\ifcsname KOMAClassName\endcsname\else% - \RequirePackage{scrextend}[2013/12/19]% +\ifcsname KOMAClassName\endcsname\else + \RequirePackage{scrextend}[2013/12/19] \fi -\RequirePackage{trimspaces}[2009/09/17] +\@tempswafalse% +\@for\@tempa:={% + tudbook,tudbeamer,tudfax,tudform,tudhaus,tudletter,% + tudposter,tudmathposter,tudscrbookold,tudscrreprtold,tudscrartclold% +}\do{% + \@ifclassloaded{\@tempa}{% + \if@tempswa\else\@tempswatrue\let\@tempb\@tempa\fi% + }{}% +}% +\if@tempswa% + \@ifpackageloaded{fix-tudscrfonts}{}{% + \PackageWarning{tudscrfonts}{% + As you loaded class `\@tempb', you should\MessageBreak% + load `fix-tudscrfonts' before the class\MessageBreak% + with `\string\RequirePackage'% + }% + }% +\fi% %%% From File: tudscr-base.dtx -\RequirePackage{tudscrbase}[\TUDVersion] -%%% From File: tudscr-comp.dtx -\newif\if@tud@oldclass -\@ifclassloaded{tudbook}{\@tud@oldclasstrue}{}% -\@ifclassloaded{tudbeamer}{\@tud@oldclasstrue}{}% -\@ifclassloaded{tudfax}{\@tud@oldclasstrue}{}% -\@ifclassloaded{tudform}{\@tud@oldclasstrue}{}% -\@ifclassloaded{tudhaus}{\@tud@oldclasstrue}{}% -\@ifclassloaded{tudletter}{\@tud@oldclasstrue}{}% -\@ifclassloaded{tudposter}{\@tud@oldclasstrue}{}% -\@ifclassloaded{tudmathposter}{\@tud@oldclasstrue}{}% -\newif\if@tud@oldscrclass -\@ifclassloaded{tudscrbookold}{\@tud@oldscrclasstrue}{}% -\@ifclassloaded{tudscrreprtold}{\@tud@oldscrclasstrue}{}% -\@ifclassloaded{tudscrartclold}{\@tud@oldscrclasstrue}{}% +\RequirePackage{tudscrbase}[\TUD@Version] %%% From File: tudscr-fonts.dtx -\newif\if@tud@univers -\newif\if@tud@dinbold -\newcommand*\tud@univers{lun} -\newcommand*\tud@dinbold{0m6} -\newif\if@tud@fontspec -\TUD@key{fontspec}[true]{% - \PackageWarning{tudscrfonts} - {% - The option key `fontspec' is deprecated.\MessageBreak% - You should load the package `fontspec' manually% - }% - \TUD@set@ifkey{fontspec}{@tud@fontspec}{#1}% -} -\AtEndOfPackage% -{% - \TUD@key{fontspec}[]% - {% - \PackageError{tudscrfonts}% - {Option `fontspec' too late}{% - Option `fontspec' can only be set while loading the\MessageBreak% - package `tudscrfonts' - but you have tried to set it up later.% - }% - \FamilyKeyStateProcessed% - }% - \if@tud@fontspec% - \RequirePackage{fontspec}[2014/06/21]% - \fi% -} -\AfterPackage*{fontspec}{\@tud@fontspectrue} -\RequirePackage{textcase}[2004/10/07] -\newcommand*\tud@uclcnotmath{% - \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@uclcnotmath -}{}{\tud@patch@wrn{@uclcnotmath}}% -\newcommand*\tud@font@heading{\dinbn\tud@raggedright} -\newcommand*\tud@cdfont{1} +\newif\if@tud@x@fontspec@enabled +\AfterPackage*{fontspec}{\@tud@x@fontspec@enabledtrue} +\newif\if@tud@cdfont@din +\newif\if@tud@cdfont@ultrabold +\@tud@cdfont@dintrue +\newcommand*\tud@cdfont@num{1} \TUD@key{cdfont}[true]{% \TUD@set@numkey{cdfont}{@tempa}{% \TUD@numkey@bool,% {light}{1},{lightfont}{1},{lite}{1},{litefont}{1},{noheavyfont}{1},% - {heavy}{2},{heavyfont}{2},% - {nodin}{3},{nodinbold}{3},{noDIN}{3},{noDINBold}{3},% - {din}{4},{dinbold}{4},{DIN}{4},{DINBold}{4},% - {nomath}{8},{nocdmath}{8},% - {serifmath}{8},{serif}{8},{nosansmath}{8},{nosans}{8},% - {math}{9},{cdmath}{9},{sansmath}{9},{sans}{9},% - {upgreek}{10},{upright}{10},{uprightgreek}{10},{uprightGreek}{10},% - {slgreek}{11},{slanted}{11},{slantedgreek}{11},{slantedGreek}{11},% - {fontspec}{12},{luatex}{12},{lualatex}{12}{xetex}{12},{xelatex}{12},% - {nofontspec}{13},{nfss}{13},{pdftex}{13},{pdflatex}{13}% + {heavy}{2},{heavyfont}{2},{bold}{2},{boldfont}{2},% + {normalbold}{3},{boldnormal}{3},% + {ultrabold}{4},{boldultra}{4},{heavybold}{4},{boldheavy}{4},% + {extendedbold}{4},{boldextended}{4},% + {nodin}{5},{nodinbold}{5},{noDIN}{5},{noDINBold}{5},% + {din}{6},{dinbold}{6},{DIN}{6},{DINBold}{6},% + {nomath}{10},{nocdmath}{10},% + {serifmath}{10},{serif}{10},{nosansmath}{10},{nosans}{10},% + {math}{11},{cdmath}{11},{sansmath}{11},{sans}{11},% + {upgreek}{12},{upright}{12},{uprightgreek}{12},{uprightGreek}{12},% + {slgreek}{13},{slanted}{13},{slantedgreek}{13},{slantedGreek}{13},% + {fontspec}{14},{luatex}{14},{lualatex}{14}{xetex}{14},{xelatex}{14},% + {nofontspec}{15},{nfss}{15},{pdftex}{15},{pdflatex}{15}% }{#1}% \ifx\FamilyKeyState\FamilyKeyStateProcessed% \ifcase\@tempa\relax% false - \def\tud@cdfont{0}% - \if@atdocument\tud@font@set\fi% + \renewcommand*\tud@cdfont@num{0}% + \TUD@SpecialOptionAtDocument{tud@font@set}% \or% true - \def\tud@cdfont{1}% - \if@atdocument\tud@font@set\fi% + \renewcommand*\tud@cdfont@num{1}% + \TUD@SpecialOptionAtDocument{tud@font@set}% \or% heavy - \def\tud@cdfont{2}% - \if@atdocument\tud@font@set\fi% + \renewcommand*\tud@cdfont@num{2}% + \TUD@SpecialOptionAtDocument{tud@font@set}% + \or% normalbold + \@tud@cdfont@ultraboldfalse% + \ifcase\tud@cdfont@num\relax% false to true + \renewcommand*\tud@cdfont@num{1}% + \fi% + \TUD@SpecialOptionAtDocument{tud@font@set}% + \or% ultrabold + \@tud@cdfont@ultraboldtrue% + \ifcase\tud@cdfont@num\relax% false to true + \renewcommand*\tud@cdfont@num{1}% + \fi% + \TUD@SpecialOptionAtDocument{tud@font@set}% \or% nodin - \renewcommand*\tud@font@heading{\tud@RaggedRight}% + \@tud@cdfont@dinfalse% \or% din - \renewcommand*\tud@font@heading{\dinbn\tud@raggedright}% + \@tud@cdfont@dintrue% \or% nohead + \PackageWarning{tudscrfonts}{Option `cdfont=nohead' is not available}% \or% head + \PackageWarning{tudscrfonts}{Option `cdfont=head' is not available}% \or% heavyhead + \PackageWarning{tudscrfonts}{Option `cdfont=heavyhead' is not available}% \or% nomath \TUDoptions{cdmath=false}% \or% math @@ -186,16 +176,38 @@ \TUDoptions{fontspec=false}% \fi% \else% - \KOMAoptions{fontsize=#1}% - \ifcase\tud@cdfont\relax% false to true - \def\tud@cdfont{1}% - \if@atdocument\tud@font@set\fi% + \ifdimen{#1}{% + \ifdim#1>\z@\relax% + \TUD@KOMAoptions{fontsize=#1}% + \csname @tud@fontsize@settrue\endcsname% + \ifcase\tud@cdfont@num\relax% false to true + \renewcommand*\tud@cdfont@num{1}% + \TUD@SpecialOptionAtDocument{tud@font@set}% + \fi% + \FamilyKeyStateProcessed% + \fi% + }{}% + \fi% +} +\newif\if@tud@relspacing +\TUD@key{relspacing}[true]{% + \TUD@set@numkey{relspacing}{@tempa}{% + \TUD@numkey@bool,% + {absolute}{0},{classic}{0},{standard}{0},% + {relative}{1},{fontsize}{1},{font}{1},{size}{1}% + }{#1}% + \ifx\FamilyKeyState\FamilyKeyStateProcessed% + \ifcase\@tempa\relax% false + \@tud@relspacingfalse% + \or% true + \@tud@relspacingtrue% \fi% + \TUD@SpecialOptionAtDocument{tud@font@skip@set}% \fi% } \DefineFamilyMember{KOMA} \DefineFamilyKey{KOMA}{fontsize}{% - \AtEndOfFamilyOptions{\if@atdocument\tud@font@skip@set\fi}% + \TUD@SpecialOptionAtDocument{tud@font@skip@set}% \FamilyKeyStateProcessed% } \bool@lock{@tud@cdmath} @@ -210,10 +222,10 @@ \ifx\FamilyKeyState\FamilyKeyStateProcessed% \ifcase\@tempa\relax% false \bool@set@lock{@tud@cdmath}{false}% - \if@atdocument\tud@font@math@set\fi% + \TUD@SpecialOptionAtDocument{tud@font@math@set}% \or% true \bool@set@lock{@tud@cdmath}{true}% - \if@atdocument\tud@font@math@set\fi% + \TUD@SpecialOptionAtDocument{tud@font@math@set}% \or% upgreek \TUDoptions{slantedgreek=false}% \or% slgreek @@ -226,27 +238,51 @@ \TUD@set@ifkey{slantedgreek}{@tud@slantedgreek}{#1}% \ifx\FamilyKeyState\FamilyKeyStateProcessed% \bool@set@lock{@tud@slantedgreek}{#1}% - \if@atdocument\tud@font@math@set\fi% + \TUD@SpecialOptionAtDocument{tud@font@math@set}% \fi% } \TUD@key{slantedGreek}[true]{\TUDoptions{slantedgreek=#1}} %%% From File: tudscr-comp.dtx -\newcommand*\TUD@deprecated@key[2]{% +\newcommand*\TUD@key@deprecated[2]{% \PackageWarning{tudscrfonts}% {% - The option key `#1' is deprecated.\MessageBreak% + The option key `#1' is deprecated\MessageBreak% It's recommended to use `#2'\MessageBreak% instead% }% \TUDoptions{#2}% } +\TUD@key{fontspec}[true]{% + \PackageWarning{tudscrfonts}% + {% + The option key `fontspec' is deprecated\MessageBreak% + You should load the package `fontspec' manually% + }% + \TUD@set@ifkey{fontspec}{@tud@x@fontspec@enabled}{#1}% +} +\AtEndOfPackage% +{% + \TUD@key{fontspec}[]% + {% + \PackageError{tudscrfonts}% + {Option `fontspec' too late}{% + Option `fontspec' can only be set while loading the\MessageBreak% + package `tudscrfonts' + but you have tried to set it up later.% + }% + \FamilyKeyStateProcessed% + }% + \if@tud@x@fontspec@enabled% + \RequirePackage{fontspec}[2014/06/21]% + \fi% +} \TUD@key{cdfonts}[true]{% \TUD@set@ifkey{cdfonts}{@tempswa}{#1}% \ifx\FamilyKeyState\FamilyKeyStateProcessed% \if@tempswa% - \TUD@deprecated@key{cdfonts=#1}{cdfont=true}% + \TUD@key@deprecated{cdfonts=#1}{cdfont=true}% \else% - \TUD@deprecated@key{cdfonts=#1}{cdfont=false}% + \TUD@key@deprecated{cdfonts=#1}{cdfont=false}% \fi% \fi% } @@ -254,9 +290,9 @@ \TUD@set@ifkey{tudfonts}{@tempswa}{#1}% \ifx\FamilyKeyState\FamilyKeyStateProcessed% \if@tempswa% - \TUD@deprecated@key{tudfonts=#1}{cdfont=true}% + \TUD@key@deprecated{tudfonts=#1}{cdfont=true}% \else% - \TUD@deprecated@key{tudfonts=#1}{cdfont=false}% + \TUD@key@deprecated{tudfonts=#1}{cdfont=false}% \fi% \fi% } @@ -264,9 +300,9 @@ \TUD@set@ifkey{heavyfont}{@tempswa}{#1}% \ifx\FamilyKeyState\FamilyKeyStateProcessed% \if@tempswa% - \TUD@deprecated@key{heavyfont}{cdfont=heavy}% + \TUD@key@deprecated{heavyfont}{cdfont=heavy}% \else% - \TUD@deprecated@key{heavyfont=#1}{cdfont=true}% + \TUD@key@deprecated{heavyfont=#1}{cdfont=true}% \fi% \fi% } @@ -274,9 +310,9 @@ \TUD@set@ifkey{din}{@tempswa}{#1}% \ifx\FamilyKeyState\FamilyKeyStateProcessed% \if@tempswa% - \TUD@deprecated@key{din}{cdfont=din}% + \TUD@key@deprecated{din}{cdfont=din}% \else% - \TUD@deprecated@key{din=#1}{cdfont=nodin}% + \TUD@key@deprecated{din=#1}{cdfont=nodin}% \fi% \fi% } @@ -284,9 +320,9 @@ \TUD@set@ifkey{nodin}{@tempswa}{#1}% \ifx\FamilyKeyState\FamilyKeyStateProcessed% \if@tempswa% - \TUD@deprecated@key{nodin}{cdfont=nodin}% + \TUD@key@deprecated{nodin}{cdfont=nodin}% \else% - \TUD@deprecated@key{nodin=#1}{cdfont=din}% + \TUD@key@deprecated{nodin=#1}{cdfont=din}% \fi% \fi% } @@ -294,9 +330,9 @@ \TUD@set@ifkey{noDIN}{@tempswa}{#1}% \ifx\FamilyKeyState\FamilyKeyStateProcessed% \if@tempswa% - \TUD@deprecated@key{noDIN}{cdfont=nodin}% + \TUD@key@deprecated{noDIN}{cdfont=nodin}% \else% - \TUD@deprecated@key{noDIN=#1}{cdfont=din}% + \TUD@key@deprecated{noDIN=#1}{cdfont=din}% \fi% \fi% } @@ -304,9 +340,9 @@ \TUD@set@ifkey{sansmath}{@tempswa}{#1}% \ifx\FamilyKeyState\FamilyKeyStateProcessed% \if@tempswa% - \TUD@deprecated@key{sansmath}{cdmath=true}% + \TUD@key@deprecated{sansmath}{cdmath=true}% \else% - \TUD@deprecated@key{sansmath=#1}{cdmath=false}% + \TUD@key@deprecated{sansmath=#1}{cdmath=false}% \fi% \fi% } @@ -314,31 +350,31 @@ \TUD@set@ifkey{serifmath}{@tempswa}{#1}% \ifx\FamilyKeyState\FamilyKeyStateProcessed% \if@tempswa% - \TUD@deprecated@key{serifmath}{cdmath=false}% + \TUD@key@deprecated{serifmath}{cdmath=false}% \else% - \TUD@deprecated@key{serifmath=#1}{cdmath=true}% + \TUD@key@deprecated{serifmath=#1}{cdmath=true}% \fi% \fi% } \newcommand*\tud@v@comp{\tud@v@last} \TUD@key{tudscrver}[last]{% - \ifcsvoid{tud@v@#1}{% - \def\tud@v@comp{0}% + \tud@v@get\@tempa{#1}% + \ifcsundef{tud@v@\@tempa}{% \PackageWarningNoLine{tudscrfonts}% {% - You have set option `tudscrver' to `#1', but\MessageBreak% + You have set option `tudscrver' to `\@tempa', but\MessageBreak% this value is not supported. Because of this, the\MessageBreak% value for `tudscrver' was set to `first'% }% - \FamilyKeyStateProcessed% + \def\tud@v@comp{0}% }{% \PackageInfoNoLine{tudscrfonts}% {% - Switching compatibility level to `#1'% + Switching compatibility level to `\@tempa'% }% - \edef\tud@v@comp{\@nameuse{tud@v@#1}}% - \FamilyKeyStateProcessed% + \edef\tud@v@comp{\csuse{tud@v@\@tempa}}% }% + \FamilyKeyStateProcessed% } \AtEndOfPackage% {% @@ -352,155 +388,311 @@ \FamilyKeyStateProcessed% }% } -\@namedef{tud@v@first}{0} -\@namedef{tud@v@2.02}{0} -\@namedef{tud@v@v2.02}{0} -\@namedef{tud@v@2.03}{1} -\@namedef{tud@v@v2.03}{1} -\@namedef{tud@v@2.04}{2} -\@namedef{tud@v@v2.04}{2} -\@namedef{tud@v@last}{2} -\newcommand*\tud@ifverlower[1]{% - \ifnum\tud@v@comp<\@nameuse{tud@v@#1}\relax% - \expandafter\@firstoftwo% - \else% - \expandafter\@secondoftwo% - \fi% +\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.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@last}{3} +\newcommand*\tud@v@get[2]{% + \begingroup% + \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}% + }% + \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% + }{% + \def\tud@reserved{% + \ClassWarningNoLine{\TUD@Class@Name}{%PackageWarning! + Erroneous usage of `\string\tud@if@v@lower'.\MessageBreak% + There's no defined macro `\string\tud@v@\@tempa'% + }% + \endgroup\@firstoftwo% + }% + }% + \tud@reserved% } %%% From File: tudscr-misc.dtx +\newcommand*\TUD@SpecialOptionAtDocument[1]{} \DeclareOption*{\KOMAoptions{\CurrentOption}} -\TUDExecuteOptions{cdfont=true} \TUDProcessOptions\relax %%% From File: tudscr-fonts.dtx -\newcommand*\tud@font@greek@loop[1]{% - \@for\@tempa:={% - Gamma,Delta,Theta,Lambda,Xi,Pi,Sigma,Upsilon,Phi,Psi,Omega% - }\do{#1{\@tempa}}% -} -\newcommand*\tud@font@greek@declare[1]{% - \edef\@tempb{% - \noexpand\DeclareMathSymbol{\csname tud@up#1\endcsname}% - {\noexpand\mathalpha}{operators}{\the\@tempcnta}% - }\@tempb% - \edef\@tempb{% - \noexpand\DeclareMathSymbol{\csname tud@var#1\endcsname}% - {\noexpand\mathalpha}{letters}{\the\@tempcnta}% - }\@tempb% - \csletcs{tud@#1}{tud@up#1}% - \advance \@tempcnta by 1% -} -\@tempcnta=\z@\relax -\tud@font@greek@loop\tud@font@greek@declare +\newcommand*\tud@univers{lun} +\newif\if@tud@univers +\newif\if@tud@universmath +\newcommand*\tud@dinbold{0m6} +\newif\if@tud@dinbold +\newif\if@tud@dinboldmath +\newcommand*\tud@x@fontspec@noerror{} +\IfFileExists{expl3.sty}{\@tempswatrue}{\@tempswafalse} +\if@tempswa + \RequirePackage{expl3}[2016/05/18] + \ExplSyntaxOn + \renewcommand*\tud@x@fontspec@noerror{% + \__fontspec_font_suppress_not_found_error: + \msg_redirect_name:nnn {fontspec}{font-not-found}{none} + }% + \ExplSyntaxOff +\fi \newcommand*\tud@font@check{% - \if@tud@fontspec% - \edef\@tempa{% - \lowercase{\noexpand\IfFileExists{OT1\tud@univers.fd}}% - }% - \edef\@tempb{% - \lowercase{\noexpand\IfFileExists{OT1\tud@dinbold.fd}}% - }% - \def\@tempc##1{% - \PackageInfoNoLine{tudscrfonts}% - {% - `##1' fonts for math typesetting not found\MessageBreak% - Please use one of the installation scripts for the\MessageBreak% - tudscr-bundle mentioned in the manual% - }% + \edef\@tempa##1##2{\lowercase{\noexpand\IfFileExists{##1##2.fd}}}% + \def\@tempb##1{% + \ifnum\tud@cdfont@num>\z@\relax% true/heavy + \if@tud@cdmath% + \PackageWarningNoLine{tudscrfonts}% + {% + `##1' fonts for math typesetting not found\MessageBreak% + Please use one of the installation scripts for the\MessageBreak% + tudscr-bundle mentioned in the manual% + }% + \fi% + \fi% + }% + \@tempa{OT1}{\tud@univers}{\@tud@universmathtrue}{\@tempb{Univers}}% + \@tempa{OT1}{\tud@dinbold}{\@tud@dinboldmathtrue}{\@tempb{DIN Bold}}% + \if@tud@x@fontspec@enabled% + \def\@tempc##1##2{% + \fontspec{##1}% + \expandafter\ifx\the\font\nullfont% + ##2% + \ifnum\tud@cdfont@num>\z@\relax% true/heavy + \PackageWarningNoLine{tudscrfonts}% + {% + `##1' fonts not found for encoding `\encodingdefault'\MessageBreak% + It seems, you haven't installed the required\MessageBreak% + OTF-font on your system. A fallback layout is used% + }% + \fi% + \fi% }% + \begingroup% + \tud@x@fontspec@noerror% + \global\@tud@universtrue% + \@tempc{Univers Light}{\global\@tud@universfalse}% + \@tempc{Univers}{\global\@tud@universfalse}% + \@tempc{Univers Bold}{\global\@tud@universfalse}% + \@tempc{Univers Black}{\global\@tud@universfalse}% + \@tempc{Univers Light Oblique}{\global\@tud@universfalse}% + \@tempc{Univers Oblique}{\global\@tud@universfalse}% + \@tempc{Univers Bold Oblique}{\global\@tud@universfalse}% + \@tempc{Univers Black Oblique}{\global\@tud@universfalse}% + \global\@tud@dinboldtrue% + \@tempc{DIN Bold}{\global\@tud@dinboldfalse}% + \endgroup% \else% - \edef\@tempa{% - \lowercase{\noexpand\IfFileExists{\encodingdefault\tud@univers.fd}}% - }% - \edef\@tempb{% - \lowercase{\noexpand\IfFileExists{\encodingdefault\tud@dinbold.fd}}% - }% \def\@tempc##1{% - \@tempswafalse% - \ifstr{OT1}{\encodingdefault}{\@tempswatrue}{} - \ifstr{T1}{\encodingdefault}{\@tempswatrue}{} - \PackageWarningNoLine{tudscrfonts}% - {% - `##1' fonts not found for encoding `\encodingdefault'.\MessageBreak% - \if@tempswa% - Please use one of the installation scripts for the\MessageBreak% - tudscr-bundle mentioned in the manual.\MessageBreak% - \else% - Please choose a possible encoding (`OT1' or `T1').\MessageBreak% - \fi% - A fallback layout is used% - }% + \ifnum\tud@cdfont@num>\z@\relax% true/heavy + \@tempswafalse% + \ifstr{OT1}{\encodingdefault}{\@tempswatrue}{}% + \ifstr{T1}{\encodingdefault}{\@tempswatrue}{}% + \PackageWarningNoLine{tudscrfonts}% + {% + `##1' fonts not found for encoding `\encodingdefault'\MessageBreak% + \if@tempswa% + Please use one of the installation scripts for the\MessageBreak% + tudscr-bundle mentioned in the manual.\MessageBreak% + \else% + Please choose a possible encoding (`OT1' or `T1').\MessageBreak% + \fi% + A fallback layout is used% + }% + \fi% }% + \@tempa{\encodingdefault}% + {\tud@univers}{\@tud@universtrue}{\@tempc{Univers}}% + \@tempa{\encodingdefault}% + {\tud@dinbold}{\@tud@dinboldtrue}{\@tempc{DIN Bold}}% \fi% - \@tempa{\@tud@universtrue}{\@tempc{Univers}}% - \@tempb{\@tud@dinboldtrue}{\@tempc{DIN Bold}}% \undef\tud@font@check% } -\newcommand*\tud@font@init{% - \newcommand*\textuln{}% - \newcommand*\texturn{}% - \newcommand*\textubn{}% - \newcommand*\textuxn{}% - \newcommand*\textuls{}% - \newcommand*\texturs{}% - \newcommand*\textubs{}% - \newcommand*\textuxs{}% - \newcommand*\textdbn{}% - \DeclareTextFontCommand{\textuln}{\univln}% - \DeclareTextFontCommand{\texturn}{\univrn}% - \DeclareTextFontCommand{\textubn}{\univbn}% - \DeclareTextFontCommand{\textuxn}{\univxn}% - \DeclareTextFontCommand{\textuls}{\univls}% - \DeclareTextFontCommand{\texturs}{\univrs}% - \DeclareTextFontCommand{\textubs}{\univbs}% - \DeclareTextFontCommand{\textuxs}{\univxs}% - \DeclareTextFontCommand{\textdbn}{\dinbn}% - \undef\tud@font@init@fontspec% - \undef\tud@fontface% - \undef\tud@fontspec@flag% - \undef\tud@fontspec@error% - \undef\tud@font@init@nfss% - \undef\tud@font@init% -} -\newif\if@tud@fontspec@missing -\newcommand*\tud@font@init@fontspec{} -\IfFileExists{xparse.sty}{\@tempswatrue}{\@tempswafalse}% -\if@tempswa - \RequirePackage{xparse} - \newcommand*\tud@fontspec@flag{\global\@tud@fontspec@missingtrue\@gobbletwo}% - \NewDocumentCommand\tud@fontface{mmo}{% - \global\@tud@fontspec@missingfalse% - \newfontface#1{#2}[#3]% - \if@tud@fontspec@missing% - \renewrobustcmd*#1{}% +\RequirePackage{trimspaces}[2009/09/17] +\newif\if@tud@x@mweights@enabled +\AfterPackage*{mweights}{\@tud@x@mweights@enabledtrue} +\newcommand*\tud@font@set{% + \if@atdocument% + \ifnum\tud@cdfont@num>\z@\relax% true/heavy + \if@tud@univers\else% + \PackageWarning{tudscrfonts}% + {`Univers' fonts not found}% + \fi% + \if@tud@dinbold\else% + \PackageWarning{tudscrfonts}% + {`DIN Bold' fonts not found}% + \fi% \fi% - }% - \ExplSyntaxOn - \renewcommand*\tud@font@init@fontspec{% - \cs_set_eq:NN \tud@fontspec@error \__fontspec_error:nx - \cs_set_eq:NN \__fontspec_error:nx \tud@fontspec@flag - \tud@fontface\univln{Univers Light}[NFSSFamily=UniversLight]% - \tud@fontface\univrn{Univers}[NFSSFamily=UniversRegular]% - \tud@fontface\univbn{Univers Bold}[NFSSFamily=UniversBold]% - \tud@fontface\univxn{Univers Black}[NFSSFamily=UniversBlack]% - \tud@fontface\univls{Univers Light Oblique}[NFSSFamily=UniversLightOblique]% - \tud@fontface\univrs{Univers Oblique}[NFSSFamily=UniversRegularOblique]% - \tud@fontface\univbs{Univers Bold Oblique}[NFSSFamily=UniversBoldOblique]% - \tud@fontface\univxs{Univers Black Oblique}[NFSSFamily=UniversBlackOblique]% - \tud@fontface\@dinbn{DIN Bold}[NFSSFamily=DINBold,BoldFont = DIN Bold]% - \if@tud@fontspec@missing% - \newrobustcmd*\dinbn{\sectfont}% - \else% - \if@tud@dinbold% - \newrobustcmd*\dinbn{\@dinbn\mathversion{dinbold}}% + \fi% + \ifcase\tud@cdfont@num\relax% false + \tud@cmd@restore{rmdefault}% + \tud@cmd@restore{sfdefault}% + \tud@cmd@restore{ttdefault}% + \tud@cmd@restore{bfdefault}% + \tud@cmd@restore{mddefault}% + \tud@cmd@restore{itdefault}% + \tud@cmd@restore{familydefault}% + \tud@cmd@restore{seriesdefault}% + \tud@cmd@restore{shapedefault}% + \if@tud@x@mweights@enabled% + \tud@cmd@restore{bfseries@rm}% + \tud@cmd@restore{bfseries@sf}% + \tud@cmd@restore{bfseries@tt}% + \tud@cmd@restore{mdseries@rm}% + \tud@cmd@restore{mdseries@sf}% + \tud@cmd@restore{mdseries@tt}% + \fi% + \bool@std@lock{@tud@cdmath}{false}% + \else% true/heavy + \tud@cmd@store{rmdefault}% + \tud@cmd@store{sfdefault}% + \tud@cmd@store{ttdefault}% + \tud@cmd@store{bfdefault}% + \tud@cmd@store{mddefault}% + \tud@cmd@store{itdefault}% + \tud@cmd@store{familydefault}% + \tud@cmd@store{seriesdefault}% + \tud@cmd@store{shapedefault}% + \if@tud@x@mweights@enabled% + \tud@cmd@store{bfseries@rm}% + \tud@cmd@store{bfseries@sf}% + \tud@cmd@store{bfseries@tt}% + \tud@cmd@store{mdseries@rm}% + \tud@cmd@store{mdseries@sf}% + \tud@cmd@store{mdseries@tt}% + \fi% + \bool@std@lock{@tud@cdmath}{true}% + \if@tud@univers% + \if@tud@x@fontspec@enabled% + \setsansfont{Univers}[% + FontFace = {l}{\updefault}{Univers Light},% + FontFace = {m}{\updefault}{Univers},% + FontFace = {b}{\updefault}{Univers Bold},% + FontFace = {bx}{\updefault}{Univers Bold},% + FontFace = {eb}{\updefault}{Univers Black},% + FontFace = {l}{\sldefault}{Univers Light Oblique},% + FontFace = {m}{\sldefault}{Univers Oblique},% + FontFace = {b}{\sldefault}{Univers Bold Oblique},% + FontFace = {bx}{\sldefault}{Univers Bold Oblique},% + FontFace = {eb}{\sldefault}{Univers Black Oblique},% + NFSSFamily = \tud@univers% + ]% + \setmonofont{LMMono10-Regular}[% + FontFace = {l}{\updefault}{LMMonoLt10-Regular},% + FontFace = {m}{\updefault}{LMMono10-Regular},% + FontFace = {b}{\updefault}{LMMonoLt10-Bold},% + FontFace = {bx}{\updefault}{LMMonoLt10-Bold},% + FontFace = {eb}{\updefault}{LMMonoLt10-Bold},% + FontFace = {l}{\sldefault}{LMMonoLt10-Oblique},% + FontFace = {m}{\sldefault}{LMMonoSlant10-Regular},% + FontFace = {b}{\sldefault}{LMMonoLt10-BoldOblique},% + FontFace = {bx}{\sldefault}{LMMonoLt10-BoldOblique},% + FontFace = {eb}{\sldefault}{LMMonoLt10-BoldOblique},% + NFSSFamily = \tud@univers t% + ]% \else% - \newrobustcmd*\dinbn{\@dinbn}% + \renewcommand*\sfdefault{\tud@univers}% + \renewcommand*\ttdefault{\tud@univers t}% + \fi% + \ifnum\tud@cdfont@num=\@ne\relax% true + \if@tud@cdfont@ultrabold% ultrabold + \renewcommand*\bfdefault{b}% + \else% normalbold + \renewcommand*\bfdefault{m}% + \fi% + \renewcommand*\mddefault{l}% + \if@tud@x@mweights@enabled% + \def\bfseries@rm{m}% + \def\bfseries@sf{m}% + \def\bfseries@tt{m}% + \def\mdseries@rm{l}% + \def\mdseries@sf{l}% + \def\mdseries@tt{l}% + \fi% + \else% heavy + \if@tud@cdfont@ultrabold% ultrabold + \renewcommand*\bfdefault{eb}% + \else% normalbold + \renewcommand*\bfdefault{b}% + \fi% + \renewcommand*\mddefault{m}% + \if@tud@x@mweights@enabled% + \def\bfseries@rm{b}% + \def\bfseries@sf{b}% + \def\bfseries@tt{b}% + \def\mdseries@rm{m}% + \def\mdseries@sf{m}% + \def\mdseries@tt{m}% + \fi% \fi% + \renewcommand*\rmdefault{\sfdefault}% + \renewcommand*\itdefault{\sldefault}% \fi% - \cs_set_eq:NN \__fontspec_error:nx \tud@fontspec@error - }% - \ExplSyntaxOff -\fi% -\newcommand*\tud@font@init@nfss{% + \renewcommand*\familydefault{\sfdefault}% + \renewcommand*\seriesdefault{\mddefault}% + \renewcommand*\shapedefault{\updefault}% + \fi% + \if@tud@x@mweights@enabled% + \edef\rmdef@ult{\rmdefault}% + \edef\sfdef@ult{\sfdefault}% + \edef\ttdef@ult{\ttdefault}% + \edef\bfdef@ult{\bfdefault}% + \edef\mddef@ult{\mddefault}% + \fi% + \ifdef{\tud@font@math@init}{}{\tud@font@math@set}% + \tud@font@skip@set% + \normalfont\selectfont% +} +\newcommand*\tud@font@skip@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% + \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}% +} +\newcommand*\tud@font@init{% \if@tud@univers% \newrobustcmd*\univln{\usefont{\encodingdefault}{\tud@univers}{l}{n}}% \newrobustcmd*\univrn{\usefont{\encodingdefault}{\tud@univers}{m}{n}}% @@ -511,39 +703,87 @@ \newrobustcmd*\univbs{\usefont{\encodingdefault}{\tud@univers}{b}{sl}}% \newrobustcmd*\univxs{\usefont{\encodingdefault}{\tud@univers}{eb}{sl}}% \else% - \newrobustcmd*\univln{}% - \newrobustcmd*\univrn{}% - \newrobustcmd*\univbn{}% - \newrobustcmd*\univxn{}% - \newrobustcmd*\univls{}% - \newrobustcmd*\univrs{}% - \newrobustcmd*\univbs{}% - \newrobustcmd*\univxs{}% + \newrobustcmd*\univln{\tud@font@fallback{Univers Light}{md}{up}}% + \newrobustcmd*\univrn{\tud@font@fallback{Univers}{md}{up}}% + \newrobustcmd*\univbn{\tud@font@fallback{Univers Bold}{bf}{up}}% + \newrobustcmd*\univxn{\tud@font@fallback{Univers Black}{bf}{up}}% + \newrobustcmd*\univls{\tud@font@fallback{Univers Light Oblique}{md}{sl}}% + \newrobustcmd*\univrs{\tud@font@fallback{Univers Oblique}{md}{sl}}% + \newrobustcmd*\univbs{\tud@font@fallback{Univers Bold Oblique}{bf}{sl}}% + \newrobustcmd*\univxs{\tud@font@fallback{Univers Black Oblique}{bf}{sl}}% \fi% \if@tud@dinbold% - \newrobustcmd*\dinbn{% - \usefont{\encodingdefault}{\tud@dinbold}{b}{n}% - \mathversion{dinbold}% - }% + \if@tud@x@fontspec@enabled% + \newfontface\tud@dinbn{DIN Bold}[% + FontFace = {l}{\updefault}{DIN Bold},% + FontFace = {m}{\updefault}{DIN Bold},% + FontFace = {b}{\updefault}{DIN Bold},% + FontFace = {bx}{\updefault}{DIN Bold},% + FontFace = {eb}{\updefault}{DIN Bold},% + FontFace = {l}{\sldefault}{Font=DIN Bold,FakeSlant=0.15},% + FontFace = {m}{\sldefault}{Font=DIN Bold,FakeSlant=0.15},% + FontFace = {b}{\sldefault}{Font=DIN Bold,FakeSlant=0.15},% + FontFace = {bx}{\sldefault}{Font=DIN Bold,FakeSlant=0.15},% + FontFace = {eb}{\sldefault}{Font=DIN Bold,FakeSlant=0.15},% + NFSSFamily = \tud@dinbold% + ]% + \else% + \newrobustcmd*\tud@dinbn{\usefont{\encodingdefault}{\tud@dinbold}{b}{n}}% + \fi% + \if@tud@dinboldmath% + \appto\tud@dinbn{\mathversion{dinbold}}% + \fi% + \newrobustcmd*\dinbn{\tud@dinbn}% \else% - \newrobustcmd*\dinbn{\sectfont}% + \newrobustcmd*\tud@dinbn{\sectfont}% + \newrobustcmd*\dinbn{\tud@font@wrn{DIN Bold}\tud@dinbn}% \fi% + \newcommand*\textuln{}% + \newcommand*\texturn{}% + \newcommand*\textubn{}% + \newcommand*\textuxn{}% + \newcommand*\textuls{}% + \newcommand*\texturs{}% + \newcommand*\textubs{}% + \newcommand*\textuxs{}% + \newcommand*\textdbn{}% + \DeclareTextFontCommand\textuln{\univln}% + \DeclareTextFontCommand\texturn{\univrn}% + \DeclareTextFontCommand\textubn{\univbn}% + \DeclareTextFontCommand\textuxn{\univxn}% + \DeclareTextFontCommand\textuls{\univls}% + \DeclareTextFontCommand\texturs{\univrs}% + \DeclareTextFontCommand\textubs{\univbs}% + \DeclareTextFontCommand\textuxs{\univxs}% + \DeclareTextFontCommand\textdbn{\dinbn}% + \undef\tud@font@init% +} +\newcommand*\tud@font@fallback[3]{% + \tud@font@wrn{#1}% + \sffamily\csuse{#2series}\csuse{#3shape}% +} +\newcommand*\tud@font@wrn[1]{% + \PackageWarning{tudscrfonts}% + {% + The requested font `#1' is not available, so\MessageBreak% + a fallback layout is used% + }% } \newcommand*\cdfont[1]{% - \@cdfont{#1}% + \tud@cdfont@get{#1}% \ifx\@tempc\relax\else% - \ifstr{\@tempc}{dinbn}{\dinbn}{\@nameuse{univ\@tempc}}% + \ifstr{\@tempc}{dinbn}{\dinbn}{\csuse{univ\@tempc}}% \fi% } \providecommand*\tudfont[1]{\cdfont{#1}} \newcommand*\textcdfont[2]{% - \@cdfont{#1}% + \tud@cdfont@get{#1}% \ifx\@tempc\relax\else% - \ifstr{\@tempc}{dinbn}{\textdbn{#2}}{\@nameuse{textu\@tempc}{#2}}% + \ifstr{\@tempc}{dinbn}{\textdbn{#2}}{\csuse{textu\@tempc}{#2}}% \fi% } -\newcommand*\@cdfont[1]{% - \tud@trimfontname\@tempa{#1}% +\newcommand*\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}}{% @@ -559,33 +799,34 @@ \ifstr{\@tempa}{din}{\def\@tempc{dinbn}}{% \ifstr{\@tempa}{din65}{\def\@tempc{dinbn}}{% \let\@tempc\relax% - \PackageWarning{tudscrfonts}{The font `#1' is unknown}% + \PackageWarning{tudscrfonts}% + {The font `#1' is unknown}% }}}}}}}}}}}}}}% } -\newcommand*\tud@trimfontname[2]{% +\newcommand*\tud@cdfont@trim[2]{% \protected@edef\@tempa{\trim@spaces{#2}}% \tud@lowerstring{\@tempa}{\@tempa}% - \tud@@trimfontname{ }{}% - \tud@@trimfontname{-}{}% - \tud@@trimfontname{_}{}% - \tud@@trimfontname{~}{}% - \tud@@trimfontname{ce}{}% - \tud@@trimfontname{ff}{}% - \tud@@trimfontname{univers}{}% - \tud@@trimfontname{60}{65}% - \tud@@trimfontname{light}{45}% - \tud@@trimfontname{regular}{55}% - \tud@@trimfontname{bold}{65}% - \tud@@trimfontname{black}{75}% - \tud@@trimfontname{4545}{45}% - \tud@@trimfontname{5555}{55}% - \tud@@trimfontname{6565}{65}% - \tud@@trimfontname{7575}{75}% - \tud@@trimfontname{italic}{oblique}% - \tud@@trimfontname{slanted}{oblique}% + \tud@cdfont@@trim{ }{}% + \tud@cdfont@@trim{-}{}% + \tud@cdfont@@trim{_}{}% + \tud@cdfont@@trim{~}{}% + \tud@cdfont@@trim{ce}{}% + \tud@cdfont@@trim{ff}{}% + \tud@cdfont@@trim{univers}{}% + \tud@cdfont@@trim{60}{65}% + \tud@cdfont@@trim{light}{45}% + \tud@cdfont@@trim{regular}{55}% + \tud@cdfont@@trim{bold}{65}% + \tud@cdfont@@trim{black}{75}% + \tud@cdfont@@trim{4545}{45}% + \tud@cdfont@@trim{5555}{55}% + \tud@cdfont@@trim{6565}{65}% + \tud@cdfont@@trim{7575}{75}% + \tud@cdfont@@trim{italic}{oblique}% + \tud@cdfont@@trim{slanted}{oblique}% \let#1\@tempa% } -\newcommand*\tud@@trimfontname[2]{% +\newcommand*\tud@cdfont@@trim[2]{% \def\@tempb##1#1##2\relax{\def\@tempa{##1#2##2}}% \@expandtwoargs\in@{#1}{\@tempa}% \@whilesw\ifin@\fi{% @@ -593,20 +834,42 @@ \@expandtwoargs\in@{#1}{\@tempa}% }% } -\newcommand*\mv@univers{}% -\newcommand*\mv@universbold{}% -\newcommand*\mv@dinbold{}% +\newcommand*\tud@font@greek@loop[1]{% + \@for\@tempa:={% + Gamma,Delta,Theta,Lambda,Xi,Pi,Sigma,Upsilon,Phi,Psi,Omega% + }\do{#1{\@tempa}}% +} +\newcommand*\tud@font@greek@declare[1]{% + \edef\@tempb{% + \noexpand\DeclareMathSymbol{\csname tud@up#1\endcsname}% + {\noexpand\mathalpha}{operators}{\the\@tempcnta}% + }\@tempb% + \edef\@tempb{% + \noexpand\DeclareMathSymbol{\csname tud@var#1\endcsname}% + {\noexpand\mathalpha}{letters}{\the\@tempcnta}% + }\@tempb% + \csletcs{tud@#1}{tud@up#1}% + \advance \@tempcnta by 1% +} +\@tempcnta=\z@\relax +\tud@font@greek@loop\tud@font@greek@declare +\newcommand*\mv@univers{} +\newcommand*\mv@universbold{} +\newcommand*\mv@dinbold{} \newcommand*\tud@font@math@init{% - \if@tud@fontspec\if@tud@univers\if@tud@dinbold% - \@ifpackagewith{fontspec}{no-math}{}{% - \PackageWarningNoLine{tudscrfonts}% - {% - It's recommended to load package `fontspec' with\MessageBreak% - option `no-math'% + \if@tud@x@fontspec@enabled\if@tud@cdmath% + \ifboolexpr{bool {@tud@universmath} or bool {@tud@dinboldmath}}{% + \@ifpackagewith{fontspec}{no-math}{}{% + \PackageWarningNoLine{tudscrfonts}% + {% + It's recommended to load package `fontspec'\MessageBreak% + with option `no-math', if you want to use the\MessageBreak% + corporate design fonts in math mode% + }% }% - }% - \fi\fi\fi% - \if@tud@univers% + }{}% + \fi\fi% + \if@tud@universmath% \DeclareMathVersion{univers}% \DeclareMathVersion{universbold}% \SetSymbolFont{operators}{univers}{OT1}{\tud@univers}{l}{n}% @@ -617,8 +880,10 @@ \SetSymbolFont{symbols}{universbold}{OMS}{\tud@univers}{b}{n}% \SetSymbolFont{largesymbols}{univers}{OMX}{iwona}{m}{n}% \SetSymbolFont{largesymbols}{universbold}{OMX}{iwona}{b}{n}% - \SetMathAlphabet{\mathcal}{univers}{OMS}{lmsy}{m}{n}% - \SetMathAlphabet{\mathcal}{universbold}{OMS}{lmsy}{b}{n}% + \SetMathAlphabet{\mathrm}{univers}{OT1}{\tud@univers}{l}{n}% + \SetMathAlphabet{\mathrm}{universbold}{OT1}{\tud@univers}{b}{n}% + \SetMathAlphabet{\mathnormal}{univers}{OML}{\tud@univers}{l}{sl}% + \SetMathAlphabet{\mathnormal}{universbold}{OML}{\tud@univers}{b}{sl}% \SetMathAlphabet{\mathbf}{univers}{OT1}{\tud@univers}{b}{n}% \SetMathAlphabet{\mathbf}{universbold}{OT1}{\tud@univers}{eb}{n}% \SetMathAlphabet{\mathsf}{univers}{OT1}{\tud@univers}{l}{n}% @@ -627,6 +892,8 @@ \SetMathAlphabet{\mathit}{universbold}{OT1}{\tud@univers}{b}{sl}% \SetMathAlphabet{\mathtt}{univers}{OT1}{\tud@univers t}{l}{n}% \SetMathAlphabet{\mathtt}{universbold}{OT1}{\tud@univers t}{b}{n}% + \SetMathAlphabet{\mathcal}{univers}{OMS}{lmsy}{m}{n}% + \SetMathAlphabet{\mathcal}{universbold}{OMS}{lmsy}{b}{n}% \@ifpackageloaded{amsfonts}{% \DeclareFontFamily{U}{\tud@univers a}{}% \DeclareFontShape{U}{\tud@univers a}{m}{n}{<->cmbras10}{}% @@ -640,15 +907,19 @@ \SetMathAlphabet{\mathfrak}{universbold}{U}{euf}{b}{n}% }{}% \fi% - \if@tud@dinbold% + \if@tud@dinboldmath% \DeclareMathVersion{dinbold}% \SetSymbolFont{operators}{dinbold}{OT1}{\tud@dinbold}{b}{n}% \SetSymbolFont{letters}{dinbold}{OML}{\tud@dinbold}{b}{sl}% \SetSymbolFont{symbols}{dinbold}{OMS}{\tud@dinbold}{b}{n}% \SetSymbolFont{largesymbols}{dinbold}{OMX}{iwona}{ebc}{n}% + \SetMathAlphabet{\mathrm}{dinbold}{OT1}{\tud@dinbold}{b}{n}% + \SetMathAlphabet{\mathnormal}{dinbold}{OML}{\tud@dinbold}{b}{sl}% \SetMathAlphabet{\mathbf}{dinbold}{OT1}{\tud@dinbold}{b}{n}% \SetMathAlphabet{\mathsf}{dinbold}{OT1}{\tud@dinbold}{b}{n}% \SetMathAlphabet{\mathit}{dinbold}{OT1}{\tud@dinbold}{b}{sl}% + \SetMathAlphabet{\mathtt}{dinbold}{OT1}{\tud@univers t}{b}{n}% + \SetMathAlphabet{\mathcal}{dinbold}{OMS}{lmsy}{b}{n}% \fi% \@ifpackageloaded{unicode-math}{% \let\tud@font@math@set\relax% @@ -667,232 +938,41 @@ \tud@font@greek@loop\tud@font@greek@init% \tud@font@math@set% }% - \sbox\z@{\dinbn$ $}% + \sbox\z@{\tud@dinbn$ $}% \undef\tud@font@math@init% } -\ifbool{@tud@oldscrclass}{% - \let\univln\relax% - \let\univrn\relax% - \let\univbn\relax% - \let\univxn\relax% - \let\univls\relax% - \let\univrs\relax% - \let\univbs\relax% - \let\univxs\relax% - \let\dinbn\relax% - \let\textuln\relax% - \let\texturn\relax% - \let\textubn\relax% - \let\textuxn\relax% - \let\textuls\relax% - \let\texturs\relax% - \let\textubs\relax% - \let\textuxs\relax% - \let\textdbn\relax% - \AtBeginDocument{% - \cmd@restore{rmdefault}% - \cmd@restore{sfdefault}% - \cmd@restore{bfdefault}% - \cmd@restore{mddefault}% - \cmd@restore{familydefault}% - \cmd@restore{seriesdefault}% - \cmd@restore{shapedefault}% - \cmd@restore{rmfamily}% - \cmd@restore{sffamily}% - \cmd@restore{ttfamily}% - }% -}{} -\AtBeginDocument% -{% - \tud@font@check% - \if@tud@fontspec% - \preto\tud@font@init\tud@font@init@fontspec% - \else% - \preto\tud@font@init\tud@font@init@nfss% - \fi% - \ifdef{\sectfont}{}{\let\sectfont\relax}% - \tud@font@init% - \tud@font@set[nomath]% - \tud@font@math@init% -} \newcommand*\tud@font@greek@init[1]{% - \ifcsdef{up#1}{}{% + \ifcsundef{up#1}{% \if@tempswa% \csletcs{up#1}{tud@up#1}% \else% \csletcs{up#1}{#1}% \fi% - }% - \ifcsdef{var#1}{}{% + }{}% + \ifcsundef{var#1}{% \if@tempswa% \csletcs{var#1}{#1}% \else% \csletcs{var#1}{tud@var#1}% \fi% - }% + }{}% } -\newif\if@tud@mweights -\AfterPackage*{mweights}{\@tud@mweightstrue} -\newcommand*\tud@font@set[1][]{% - \if@tud@mweights% - \ifdef{\bfseries@rm}{}{\edef\bfseries@rm{\bfdefault}}% - \ifdef{\bfseries@sf}{}{\edef\bfseries@sf{\bfdefault}}% - \ifdef{\bfseries@tt}{}{\edef\bfseries@tt{\bfdefault}}% - \ifdef{\mdseries@rm}{}{\edef\mdseries@rm{\mddefault}}% - \ifdef{\mdseries@sf}{}{\edef\mdseries@sf{\mddefault}}% - \ifdef{\mdseries@tt}{}{\edef\mdseries@tt{\mddefault}}% - \fi% - \ifcase\tud@cdfont\relax% false - \tud@cmd@restore{rmdefault}% - \tud@cmd@restore{sfdefault}% - \tud@cmd@restore{ttdefault}% - \tud@cmd@restore{bfdefault}% - \tud@cmd@restore{mddefault}% - \tud@cmd@restore{itdefault}% - \tud@cmd@restore{familydefault}% - \tud@cmd@restore{seriesdefault}% - \tud@cmd@restore{shapedefault}% - \if@tud@mweights% - \tud@cmd@restore{bfseries@rm}% - \tud@cmd@restore{bfseries@sf}% - \tud@cmd@restore{bfseries@tt}% - \tud@cmd@restore{mdseries@rm}% - \tud@cmd@restore{mdseries@sf}% - \tud@cmd@restore{mdseries@tt}% - \fi% - \bool@std@lock{@tud@cdmath}{false}% - \else% true/heavy - \tud@cmd@store{rmdefault}% - \tud@cmd@store{sfdefault}% - \tud@cmd@store{ttdefault}% - \tud@cmd@store{bfdefault}% - \tud@cmd@store{mddefault}% - \tud@cmd@store{itdefault}% - \tud@cmd@store{familydefault}% - \tud@cmd@store{seriesdefault}% - \tud@cmd@store{shapedefault}% - \if@tud@mweights% - \tud@cmd@store{bfseries@rm}% - \tud@cmd@store{bfseries@sf}% - \tud@cmd@store{bfseries@tt}% - \tud@cmd@store{mdseries@rm}% - \tud@cmd@store{mdseries@sf}% - \tud@cmd@store{mdseries@tt}% - \fi% - \bool@std@lock{@tud@cdmath}{true}% - \if@tud@fontspec% - \ifnum\tud@cdfont=\@ne\relax% true - \setsansfont{Univers Light}[% - BoldFont = Univers,% - ItalicFont = Univers Light Oblique,% - BoldItalicFont = Univers Oblique,% - ]% - \setmonofont{LMMonoLt10-Regular}[% - BoldFont = LMMono10-Regular,% - ItalicFont = LMMonoLt10-Oblique,% - BoldItalicFont = LMMonoSlant10-Regular,% - ]% - \ifboolexpr{bool {@tud@oldclass} or bool {@tud@oldscrclass}}{% - \setsansfont{Univers Light}[% - BoldFont = Univers Bold,% - ItalicFont = Univers Light Oblique,% - BoldItalicFont = Univers Bold Oblique,% - ]% - }{}% - \else% heavy - \setsansfont{Univers}[% - BoldFont = Univers Bold,% - ItalicFont = Univers Oblique,% - BoldItalicFont = Univers Bold Oblique,% - ]% - \setmonofont{LMMono10-Regular}[% - BoldFont = LMMonoLt10-Bold,% - ItalicFont = LMMonoSlant10-Regular,% - BoldItalicFont = LMMonoLt10-BoldOblique,% - ]% - \fi% - \else% - \if@tud@univers% - \renewcommand*\sfdefault{\tud@univers}% - \renewcommand*\ttdefault{\tud@univers t}% - \ifnum\tud@cdfont=\@ne\relax% true - \renewcommand*\bfdefault{m}% - \ifboolexpr{bool {@tud@oldclass} or bool {@tud@oldscrclass}}{% - \renewcommand*\bfdefault{b}% - }{}% - \renewcommand*\mddefault{l}% - \if@tud@mweights% - \def\bfseries@rm{m}% - \def\bfseries@sf{m}% - \def\bfseries@tt{m}% - \def\mdseries@rm{l}% - \def\mdseries@sf{l}% - \def\mdseries@tt{l}% - \fi% - \else% heavy - \renewcommand*\bfdefault{b}% - \renewcommand*\mddefault{m}% - \if@tud@mweights% - \def\bfseries@rm{b}% - \def\bfseries@sf{b}% - \def\bfseries@tt{b}% - \def\mdseries@rm{m}% - \def\mdseries@sf{m}% - \def\mdseries@tt{m}% - \fi% +\newcommand*\tud@font@math@set{% + \if@atdocument% + \ifnum\tud@cdfont@num>\z@\relax% true/heavy + \if@tud@cdmath% + \if@tud@universmath\else% + \PackageWarning{tudscrfonts}% + {`Univers' math fonts not found}% + \fi% + \if@tud@dinboldmath\else% + \PackageWarning{tudscrfonts}% + {`DIN Bold' math fonts not found}% \fi% \fi% \fi% - \renewcommand*\rmdefault{\sfdefault}% - \renewcommand*\familydefault{\sfdefault}% - \renewcommand*\seriesdefault{\mddefault}% - \renewcommand*\shapedefault{\updefault}% - \fi% - \if@tud@mweights% - \edef\rmdef@ult{\rmdefault}% - \edef\sfdef@ult{\sfdefault}% - \edef\ttdef@ult{\ttdefault}% - \edef\bfdef@ult{\bfdefault}% - \edef\mddef@ult{\mddefault}% \fi% - \tud@font@skip@set% - \ifstr{#1}{nomath}{}{\tud@font@math@set}% - \normalfont\selectfont% -} -\newcommand*\tud@font@skip@set{% - \tud@ifverlower{2.04}{}{% - \ifcase\tud@cdfont\relax% false - \tud@skip@restore{smallskipamount}% - \tud@skip@restore{medskipamount}% - \tud@skip@restore{bigskipamount}% - \tud@skip@restore{abovecaptionskip}% - \tud@skip@restore{belowcaptionskip}% - \tud@skip@restore{columnsep}% - \else% true/heavy - \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% - \fi% - }% -} -\newcommand*\tud@font@skip@@set{% - \setlength{\@tempdimb}{\f@baselineskip}% - \scr@setlength\smallskipamount{\dimexpr\@tempdimb/4\relax}% - {\dimexpr\@tempdimb/12\relax}{\dimexpr\@tempdimb/12\relax}% - \scr@setlength\medskipamount{\dimexpr\@tempdimb/2\relax}% - {\dimexpr\@tempdimb/6\relax}{\dimexpr\@tempdimb/6\relax}% - \scr@setlength\bigskipamount{\@tempdimb}% - {\dimexpr\@tempdimb/3\relax}{\dimexpr\@tempdimb/3\relax}% - \tud@skip@set\abovecaptionskip{\dimexpr4\@tempdimb/5\relax}% - \tud@skip@set\belowcaptionskip{\z@}% - \tud@skip@set\columnsep{1.1\baselineskip}% -} -\newcommand*\tud@font@math@set{% - \if@tud@univers% + \if@tud@universmath% \if@tud@cdmath% \tud@cmd@store{mv@normal}% \tud@cmd@store{mv@bold}% @@ -927,20 +1007,39 @@ } \newcommand*\tud@font@greek@upright[1]{\csletcs{#1}{up#1}} \newcommand*\tud@font@greek@slanted[1]{\csletcs{#1}{var#1}} +\AtBeginDocument% +{% + \if@tud@x@mweights@enabled% + \ifundef{\bfseries@rm}{\edef\bfseries@rm{\bfdefault}}{}% + \ifundef{\bfseries@sf}{\edef\bfseries@sf{\bfdefault}}{}% + \ifundef{\bfseries@tt}{\edef\bfseries@tt{\bfdefault}}{}% + \ifundef{\mdseries@rm}{\edef\mdseries@rm{\mddefault}}{}% + \ifundef{\mdseries@sf}{\edef\mdseries@sf{\mddefault}}{}% + \ifundef{\mdseries@tt}{\edef\mdseries@tt{\mddefault}}{}% + \fi% + \tud@font@check% + \ifdef{\sectfont}{}{\let\sectfont\relax}% + \tud@font@set% + \tud@font@init% + \tud@font@math@init% +} +\AfterClass*{beamer}{\usefonttheme[onlymath]{serif}} +\AfterPackage*{siunitx}{% + \providecommand*\lseries{\fontseries{l}\selectfont}% +} \newrobustcmd*\ifdin{% - \@tempswafalse% - \@expandtwoargs\in@{DINBold}{\f@family}% - \ifin@\@tempswatrue\fi% - \ifx\f@family\tud@dinbold\relax\@tempswatrue\fi% - \if@tempswa% + \ifx\f@family\tud@dinbold% \expandafter\@firstoftwo% \else% \expandafter\@secondoftwo% \fi% } -\newcommand*\tud@makeuppercase[1]{% - \ifdin{\begingroup\MakeTextUppercase{#1}\endgroup}{#1}% - \protect\vphantom{\"A\"O\"U}% +\newcommand*\tud@sec@fontface[1][]{% + \if@tud@cdfont@din% + \tud@dinbn\tud@raggedright% + \else% + \sectfont#1% + \fi% } \newcommand*\tud@raggedright{\raggedright} \newcommand*\tud@RaggedRight{\raggedright} @@ -950,142 +1049,83 @@ }{}% \renewcommand*\tud@RaggedRight{\RaggedRight}% } -\AfterPackage*{siunitx}{% - \providecommand*\lseries{\fontseries{l}\selectfont} +\RequirePackage{textcase}[2004/10/07] +\newcommand*\tud@makeuppercase[1]{% + \ifdin{\begingroup\MakeTextUppercase{#1}\endgroup}{#1}% + \protect\vphantom{\"A\"O\"U}% } %%% From File: tudscr-comp.dtx -\ifbool{@tud@oldclass}{% - \AtBeginDocument{% - \if@tud@fontspec% - \DeclareFixedFont{\univLightVII}{\encodingdefault}% - {UniversLight}{m}{n}{7}% - \DeclareFixedFont{\univLightObliqueVII}{\encodingdefault}% - {UniversLightOblique}{m}{n}{7}% - \DeclareFixedFont{\univBoldVII}{\encodingdefault}% - {UniversBold}{m}{n}{7}% - \DeclareFixedFont{\univLightIX}{\encodingdefault}% - {UniversLight}{m}{n}{9}% - \DeclareFixedFont{\univLightObliqueIX}{\encodingdefault}% - {UniversLightOblique}{m}{n}{9}% - \DeclareFixedFont{\univBoldIX}{\encodingdefault}% - {UniversBold}{m}{n}{9}% - \DeclareFixedFont{\univLightXI}{\encodingdefault}% - {UniversLight}{m}{n}{11}% - \DeclareFixedFont{\univLightObliqueXI}{\encodingdefault}% - {UniversLightOblique}{m}{n}{11}% - \DeclareFixedFont{\univBoldXI}{\encodingdefault}% - {UniversBold}{m}{n}{11}% - \DeclareFixedFont{\univLightXV}{\encodingdefault}% - {UniversLight}{m}{n}{15}% - \DeclareFixedFont{\univLightObliqueXV}{\encodingdefault}% - {UniversLightOblique}{m}{n}{15}% - \DeclareFixedFont{\univBoldXV}{\encodingdefault}% - {UniversBold}{m}{n}{15}% - \else% - \if@tud@univers% - \DeclareFixedFont{\univLightVII}{\encodingdefault}% - {\tud@univers}{l}{n}{7}% - \DeclareFixedFont{\univLightObliqueVII}{\encodingdefault}% - {\tud@univers}{l}{sl}{7}% - \DeclareFixedFont{\univBoldVII}{\encodingdefault}% - {\tud@univers}{b}{n}{7}% - \DeclareFixedFont{\univLightIX}{\encodingdefault}% - {\tud@univers}{l}{n}{9}% - \DeclareFixedFont{\univLightObliqueIX}{\encodingdefault}% - {\tud@univers}{l}{sl}{9}% - \DeclareFixedFont{\univBoldIX}{\encodingdefault}% - {\tud@univers}{b}{n}{9}% - \DeclareFixedFont{\univLightXI}{\encodingdefault}% - {\tud@univers}{l}{n}{11}% - \DeclareFixedFont{\univLightObliqueXI}{\encodingdefault}% - {\tud@univers}{l}{sl}{11}% - \DeclareFixedFont{\univBoldXI}{\encodingdefault}% - {\tud@univers}{b}{n}{11}% - \DeclareFixedFont{\univLightXV}{\encodingdefault}% - {\tud@univers}{l}{n}{15}% - \DeclareFixedFont{\univLightObliqueXV}{\encodingdefault}% - {\tud@univers}{l}{sl}{15}% - \DeclareFixedFont{\univBoldXV}{\encodingdefault}% - {\tud@univers}{b}{n}{15}% - \fi% - \fi% - \if@sansmath% - \DeclareSymbolFont{aunLetters}{OT1}{\tud@univers}{l}{sl}% - \SetSymbolFont{aunLetters}{bold}{OT1}{\tud@univers}{b}{sl}% - \DeclareSymbolFont{aunOperators}{OT1}{\tud@univers}{l}{n}% - \SetSymbolFont{aunOperators}{bold}{OT1}{\tud@univers}{b}{n}% - \DeclareSymbolFont{aunUpright}{OT1}{\tud@univers}{l}{n}% - \SetSymbolFont{aunUpright}{bold}{OT1}{\tud@univers}{b}{n}% - \DeclareSymbolFontAlphabet{\mathsf}{aunOperators}% - \DeclareSymbolFontAlphabet{\mathnormal}{aunLetters}% - \DeclareMathAlphabet\mathbf{OT1}{\tud@univers}{b}{n}% - \SetMathAlphabet\mathbf{bold}{OT1}{\tud@univers}{b}{n}% - \DeclareMathAlphabet\mathit{OT1}{\tud@univers}{l}{sl}% - \SetMathAlphabet\mathit{bold}{OT1}{\tud@univers}{l}{sl}% - \@ifpackageloaded{tudfonts}{% - \let\mv@normal\mv@univers% - \let\mv@bold\mv@universbold% - }{}% +\AtEndOfPackage% +{% + \tud@if@v@lower{2.04}{\TUDoptions{relspacing=false}}{}% +} +\def\dinBold{\dinbn} +\def\dinfamily{\dinbn} +%%% From File: tudscr-misc.dtx +\newcommand*\tud@atdocument@hook{} +\let\tud@atdocument@hook\relax +\AtBeginDocument{% + \renewcommand*\TUD@SpecialOptionAtDocument[1]{% + \ifx\tud@atdocument@hook\relax% + \gdef\tud@atdocument@hook{\global\let\tud@atdocument@hook\relax}% + \AtEndOfFamilyOptions{% + \tud@atdocument@hook% + \tud@atdocument@process% + }% \fi% - \let\dinBold\dinbn% - \let\dinfamily\dinbn% + \gappto\tud@atdocument@hook{\global\booltrue{@#1}}% }% -}{} -\@ifclassloaded{tudbook}{% - \patchcmd{\@makechapterhead}{\dinBold\Huge\bfseries}% - {\bfseries\tud@font@heading\Huge}{}{\tud@patch@wrn{@makechapterhead}}% - \patchcmd{\@makeschapterhead}{\dinBold\Huge\bfseries}% - {\bfseries\tud@font@heading\Huge}{}{\tud@patch@wrn{@makeschapterhead}}% - \patchcmd{\section}{\dinBold\Large\bfseries}% - {\bfseries\tud@font@heading\Large}{}{\tud@patch@wrn{section}}% - \patchcmd{\showtitle}{\dinBold\Huge\bfseries}% - {\bfseries\tud@font@heading\Huge}{}{\tud@patch@wrn{showtitle}}% -}{} -\@ifclassloaded{tudmathposter}{% - \setkomafont{title}{\bfseries\tud@font@heading\Huge}% - \renewcommand*\subtitlefont{\fontseries{m}\tud@font@heading\huge}% - \if@mathevorgabe% - \renewcommand*\sectionfont{\univbn\LARGE}% - \renewcommand*\subsectionfont{\univbn\large}% +} +\newif\if@tud@font@set +\newif\if@tud@font@math@set +\newif\if@tud@font@skip@set +\newif\if@tud@x@scr@headings@reset +\newif\if@tud@layout@process +\newif\if@tud@cdgeometry@process +\newif\if@tud@cdgeometry@@process +\newcommand*\tud@atdocument@process{% + \if@tud@font@set% + \tud@font@set% + \global\@tud@font@setfalse% + \global\@tud@font@math@setfalse% + \global\@tud@font@skip@setfalse% + \global\@tud@layout@processfalse% \fi% -}{} -\@ifpackageloaded{tudfonts}{% - \let\if@sansmath\if@tudfonts@sansmath% - \renewcommand*\tudfont[1]{\cdfont{#1}}% - \if@sansmath% - \if@tudfonts@eulermath% - \PackageWarningNoLine{tudscrfonts}{% - You're using non-serif fonts in math mode. It's\MessageBreak% - recommended to pass the option `noeulermath' to\MessageBreak% - package `tudfonts'% - }% - \fi% + \if@tud@font@math@set% + \tud@font@math@set% + \global\@tud@font@math@setfalse% + \fi% + \if@tud@font@skip@set% + \tud@font@skip@set% + \global\@tud@font@skip@setfalse% \fi% -}{% - \newif\if@tudfonts@nodin% - \@ifundefined{if@sansmath}{\newif\if@sansmath}{}% } -\@ifclassloaded{tudposter}{% - \let\if@sansmath\if@tudposter@sansmath% -}{} -\ifbool{@tud@oldscrclass}{% - \AtBeginDocument{% - \DeclareSymbolFontAlphabet{\mathrm}{operators} - \if@tud@fontspec% - \DeclareFixedFont{\univLightHead}{\encodingdefault}% - {UniversLight}{m}{n}{\tud@head@fntsz}% - \DeclareFixedFont{\univBoldHead}{\encodingdefault}% - {UniversBold}{m}{n}{\tud@head@fntsz}% - \else% - \if@tud@univers% - \DeclareFixedFont{\univLightHead}{\encodingdefault}% - {\tud@univers}{l}{n}{\tud@head@fntsz}% - \DeclareFixedFont{\univBoldHead}{\encodingdefault}% - {\tud@univers}{b}{n}{\tud@head@fntsz}% - \fi% - \fi% - }% -}{} +\CheckCommand*\@uclcnotmath[4]{% + \begingroup + #1% + \def\({$}\let\)\(% + \def\NoCaseChange##1{\noexpand\NoCaseChange{\noexpand##1}}% + \@nonchangecase\label + \@nonchangecase\ref + \@nonchangecase\ensuremath + \def\cite##1##{\toks@{\noexpand\cite##1}\@citex}% + \def\@citex##1{\NoCaseChange{\the\toks@{##1}}}% + \def\reserved@a##1##2{\let#2\reserved@a}% + \expandafter\reserved@a\@uclclist\reserved@b{\reserved@b\@gobble}% + \protected@edef\reserved@a{% + \endgroup + \noexpand\@skipmath#3#4$\valign$% + }% + \reserved@a% +} +\newcommand*\tud@x@textcase@uclcnotmath{% + \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}} \endinput %% %% End of file `tudscrfonts.sty'. |