diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/microtype/microtype-xetex.def')
-rw-r--r-- | Master/texmf-dist/tex/latex/microtype/microtype-xetex.def | 58 |
1 files changed, 27 insertions, 31 deletions
diff --git a/Master/texmf-dist/tex/latex/microtype/microtype-xetex.def b/Master/texmf-dist/tex/latex/microtype/microtype-xetex.def index b9f2d478b2c..e7991789055 100644 --- a/Master/texmf-dist/tex/latex/microtype/microtype-xetex.def +++ b/Master/texmf-dist/tex/latex/microtype/microtype-xetex.def @@ -10,7 +10,7 @@ %% %% The `microtype' package %% Subliminal refinements towards typographical perfection -%% Copyright (c) 2004--2019 R Schlicht <w.m.l@gmx.net> +%% Copyright (c) 2004--2020 R Schlicht <w.m.l@gmx.net> %% %% This work may be distributed and/or modified under the conditions of the %% LaTeX Project Public License, either version 1.3c of this license or (at @@ -30,7 +30,7 @@ %% \ProvidesFile {microtype-xetex.def} - [2019/11/18 v2.7d + [2020/12/07 v2.8 Definitions specific to xetex (RS)] @@ -68,9 +68,7 @@ }% } \def\MT@ifstreq#1#2{% - \edef\MT@res@a{#1}% - \edef\MT@res@b{#2}% - \ifx\MT@res@a\MT@res@b + \ifnum\strcmp{#1}{#2}=\z@ \expandafter\@firstoftwo \else \expandafter\@secondoftwo @@ -78,9 +76,10 @@ } \def\MT@do@font#1{% \@tempcnta=\z@ - \MT@loop #1% - \advance\@tempcnta \@ne - \ifnum\@tempcnta < \XeTeXcountglyphs\MT@font \MT@repeat + \MT@loop + \iffontchar\MT@font\@tempcnta #1\fi + \advance\@tempcnta\@ne + \ifnum\@tempcnta < \XeTeXlastfontchar\MT@font \MT@repeat } \def\MT@ledmac@setup{% \ifMT@protrusion @@ -123,6 +122,16 @@ \MT@register@font \fi } +\def\MT@fix@fontdimen@six{% + \ifnum\fontdimen6\MT@font=\z@ + \fontdimen6\MT@font=% + \MT@size pt + \MT@info{Fixing zero \string\fontdimen 6 for font `\MT@@font'\MessageBreak + (new value: \the\fontdimen6\MT@font)}% + \MT@glet@nc{\MT@@font-fake6}\@empty + \fi + \edef\MT@dimen@six{\number\fontdimen6\MT@font}% +} \def\MT@protrusion{\MT@maybe@do{pr}} \def\MT@set@pr@codes{% \MT@nofamilyfalse @@ -136,29 +145,16 @@ \MT@glet@nc{\MT@encoding-\MT@family-settings}\@empty }% \fi - \MT@get@font@dimen@six{% - \MT@get@opt - \MT@reset@pr@codes - \MT@get@inh@list - \MT@set@inputenc{c}% - \MT@load@list\MT@pr@c@name - \MT@set@listname - \MT@let@cn\@tempc{MT@pr@c@\MT@pr@c@name}% - \expandafter\MT@set@codes\@tempc,\relax,}% + \MT@get@opt + \MT@reset@pr@codes + \MT@get@inh@list + \MT@set@inputenc{c}% + \MT@load@list\MT@pr@c@name + \MT@set@listname + \MT@let@cn\@tempc{MT@pr@c@\MT@pr@c@name}% + \expandafter\MT@set@codes\@tempc,\relax,% }\MT@reset@pr@codes } -\def\MT@get@font@dimen@six{% - \ifnum\fontdimen6\MT@font=\z@ - \MT@warning@nl{% - Font `\MT@@font' does not specify its\MessageBreak - \@backslashchar fontdimen 6 (width of an `em')! Therefore,\MessageBreak - \@nameuse{MT@abbr@\MT@feat} will not work with this font}% - \expandafter\@gobble - \else - \edef\MT@dimen@six{\number\fontdimen6\MT@font}% - \expandafter\@firstofone - \fi -} \def\MT@set@all@pr#1#2{% \let\MT@temp\@empty \MT@ifempty{#1}\relax{\g@addto@macro\MT@temp{\lpcode\MT@font\@tempcnta=#1}}% @@ -220,8 +216,8 @@ \ifnum\MT@count=\z@ \MT@info@missing@char \fi } \def\MT@set@pr@heirs#1{% - \lpcode\MT@font #1 =\lpcode\MT@font\MT@char\relax - \rpcode\MT@font #1 =\rpcode\MT@font\MT@char\relax + \lpcode\MT@font #1=\lpcode\MT@font\MT@char\relax + \rpcode\MT@font #1=\rpcode\MT@font\MT@char\relax } \def\MT@preset@pr{% \expandafter\expandafter\expandafter\MT@preset@pr@ |