summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/microtype
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2021-12-03 22:11:19 +0000
committerKarl Berry <karl@freefriends.org>2021-12-03 22:11:19 +0000
commit914a7e101fe758b554484b4c64d837bcee76428c (patch)
tree63ce7c49d78fa2801b3312ff8b0e6527b1f4b57b /Master/texmf-dist/tex/latex/microtype
parent260bd07bba56840382d445ad785e76e1d9fc3659 (diff)
microtype (3dec21)
git-svn-id: svn://tug.org/texlive/trunk@61213 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/microtype')
-rw-r--r--Master/texmf-dist/tex/latex/microtype/letterspace.sty32
-rw-r--r--Master/texmf-dist/tex/latex/microtype/microtype-luatex.def48
-rw-r--r--Master/texmf-dist/tex/latex/microtype/microtype-pdftex.def66
-rw-r--r--Master/texmf-dist/tex/latex/microtype/microtype-show.sty2
-rw-r--r--Master/texmf-dist/tex/latex/microtype/microtype-xetex.def64
-rw-r--r--Master/texmf-dist/tex/latex/microtype/microtype.cfg3
-rw-r--r--Master/texmf-dist/tex/latex/microtype/microtype.lua22
-rw-r--r--Master/texmf-dist/tex/latex/microtype/microtype.sty279
-rw-r--r--Master/texmf-dist/tex/latex/microtype/mt-CharisSIL.cfg8
-rw-r--r--Master/texmf-dist/tex/latex/microtype/mt-LatinModernRoman.cfg6
-rw-r--r--Master/texmf-dist/tex/latex/microtype/mt-NewComputerModern.cfg108
-rw-r--r--Master/texmf-dist/tex/latex/microtype/mt-Palatino.cfg8
12 files changed, 319 insertions, 327 deletions
diff --git a/Master/texmf-dist/tex/latex/microtype/letterspace.sty b/Master/texmf-dist/tex/latex/microtype/letterspace.sty
index 37cba00b077..e80c174f54b 100644
--- a/Master/texmf-dist/tex/latex/microtype/letterspace.sty
+++ b/Master/texmf-dist/tex/latex/microtype/letterspace.sty
@@ -34,7 +34,7 @@
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage
{letterspace}
- [2021/10/31 v3.0
+ [2021/12/02 v3.0a
Robust letterspacing
(RS)]
\def\MT@MT
@@ -112,21 +112,25 @@
\let\pdfoutput \normalpdfoutput
\fi
\let\MT@engine\relax
-\def\MT@engine@tooold{0}
+\newif\ifMT@engine@unfit
+\MT@engine@unfittrue
\ifx\pdftexversion\@undefined \else
\ifx\pdftexversion\relax \else
\def\MT@engine{pdf}
\let\MT@pdf@or@lua\@firstoftwo
- \ifnum\pdftexversion > 139 \def\MT@engine@tooold{1}\fi
+ \ifnum\pdftexversion
+ > 139
+ \MT@engine@unfitfalse
+ \fi
\fi
\fi
\ifx\directlua\@undefined \else
\ifx\directlua\relax \else
\def\MT@engine{lua}
+ \MT@engine@unfitfalse
\let\MT@pdf@or@lua\@secondoftwo
- \ifnum\luatexversion < 62 \def\MT@engine@tooold{0}
+ \ifnum\luatexversion < 62 \MT@engine@unfittrue
\else
- \def\MT@engine@tooold{1}
\let\MT@lua\directlua
\ifnum\luatexversion > 84
\let\pdfoutput\outputmode
@@ -136,21 +140,19 @@
\fi
\fi
\fi
-\ifnum
- \MT@engine@tooold=\z@
+\ifMT@engine@unfit
\MT@warning@nl{You
\ifx\MT@engine\relax
- don't seem to be using pdftex or luatex.\MessageBreak
- Try running `pdftex' or `luatex' instead of\MessageBreak
- `\ifx\XeTeXversion\@undefined\else xe\fi tex'%
+ don't seem to be using pdftex%
+ \space or luatex%
+ .\MessageBreak `\MT@MT' only works with these engines.%
\else
are using a \MT@engine tex version older than
- \MT@pdf@or@lua{1.40}{0.62}%
- .\MessageBreak
- `\MT@MT' does not work with this version.\MessageBreak
- Please install a newer version of \MT@engine tex%
+ \MT@pdf@or@lua{1.40}{0.62}%
+ .\MessageBreak `\MT@MT' does not work with this version.%
+ \MessageBreak Please install a newer version of \MT@engine tex.%
\fi
- .\MessageBreak I will quit now}
+ \MessageBreak I will quit now}
\MT@clear@options
\endinput\fi
\RequirePackage{keyval}[1997/11/10]
diff --git a/Master/texmf-dist/tex/latex/microtype/microtype-luatex.def b/Master/texmf-dist/tex/latex/microtype/microtype-luatex.def
index 144ecdf2fc8..72f9050d22b 100644
--- a/Master/texmf-dist/tex/latex/microtype/microtype-luatex.def
+++ b/Master/texmf-dist/tex/latex/microtype/microtype-luatex.def
@@ -31,7 +31,7 @@
%%
\ProvidesFile
{microtype-luatex.def}
- [2021/10/31 v3.0
+ [2021/12/02 v3.0a
Definitions specific to
luatex
(RS)]
@@ -802,19 +802,6 @@
\gdef\MT@nl@setname{no ligatures}%
\MT@end@catcodes
}
-\def\SetProtrusion{%
- \MT@begin@catcodes
- \MT@SetProtrusion
-}
-\newcommand*\MT@SetProtrusion[3][]{%
- \let\MT@extra@context\@empty
- \MT@set@named@keys{MT@pr@c}{#1}%
- \def\MT@permutelist{pr@c}%
- \setkeys{MT@cfg}{#2}%
- \MT@permute
- \MT@gdef@n{MT@pr@c@\MT@pr@c@name}{#3}%
- \MT@end@catcodes
-}
\def\SetExpansion{%
\MT@begin@catcodes
\MT@SetExpansion
@@ -887,15 +874,6 @@
\fi
}%
}
-\define@key{MT@pr@c}{unit}[character]{%
- \MT@glet@nc{MT@pr@c@\MT@curr@set@name @unit}\@empty
- \def\@tempa{#1}%
- \MT@ifstreq\@tempa{character}\relax{%
- \MT@ifdimen\@tempa
- {\MT@glet@nc{MT@pr@c@\MT@curr@set@name @unit}\@tempa}%
- {\MT@warn@nodim{character widths}}%
- }%
-}
\define@key{MT@tr@c}{unit}[1em]{%
\MT@glet@nc{MT@tr@c@\MT@curr@set@name @unit}\@empty
\def\@tempa{#1}%
@@ -961,30 +939,6 @@
\fi
\fi
}
-\def\MT@has@inh@prefix#1(#2)#3#4\@nil{%
- \let\MT@temp\relax
- \ifx\relax#3%
- \def\@tempa{#1#2}%
- \let\MT@inh@prefix\@empty
- \else
- \MT@ifstreq{\MT@feat}{pr}{%
- \MT@ifstreq{#2}{l}{\def\MT@inh@prefix@{{1000}{0}}\@firstoftwo}{%
- \MT@ifstreq{#2}{r}{\def\MT@inh@prefix@{{0}{1000}}\@firstoftwo}{%
- \MT@ifstreq{#2}{lr}{\def\MT@inh@prefix@{{500}{500}}\@firstoftwo}{%
- \MT@warning@nl{`#2' is not a valid prefix in inheritance list%
- \MessageBreak\MT@listname. Ignoring it}%
- \@secondoftwo}}}%
- {\def\@tempa{#3}%
- \def\MT@inh@prefix{#2}%
- \@gobble}%
- {\@firstofone}%
- }{\@firstofone}%
- {\let\MT@char\m@ne
- \let\MT@temp\@gobble
- }%
- \fi
- \MT@temp
-}
\MT@requires@luatex4{\let\pdfoutput\outputmode}\relax
\MT@def@bool@opt{DVIoutput}{%
\csname if\@tempa\endcsname
diff --git a/Master/texmf-dist/tex/latex/microtype/microtype-pdftex.def b/Master/texmf-dist/tex/latex/microtype/microtype-pdftex.def
index 7bb387536b1..ccf6b6d316f 100644
--- a/Master/texmf-dist/tex/latex/microtype/microtype-pdftex.def
+++ b/Master/texmf-dist/tex/latex/microtype/microtype-pdftex.def
@@ -31,7 +31,7 @@
%%
\ProvidesFile
{microtype-pdftex.def}
- [2021/10/31 v3.0
+ [2021/12/02 v3.0a
Definitions specific to
pdftex
(RS)]
@@ -53,30 +53,12 @@
\ifnum\pdftexversion = 14
\ifnum \expandafter`\pdftexrevision < `h
\def\MT@pdftex@no{2}
- \ifnum \expandafter`\pdftexrevision < `f
- \def\MT@pdftex@no{1}
- \fi
- \fi
- \else
- \ifnum\pdftexversion < 14
- \def\MT@pdftex@no{1}
\fi
\fi
\fi
\fi
\fi
\fi
-\ifnum
- \csname MT@\MT@engine tex@no\endcsname < 2
- \MT@warning@nl{You
- are using a \MT@engine tex version older than
- 0.14f%
- .\MessageBreak
- `\MT@MT' does not work with this version.\MessageBreak
- Please install a newer version of \MT@engine tex%
- .\MessageBreak I will quit now}
- \MT@clear@options
-\endinput\fi
\def
\MT@requires@pdftex%
#1{\ifnum
@@ -1022,19 +1004,6 @@
pdftex.}%
}
}
-\def\SetProtrusion{%
- \MT@begin@catcodes
- \MT@SetProtrusion
-}
-\newcommand*\MT@SetProtrusion[3][]{%
- \let\MT@extra@context\@empty
- \MT@set@named@keys{MT@pr@c}{#1}%
- \def\MT@permutelist{pr@c}%
- \setkeys{MT@cfg}{#2}%
- \MT@permute
- \MT@gdef@n{MT@pr@c@\MT@pr@c@name}{#3}%
- \MT@end@catcodes
-}
\def\SetExpansion{%
\MT@begin@catcodes
\MT@SetExpansion
@@ -1147,15 +1116,6 @@
{Upgrade pdftex.}%
}
}
-\define@key{MT@pr@c}{unit}[character]{%
- \MT@glet@nc{MT@pr@c@\MT@curr@set@name @unit}\@empty
- \def\@tempa{#1}%
- \MT@ifstreq\@tempa{character}\relax{%
- \MT@ifdimen\@tempa
- {\MT@glet@nc{MT@pr@c@\MT@curr@set@name @unit}\@tempa}%
- {\MT@warn@nodim{character widths}}%
- }%
-}
\define@key{MT@tr@c}{unit}[1em]{%
\MT@glet@nc{MT@tr@c@\MT@curr@set@name @unit}\@empty
\def\@tempa{#1}%
@@ -1235,30 +1195,6 @@
\fi
\fi
}
-\def\MT@has@inh@prefix#1(#2)#3#4\@nil{%
- \let\MT@temp\relax
- \ifx\relax#3%
- \def\@tempa{#1#2}%
- \let\MT@inh@prefix\@empty
- \else
- \MT@ifstreq{\MT@feat}{pr}{%
- \MT@ifstreq{#2}{l}{\def\MT@inh@prefix@{{1000}{0}}\@firstoftwo}{%
- \MT@ifstreq{#2}{r}{\def\MT@inh@prefix@{{0}{1000}}\@firstoftwo}{%
- \MT@ifstreq{#2}{lr}{\def\MT@inh@prefix@{{500}{500}}\@firstoftwo}{%
- \MT@warning@nl{`#2' is not a valid prefix in inheritance list%
- \MessageBreak\MT@listname. Ignoring it}%
- \@secondoftwo}}}%
- {\def\@tempa{#3}%
- \def\MT@inh@prefix{#2}%
- \@gobble}%
- {\@firstofone}%
- }{\@firstofone}%
- {\let\MT@char\m@ne
- \let\MT@temp\@gobble
- }%
- \fi
- \MT@temp
-}
\MT@def@bool@opt{DVIoutput}{%
\csname if\@tempa\endcsname
\ifnum\pdfoutput>\z@ \MT@opt@DVItrue \fi
diff --git a/Master/texmf-dist/tex/latex/microtype/microtype-show.sty b/Master/texmf-dist/tex/latex/microtype/microtype-show.sty
index f52b167938f..5c88b2a6b51 100644
--- a/Master/texmf-dist/tex/latex/microtype/microtype-show.sty
+++ b/Master/texmf-dist/tex/latex/microtype/microtype-show.sty
@@ -34,7 +34,7 @@
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage
{microtype-show}
- [2021/10/31 v3.0
+ [2021/12/02 v3.0a
Visual debugging for the microtype package
(RS)]
\RequirePackage{iftex}
diff --git a/Master/texmf-dist/tex/latex/microtype/microtype-xetex.def b/Master/texmf-dist/tex/latex/microtype/microtype-xetex.def
index ae382dddc41..8f1e2a59a70 100644
--- a/Master/texmf-dist/tex/latex/microtype/microtype-xetex.def
+++ b/Master/texmf-dist/tex/latex/microtype/microtype-xetex.def
@@ -31,26 +31,10 @@
%%
\ProvidesFile
{microtype-xetex.def}
- [2021/10/31 v3.0
+ [2021/12/02 v3.0a
Definitions specific to
xetex
(RS)]
-\ifdim 0\XeTeXrevision pt < 0.9997pt
- \def\MT@xetex@no{1}
-\else
- \def\MT@xetex@no{2}
-\fi
-\ifnum
- \csname MT@\MT@engine tex@no\endcsname < 2
- \MT@warning@nl{You
- are using a \MT@engine tex version older than
- 0.9997%
- .\MessageBreak
- `\MT@MT' does not work with this version.\MessageBreak
- Please install a newer version of \MT@engine tex%
- .\MessageBreak I will quit now}
- \MT@clear@options
-\endinput\fi
\def\MT@ifint#1{%
\if!\ifnum9<1#1!\else?\fi
\expandafter\@firstoftwo
@@ -308,34 +292,12 @@
Use
pdftex.}%
}
-\def\SetProtrusion{%
- \MT@begin@catcodes
- \MT@SetProtrusion
-}
-\newcommand*\MT@SetProtrusion[3][]{%
- \let\MT@extra@context\@empty
- \MT@set@named@keys{MT@pr@c}{#1}%
- \def\MT@permutelist{pr@c}%
- \setkeys{MT@cfg}{#2}%
- \MT@permute
- \MT@gdef@n{MT@pr@c@\MT@pr@c@name}{#3}%
- \MT@end@catcodes
-}
\define@key{MT@pr@c}{context}[]{%
\MT@error{Protrusion contexts only work with pdftex
\MessageBreak or luatex.
Ignoring `context' key\on@line}%
{Use pdftex or luatex.}%
}
-\define@key{MT@pr@c}{unit}[character]{%
- \MT@glet@nc{MT@pr@c@\MT@curr@set@name @unit}\@empty
- \def\@tempa{#1}%
- \MT@ifstreq\@tempa{character}\relax{%
- \MT@ifdimen\@tempa
- {\MT@glet@nc{MT@pr@c@\MT@curr@set@name @unit}\@tempa}%
- {\MT@warn@nodim{character widths}}%
- }%
-}
\def\MT@inh@split#1=#2=#3\relax{%
\def\@tempa{#1}%
\ifx\@tempa\@empty \else
@@ -360,30 +322,6 @@
\fi
\fi
}
-\def\MT@has@inh@prefix#1(#2)#3#4\@nil{%
- \let\MT@temp\relax
- \ifx\relax#3%
- \def\@tempa{#1#2}%
- \let\MT@inh@prefix\@empty
- \else
- \MT@ifstreq{\MT@feat}{pr}{%
- \MT@ifstreq{#2}{l}{\def\MT@inh@prefix@{{1000}{0}}\@firstoftwo}{%
- \MT@ifstreq{#2}{r}{\def\MT@inh@prefix@{{0}{1000}}\@firstoftwo}{%
- \MT@ifstreq{#2}{lr}{\def\MT@inh@prefix@{{500}{500}}\@firstoftwo}{%
- \MT@warning@nl{`#2' is not a valid prefix in inheritance list%
- \MessageBreak\MT@listname. Ignoring it}%
- \@secondoftwo}}}%
- {\def\@tempa{#3}%
- \def\MT@inh@prefix{#2}%
- \@gobble}%
- {\@firstofone}%
- }{\@firstofone}%
- {\let\MT@char\m@ne
- \let\MT@temp\@gobble
- }%
- \fi
- \MT@temp
-}
\MT@def@bool@opt{DVIoutput}{%
\csname if\@tempa\endcsname
\MT@warning@nl{Ignoring `DVIoutput' option}%
diff --git a/Master/texmf-dist/tex/latex/microtype/microtype.cfg b/Master/texmf-dist/tex/latex/microtype/microtype.cfg
index 8a33d8f86e0..a5677e73556 100644
--- a/Master/texmf-dist/tex/latex/microtype/microtype.cfg
+++ b/Master/texmf-dist/tex/latex/microtype/microtype.cfg
@@ -41,7 +41,7 @@
%%
\ProvidesFile
{microtype.cfg}
- [2021/10/31 v3.0
+ [2021/12/02 v3.0a
microtype main configuration file
(RS)]
@@ -135,6 +135,7 @@
\DeclareMicrotypeAlias{mlmm} {cmm} % "
\DeclareMicrotypeAlias{NewCM10-Book.otf} {New Computer Modern}
\DeclareMicrotypeAlias{NewCM10-Regular.otf}{New Computer Modern}
+\DeclareMicrotypeAlias{CMU Serif} {New Computer Modern}
%% -- Palatino
\DeclareMicrotypeAlias{pxr} {ppl} % pxfonts
\DeclareMicrotypeAlias{qpl} {ppl} % TeX Gyre Pagella (formerly: qfonts/QuasiPalatino)
diff --git a/Master/texmf-dist/tex/latex/microtype/microtype.lua b/Master/texmf-dist/tex/latex/microtype/microtype.lua
index 173f30da8bb..c407ca58b93 100644
--- a/Master/texmf-dist/tex/latex/microtype/microtype.lua
+++ b/Master/texmf-dist/tex/latex/microtype/microtype.lua
@@ -35,13 +35,14 @@ microtype = microtype or {}
local microtype = microtype
microtype.module = {
name = "microtype",
- version = "3.0",
- date = "2021/10/31",
+ version = "3.0a",
+ date = "2021/12/02",
description = "microtype module.",
author = "E. Roux, R. Schlicht and P. Gesang",
copyright = "E. Roux, R. Schlicht and P. Gesang",
license = "LPPL",
}
+luatexbase.provides_module(microtype.module)
function microtype.info(...)
luatexbase.module_info("microtype",...)
@@ -61,6 +62,16 @@ function microtype.sprint (...)
tex.sprint(catpackage, ...)
end
+if not math.tointeger or not pcall(math.tointeger,0) then
+ math.mininteger=-0x4FFFFFFFFFFF
+ math.maxinteger=0x4FFFFFFFFFFF
+ local floor=math.floor
+ function math.tointeger(n)
+ local f=floor(n)
+ return f==n and f or nil
+ end
+end
+
local function if_int(s)
if find(s,"^-*[0-9]+ *$") then
tex_write("@firstoftwo")
@@ -172,9 +183,10 @@ end
if luaotfload and luaotfload.aux and luaotfload.aux.slot_of_name then
local slot_of_name = luaotfload.aux.slot_of_name
microtype.name_to_slot = function(name, unsafe)
- local n = math.tointeger(slot_of_name(font.current(), name, unsafe))
- if n and n > 1114111 then n = -1 end
- return n
+ local n = slot_of_name(font.current(), name, unsafe)
+ if not n then return -1 end
+ if n > 1114111 then return -1 end
+ return math.tointeger(n)
end
else
-- we dig into internal structure (should be avoided)
diff --git a/Master/texmf-dist/tex/latex/microtype/microtype.sty b/Master/texmf-dist/tex/latex/microtype/microtype.sty
index cc4756cc230..9d78980fb3d 100644
--- a/Master/texmf-dist/tex/latex/microtype/microtype.sty
+++ b/Master/texmf-dist/tex/latex/microtype/microtype.sty
@@ -30,7 +30,7 @@
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage
{microtype}
- [2021/10/31 v3.0
+ [2021/12/02 v3.0a
Micro-typographical refinements
(RS)]
\def\MT@MT
@@ -78,6 +78,8 @@
\newcommand*\microtypesetup[1]{}
\newcommand*\microtypecontext[1]{}
\newcommand*\textmicrotypecontext[2]{#2}
+\newcommand\leftprotrusion[1]{#1}
+\newcommand\rightprotrusion[1]{#1}
\@ifpackageloaded{letterspace}{\let\MT@textls\relax}{%
\newcommand*\lsstyle{}
\newcommand\textls[2][]{}
@@ -124,7 +126,6 @@
\def\MT@clear@options{%
\AtEndOfPackage{\let\@unprocessedoptions\relax\MT@restore@catcodes}%
\let\CurrentOption\@empty
- \let\MT@endinput\endinput
}
\ifx\normalpdftexversion\@undefined \else
\let\pdftexversion \normalpdftexversion
@@ -132,23 +133,55 @@
\let\pdfoutput \normalpdfoutput
\fi
\let\MT@engine\relax
+\newif\ifMT@engine@unfit
+\MT@engine@unfittrue
\ifx\pdftexversion\@undefined \else
\ifx\pdftexversion\relax \else
\def\MT@engine{pdf}
+ \def\MT@engine@minversion{0.14f}
+ \ifnum\pdftexversion
+ > 13
+ \MT@engine@unfitfalse
+ \ifnum \pdftexversion=14
+ \ifnum \expandafter`\pdftexrevision < `f
+ \MT@engine@unfittrue
+ \fi
+ \fi
+ \fi
\fi
\fi
\ifx\directlua\@undefined \else
\ifx\directlua\relax \else
\def\MT@engine{lua}
+ \MT@engine@unfitfalse
\fi
\fi
\ifx\MT@engine\relax
\ifx\XeTeXversion\@undefined \else
\ifx\XeTeXversion\relax \else
\def\MT@engine{xe}
+ \def\MT@engine@minversion{0.9997}
+ \ifdim 0\XeTeXrevision pt > 0.9996pt
+ \MT@engine@unfitfalse
+ \fi
\fi
\fi
\fi
+\ifMT@engine@unfit
+ \MT@warning@nl{You
+ \ifx\MT@engine\relax
+ don't seem to be using pdftex%
+ , luatex or xetex%
+ .\MessageBreak `\MT@MT' only works with these engines.%
+ \else
+ are using a \MT@engine tex version older than
+ \MT@engine@minversion
+ .\MessageBreak `\MT@MT' does not work with this version.%
+ \MessageBreak Please install a newer version of \MT@engine tex.%
+ \fi
+ \MessageBreak I will quit now}
+ \MT@clear@options
+\endinput\fi
\RequirePackage{keyval}[1997/11/10]
^^X\RequirePackage{etoolbox}
\newtoks\MT@toks
@@ -425,7 +458,7 @@
\MT@ifdefined@n@T{opt@babel.\@pkgextension}{%
\@expandtwoargs\MT@in@clist{#1}
{\csname opt@babel.\@pkgextension\endcsname,\@classoptionslist}%
- \ifMT@inlist@\expandafter\@gobble\fi
+ \ifMT@inlist@\expandafter\@secondoftwo\else\expandafter\@firstofone\fi
}\@gobble
}
\def\MT@restore@p@h{\chardef\%`\% \chardef\#`\# }
@@ -487,6 +520,7 @@ time will almost certainly lead to undesired results. Have your choice!}%
\MT@with@package@T{csquotes}{%
\@ifpackagelater{csquotes}{2005/05/11}{%
\g@addto@macro\MT@setupfont@hook\@disablequotes
+ \g@addto@macro\MT@prot@hook\@disablequotes
}{%
\MT@warning@nl{%
Should you receive warnings about unknown slot\MessageBreak
@@ -550,12 +584,22 @@ time will almost certainly lead to undesired results. Have your choice!}%
\def\MT@patch@info#1{\MT@info{Applying patch `#1'}}
\def\MT@patch@warn#1{\MT@warning{Unable to apply patch `#1'}}
\def\MT@patch@undef#1{\MT@warning{Patch `#1' undefined. Cannot apply it}}
+\def\MT@patch@info@undo#1{\MT@info{Reverting patch `#1'}}
\let\MT@patches@def\@gobble
\def\MT@define@patch#1#2#3{%
\g@addto@macro\MT@patches@def{,#1}%
\MT@def@n{MT@patch@@#1}{#2}%
\MT@def@n{MT@patch@undo@@#1}{#3}%
}
+\let\MT@redefined@patches\@empty
+\def\MT@redefine@patch#1#2#3{%
+ \g@addto@macro\MT@redefined@patches{%
+ \MT@def@n{MT@patch@@#1}{#2}%
+ \MT@def@n{MT@patch@undo@@#1}{#3}%
+ }%
+}
+\@onlypreamble\MT@define@patch
+\@onlypreamble\MT@redefine@patch
\def\MT@append@patch#1#2{%
\MT@remember@patch{#1}%
\apptocmd#1{#2}\relax\MT@patch@okfalse
@@ -579,10 +623,14 @@ time will almost certainly lead to undesired results. Have your choice!}%
\MT@warning{Patch `#1' has already been applied,\MessageBreak
cannot reapply it}%
\else
+ \let\MT@restore@catcodes\@empty
+ \MT@with@babel@and@T{spanish} {\MT@fix@catcode{62}{12}}% >
+ \MT@with@babel@and@T{galician}{\MT@fix@catcode{62}{12}}% >
\def\MT@patch@name{#1}%
\g@addto@macro\MT@patches@applied{,#1}%
\@nameuse{MT@patch@@#1}%
\@nameuse{MT@patch@\ifMT@patch@ok info\else warn\fi}{#1}%
+ \MT@restore@catcodes
\fi}
{\MT@patch@undef{#1}}%
}
@@ -591,33 +639,27 @@ time will almost certainly lead to undesired results. Have your choice!}%
\ifMT@inlist@
\MT@rem@from@clist{#1}\MT@patches@applied
\@nameuse{MT@patch@undo@@#1}%
+ \MT@patch@info@undo{#1}%
\else
\MT@warning{Patch `#1' hasn't been applied,\MessageBreak cannot revert it}%
\fi
}
{\catcode`\#=12
\MT@addto@setup{%
- \@ifclassloaded{beamer}
- {\MT@define@patch{item}
- {\MT@append@patch\@item\leftprotrusion
- \MT@patch@patch\@item{\everypar{}}{\everypar{\leftprotrusion}}%
- \MT@append@patch\beamer@@callorigitem\leftprotrusion
+ \MT@define@patch{item}{%
+ \MT@append@patch\@item\leftprotrusion
+ \MT@patch@patch\@item{\everypar{}}{\everypar{\leftprotrusion}}%
+ \@ifclassloaded{beamer}
+ {\MT@append@patch\beamer@@callorigitem\leftprotrusion
\MT@patch@patch\beamer@callorigitem{\ignorespaces}{\ignorespaces\leftprotrusion}}
- {}}
- {\@ifclassloaded{simplecv}
- {\MT@define@patch{item}
- {\MT@append@patch\@item\leftprotrusion
- \MT@append@patch\@topic@item\leftprotrusion
- \MT@patch@patch\@item{\everypar{}}{\everypar{\leftprotrusion}}}
+ {\@ifclassloaded{simplecv}
+ {\MT@append@patch\@topic@item\leftprotrusion}
{}}%
- {\MT@define@patch{item}
- {\MT@append@patch\@item\leftprotrusion
- \MT@patch@patch\@item{\everypar{}}{\everypar{\leftprotrusion}}}
- {}}}%
- \@ifclassloaded{memoir}
- {\MT@define@patch{toc}
- {\MT@append@patch\numberline\leftprotrusion
- \MT@append@patch\booknumberline\leftprotrusion
+ }{}%
+ \MT@define@patch{toc}{%
+ \MT@append@patch\numberline\leftprotrusion
+ \@ifclassloaded{memoir}
+ {\MT@append@patch\booknumberline\leftprotrusion
\MT@append@patch\partnumberline\leftprotrusion
\MT@append@patch\chapternumberline\leftprotrusion
\MT@append@patch\cftbookafterpnum\noprotrusion
@@ -630,32 +672,36 @@ time will almost certainly lead to undesired results. Have your choice!}%
\MT@append@patch\cftsubparagraphafterpnum\noprotrusion
\MT@append@patch\cftfigureafterpnum\noprotrusion
\MT@append@patch\cfttableafterpnum\noprotrusion}
- {}}
- {\MT@define@patch{toc}
- {\MT@append@patch\numberline\leftprotrusion}
- {}}%
- \@ifpackageloaded{amsmath}
- {\MT@define@patch{eqnum}
+ {}%
+ }{}%
+ \MT@define@patch{eqnum}{%
+ \@ifclassloaded{IEEEtran}
+ {\MT@patch@patch\theequationdis{(}{\leftprotrusion{(}}%
+ \MT@patch@patch\theequationdis{)}{\rightprotrusion{)}}%
+ \MT@patch@patch\theIEEEsubequationdis{(}{\leftprotrusion{(}}%
+ \MT@patch@patch\theIEEEsubequationdis{)}{\rightprotrusion{)}}}%
+ {}%
+ \@ifpackageloaded{amsmath}
{\MT@patch@patch\tagform@{(}{\leftprotrusion{(}}%
\MT@patch@patch\tagform@{)}{\rightprotrusion{)}}%
- \MT@patch@patch\eqref{\tagform@}{\@nameuse{MT@patch@saved@\string\tagform@}}}%
- {}}
- {\MT@define@patch{eqnum}
+ \MT@patch@patch\eqref{\tagform@}{\@nameuse{MT@patch@saved@\string\tagform@}}}
{\MT@patch@patch\@eqnnum{(}{\leftprotrusion{(}}%
\MT@patch@patch\@eqnnum{)}{\rightprotrusion{)}}}%
- {}}%
- \@ifclassloaded{memoir}
- {\MT@define@patch{footnote}
+ }{}%
+ \MT@define@patch{footnote}{%
+ \@ifpackageloaded{hyperref}
+ {\ifHy@hyperfootnotes\expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi}
+ \@secondoftwo
{\MT@patch@patch\@footnotetext{\ignorespaces}{\ignorespaces\leftprotrusion}%
- \MT@patch@patch\@footnotetext{\foottextfont #1}{\foottextfont\leftprotrusion #1}}
- {}}
- {\@ifpackageloaded{scrbase}
- {\MT@define@patch{footnote}
+ \MT@patch@patch\@footnotetext{\@empty\ignorespaces}{\@empty\ignorespaces\leftprotrusion}}
+ {\@ifpackageloaded{scrkbase}
{\MT@patch@patch\scr@saved@footnotetext{\ignorespaces}{\ignorespaces\leftprotrusion}}
- {}}
- {\MT@define@patch{footnote}
- {\MT@patch@patch\@footnotetext{\ignorespaces}{\ignorespaces\leftprotrusion}}
- {}}}%
+ {\MT@patch@patch\@footnotetext{\ignorespaces}{\ignorespaces\leftprotrusion}%
+ \@ifclassloaded{memoir}
+ {\MT@patch@patch\@footnotetext{\foottextfont #1}{\foottextfont\leftprotrusion #1}}
+ {}}}%
+ }{}%
+ \MT@redefined@patches
}}
\expandafter\ifx\the\font\nullfont\normalfont\fi
\def\MT@split@name#1/#2/#3/#4/#5/#6\@nil{%
@@ -957,54 +1003,57 @@ time will almost certainly lead to undesired results. Have your choice!}%
\DeclareRobustCommand\noprotrusion{\leavevmode\kern-\p@\kern\p@}
}
\newbox\MT@tempbox
-\newdimen\MT@leftmarginkern
-\newdimen\MT@rightmarginkern
\DeclareRobustCommand\leftprotrusion{%
\MT@toks{}%
\MT@prot@get@firstchar
}
-\long\def\MT@prot@l#1{%
- \MT@get@prot{#1}%
- \ifdim\MT@leftmarginkern=\z@ \else
- \leavevmode
- \MT@vinfo{|<< adding left margin kern for `\@tempa':\MessageBreak
- \the\MT@leftmarginkern \on@line}%
- \kern\MT@leftmarginkern
- \fi
+\def\MT@prot@l#1{%
+ \MT@get@prot{#1}{left}%
#1%
}
\DeclareRobustCommand\rightprotrusion{\MT@prot@r}
\long\def\MT@prot@r#1{%
- #1%
- \MT@get@prot{#1}%
- \ifdim\MT@rightmarginkern=\z@ \else
- \MT@vinfo{>>| adding right margin kern for `\@tempa':\MessageBreak
- \the\MT@rightmarginkern \on@line}%
- \kern\MT@rightmarginkern
- \fi
+ {#1}%
+ \MT@get@prot{#1}{right}%
}
-\long\def\MT@get@prot#1{%
- \MT@leftmarginkern=\z@
- \MT@rightmarginkern=\z@
+\let\MT@prot@hook\@empty
+\long\def\MT@get@prot#1#2{%
\begingroup
+ \def\@elt##1{\global\value{##1}\the\value{##1}\relax}%
+ \edef\MT@ckpt{\cl@@ckpt}%
+ \let\@elt\relax
+ \@fileswfalse
\setbox\MT@tempbox\vbox{%
\everypar{}%
\parfillskip=\z@skip
\hbadness\@M
+ \clubpenalty\z@
+ \widowpenalty\z@
+ \interlinepenalty\z@
\@newlistfalse
+ \MT@prot@hook
\noindent #1}%
\vbadness=\@M
\splittopskip=\z@
+ \vfuzz=\maxdimen
\setbox\MT@tempbox\vbox{%
- \global\setbox\MT@tempbox=\vsplit\MT@tempbox to \normalbaselineskip
- \unvbox\MT@tempbox
- \global\setbox\MT@tempbox=\lastbox
+ \ifvbox\MT@tempbox
+ \global\setbox\MT@tempbox=\vsplit\MT@tempbox to \normalbaselineskip
+ \unvbox\MT@tempbox
+ \global\setbox\MT@tempbox=\lastbox
+ \fi
}%
+ \MT@ckpt
\endgroup
\ifhbox\MT@tempbox
- \def\@tempa{#1}%
- \MT@leftmarginkern=\leftmarginkern\MT@tempbox\relax
- \MT@rightmarginkern=\rightmarginkern\MT@tempbox\relax
+ \@tempdima=\@nameuse{#2marginkern}\MT@tempbox\relax
+ \expandafter\ifdim\@tempdima=\z@ \else
+ \leavevmode
+ \MT@vinfo{|<< adding #2 margin kern% for `\@tempa' % FIXME
+ :\MessageBreak
+ \the\@tempdima \on@line}%
+ \kern\@tempdima
+ \fi
\fi
}
\def\MT@prot@ifx#1{%
@@ -1050,21 +1099,40 @@ time will almost certainly lead to undesired results. Have your choice!}%
\@gobble
}\@firstofone
}
+\def\MT@prot@group{%
+ \begingroup
+ \catcode`\\=11
+ \obeylines
+ \MT@prot@group@}
+\def\MT@prot@group@{\afterassignment\MT@prot@group@@ \MT@toks}
+\def\MT@prot@group@@{%
+ \catcode`\\=0
+ \catcode`\^^M=10
+ {\expandafter\MT@prot@l\expandafter
+ {\expandafter\scantokens\expandafter{\the\MT@toks\noexpand}}}%
+ \endgroup}
+^^Q\def\MT@prot@group#1{\MT@prot@l{#1}}
\def\MT@prot@get@firstchar{\futurelet\MT@prot@next\MT@prot@get@first@char}
\def\MT@prot@get@nextchar{\futurelet\MT@prot@next\MT@prot@get@next@char}
\def\MT@prot@get@first@char{%
- \def\MT@temp*##1{\MT@prot@get@firstchar}%
\MT@prot@ifcat\bgroup{%
- \long\def\MT@temp*##1{{\MT@prot@l{##1}}}%
+ \def\MT@temp*{\MT@prot@group}%
}{%
- \MT@prot@ifx\ignorespaces\relax{%
- \MT@prot@ifx\relax\relax{%
+ \MT@prot@ifx\ignorespaces{%
+ \def\MT@temp*##1{\MT@prot@get@firstchar}%
+ }{%
+ \MT@prot@ifx\relax{%
+ \def\MT@temp*##1{\MT@prot@get@firstchar}%
+ }{%
\MT@prot@ifx\@sptoken{%
\def\MT@temp* {\MT@prot@get@firstchar}%
}{%
- \def\MT@temp*{\MT@prot@addtoken@first}%
- \MT@prot@ifcat{a}\relax{%
- \MT@prot@ifcat{!}\relax{%
+ \MT@prot@ifcat{a}{%
+ \def\MT@temp*{\MT@prot@addtoken@first}%
+ }{%
+ \MT@prot@ifcat{!}{%
+ \def\MT@temp*{\MT@prot@addtoken@first}%
+ }{%
\def\MT@temp*{}%
\MT@prot@ifmacro{%
\MT@prot@iffirstcmd\UTFviii@two@octets{%
@@ -2082,6 +2150,19 @@ time will almost certainly lead to undesired results. Have your choice!}%
\MT@gdef@n{MT@babel@\@tempa}{#2}%
}%
}
+\def\SetProtrusion{%
+ \MT@begin@catcodes
+ \MT@SetProtrusion
+}
+\newcommand*\MT@SetProtrusion[3][]{%
+ \let\MT@extra@context\@empty
+ \MT@set@named@keys{MT@pr@c}{#1}%
+ \def\MT@permutelist{pr@c}%
+ \setkeys{MT@cfg}{#2}%
+ \MT@permute
+ \MT@gdef@n{MT@pr@c@\MT@pr@c@name}{#3}%
+ \MT@end@catcodes
+}
\def\MT@set@named@keys#1#2{%
\def\x##1name=##2,##3\@nil{%
\setkeys{#1}{name=##2}%
@@ -2187,6 +2268,15 @@ time will almost certainly lead to undesired results. Have your choice!}%
\MT@warning{`\@tempa' is not a dimension.\MessageBreak
Ignoring it and setting values relative to\MessageBreak #1}%
}
+\define@key{MT@pr@c}{unit}[character]{%
+ \MT@glet@nc{MT@pr@c@\MT@curr@set@name @unit}\@empty
+ \def\@tempa{#1}%
+ \MT@ifstreq\@tempa{character}\relax{%
+ \MT@ifdimen\@tempa
+ {\MT@glet@nc{MT@pr@c@\MT@curr@set@name @unit}\@tempa}%
+ {\MT@warn@nodim{character widths}}%
+ }%
+}
\renewcommand*\DeclareCharacterInheritance[1][]{%
\let\MT@extra@context\@empty
\let\MT@extra@inputenc\@undefined
@@ -2237,6 +2327,30 @@ time will almost certainly lead to undesired results. Have your choice!}%
\expandafter\MT@inh@do
\fi
}
+\def\MT@has@inh@prefix#1(#2)#3#4\@nil{%
+ \let\MT@temp\relax
+ \ifx\relax#3%
+ \def\@tempa{#1#2}%
+ \let\MT@inh@prefix\@empty
+ \else
+ \MT@ifstreq{\MT@feat}{pr}{%
+ \MT@ifstreq{#2}{l}{\def\MT@inh@prefix@{{1000}{0}}\@firstoftwo}{%
+ \MT@ifstreq{#2}{r}{\def\MT@inh@prefix@{{0}{1000}}\@firstoftwo}{%
+ \MT@ifstreq{#2}{lr}{\def\MT@inh@prefix@{{500}{500}}\@firstoftwo}{%
+ \MT@warning@nl{`#2' is not a valid prefix in inheritance list%
+ \MessageBreak\MT@listname. Ignoring it}%
+ \@secondoftwo}}}%
+ {\def\@tempa{#3}%
+ \def\MT@inh@prefix{#2}%
+ \@gobble}%
+ {\@firstofone}%
+ }{\@firstofone}%
+ {\let\MT@char\m@ne
+ \let\MT@temp\@gobble
+ }%
+ \fi
+ \MT@temp
+}
\MT@gdef@n{MT@pr@c@U/euroitc///}{euroitc}
\MT@gdef@n{MT@pr@c@U/euroitcs///}{euroitc}
\MT@gdef@n{MT@pr@c@U/euroitc//it/}{euroitci}
@@ -2574,16 +2688,7 @@ time will almost certainly lead to undesired results. Have your choice!}%
^^Q \MT@warning@nl{Patches require the etex extensions. Ignoring them}%
\fi
}
-\let\MT@endinput\relax
-\ifx\MT@engine\relax
- \MT@warning@nl{You don't seem to be using pdftex, luatex or xetex.\MessageBreak
- `\MT@MT' only works with these engines.\MessageBreak
- I will quit now}
- \MT@clear@options
-\else
- \input{microtype-\MT@engine tex.def}
-\fi
-\MT@endinput
+\input{microtype-\MT@engine tex.def}
\MT@protrusiontrue
\define@key{MT}{config}[]{\relax}
\def\MT@get@config#1config=#2,#3\@nil{%
@@ -2639,7 +2744,7 @@ time will almost certainly lead to undesired results. Have your choice!}%
\define@key{MTX}{patch}[all]{%
\def\@tempa{#1}%
\MT@ifstreq\@tempa{all}
- \relax
+ {\let\@tempa\MT@patches@def}
{\MT@ifstreq\@tempa{none}
{\let\@tempa\@empty}
\relax}%
@@ -2651,7 +2756,7 @@ time will almost certainly lead to undesired results. Have your choice!}%
\define@key{MTX}{nopatch}[all]{%
\def\@tempa{#1}%
\MT@ifstreq\@tempa{all}
- \relax
+ {\let\@tempa\MT@patches@def}
{\MT@ifstreq\@tempa{none}
{\let\@tempa\@empty}
\relax}%
diff --git a/Master/texmf-dist/tex/latex/microtype/mt-CharisSIL.cfg b/Master/texmf-dist/tex/latex/microtype/mt-CharisSIL.cfg
index 6b09902a955..fe768a838fb 100644
--- a/Master/texmf-dist/tex/latex/microtype/mt-CharisSIL.cfg
+++ b/Master/texmf-dist/tex/latex/microtype/mt-CharisSIL.cfg
@@ -46,7 +46,7 @@
%% for xetex (EU1) and luatex (EU2), resp. both (TU)
\DeclareCharacterInheritance
- { encoding = {EU1,EU2,TU},
+ { encoding = {TU,EU1,EU2},
family = Charis SIL }
{ A = {À,Á,Â,Ã,Ä,Å,Ā,Ă,Ą,Ǎ,Ǟ,Ǡ,Ȧ,Ǻ,Ȁ,Ȃ,Ḁ,Ạ,Ả,Ấ,Ầ,Ẩ,Ẫ,Ậ,Ắ,Ằ,Ẳ,Ẵ,Ặ,Ꜳ,
А,Ӑ,Ӓ}, % Cyrillic
@@ -173,7 +173,7 @@
\SetProtrusion
[ name = Charis-default ]
- { encoding = {EU1,EU2,TU},
+ { encoding = {TU,EU1,EU2},
family = Charis SIL }
{
A = {50,50},
@@ -346,7 +346,7 @@
\SetProtrusion
[ name = Charis-it ]
- { encoding = {EU1,EU2,TU},
+ { encoding = {TU,EU1,EU2},
family = Charis SIL,
shape = {it,sl} }
{
@@ -481,7 +481,7 @@
[ name = Charis-sc,
load = Charis-default,
command = {MT@get@CHARIS@SC} ]
- { encoding = {EU1,EU2,TU},
+ { encoding = {TU,EU1,EU2},
family = Charis SIL,
shape = {sc} }
{
diff --git a/Master/texmf-dist/tex/latex/microtype/mt-LatinModernRoman.cfg b/Master/texmf-dist/tex/latex/microtype/mt-LatinModernRoman.cfg
index f91bbb87fa9..e520b0217ba 100644
--- a/Master/texmf-dist/tex/latex/microtype/mt-LatinModernRoman.cfg
+++ b/Master/texmf-dist/tex/latex/microtype/mt-LatinModernRoman.cfg
@@ -46,7 +46,7 @@
%% for xetex (EU1) and luatex (EU2), resp. both (TU)
\DeclareCharacterInheritance
- { encoding = {EU1,EU2,TU},
+ { encoding = {TU,EU1,EU2},
family = Latin Modern Roman }
{
A = {À,Á,Â,Ã,Ä,Å,Ā,Ă,Ą,Ǻ,Ȁ,Ạ,Ả,Ấ,Ầ,Ẩ,Ẫ,Ậ,Ắ,Ằ,Ẳ,Ặ,
@@ -115,7 +115,7 @@
\SetProtrusion
[ name = LMR-default ]
- { encoding = {EU1,EU2,TU},
+ { encoding = {TU,EU1,EU2},
family = Latin Modern Roman }
{
A = {50,50},
@@ -212,7 +212,7 @@
\SetProtrusion
[ name = LMR-it ]
- { encoding = {EU1,EU2,TU},
+ { encoding = {TU,EU1,EU2},
family = Latin Modern Roman,
shape = {it,sl} }
{
diff --git a/Master/texmf-dist/tex/latex/microtype/mt-NewComputerModern.cfg b/Master/texmf-dist/tex/latex/microtype/mt-NewComputerModern.cfg
index d13e1cf7e90..ed68898bcdb 100644
--- a/Master/texmf-dist/tex/latex/microtype/mt-NewComputerModern.cfg
+++ b/Master/texmf-dist/tex/latex/microtype/mt-NewComputerModern.cfg
@@ -45,14 +45,14 @@
%% ------------------------------------------------------------------------
%%
\ProvidesFile
- {mt-NewComputerModern.cfg}[2021/08/08 v1.0 microtype config. file: New Computer Modern (AT)]
+ {mt-NewComputerModern.cfg}[2021/11/09 v1.1 microtype config. file: New Computer Modern (AT)]
%%% -----------------------------------------------------------------------
%%% INHERITANCE
%% for xetex (EU1) and luatex (EU2), resp. both (TU)
\DeclareCharacterInheritance
- { encoding = {EU1,EU2,TU},
+ { encoding = {TU,EU1,EU2},
family = {New Computer Modern} }
{
A = {À,Á,Â,Ã,Ä,Å,Ā,Ă,Ą,Ǻ,Ȁ,Ạ,Ả,Ấ,Ầ,Ẩ,Ẫ,Ậ,Ắ,Ằ,Ẳ,Ặ,
@@ -137,8 +137,7 @@
\SetProtrusion
[ name = NCM-default ]
- { encoding = {EU1,EU2,TU},
- family = {New Computer Modern} }
+ { }
{
A = {50,50},
Æ = {50, },
@@ -151,14 +150,8 @@
W = {50,50},
X = {50,50},
Y = {50,50},
- /a.end = {,330},
- /e.end = {,350},
k = { ,50},
- /k.alt = { ,50},
r = { ,50},
- /r.end = {,300},
- /m.end = {,200},
- /n.end = {,300},
t = { ,70},
v = {50,50},
w = {50,50},
@@ -223,11 +216,6 @@
× = {150,250},
÷ = {150,250},
€ = {100, },
- /one.oldstyle = {100,100},
- /two.oldstyle = { 50, 50},
- /three.oldstyle = { 30, 80},
- /four.oldstyle = { 50, 50},
- /seven.oldstyle = { 50, 80},
Ά = {50,50}, % /Alphatonos
Ὰ = {120,50}, %
Ἀ = {120,50}, %
@@ -321,10 +309,40 @@
}
\SetProtrusion
+ [ name = NCM-TU,
+ load = NCM-default ]
+ { encoding = {TU,EU1,EU2},
+ family = {New Computer Modern} }
+ {
+ /a.end = {,330},
+ /e.end = {,350},
+ /k.alt = { ,50},
+ /r.end = {,300},
+ /m.end = {,200},
+ /n.end = {,300},
+ /one.oldstyle = {100,100},
+ /two.oldstyle = { 50, 50},
+ /three.oldstyle = { 30, 80},
+ /four.oldstyle = { 50, 50},
+ /seven.oldstyle = { 50, 80},
+ }
+
+\SetProtrusion
+ [ name = CMU-TU,
+ load = NCM-default ]
+ { encoding = {TU,EU1,EU2},
+ family = {CMU Serif} }
+ {
+ /oneoldstyle = {100,100},
+ /twooldstyle = { 50, 50},
+ /threeoldstyle = { 30, 80},
+ /fouroldstyle = { 50, 50},
+ /sevenoldstyle = { 50, 80},
+ }
+
+\SetProtrusion
[ name = NCM-it ]
- { encoding = {EU1,EU2,TU},
- family = {New Computer Modern},
- shape = {it,sl} }
+ { }
{
A = {125,100},
Æ = {125,-55},
@@ -382,12 +400,6 @@
x = {65,-40},
y = {130,-20},
z = {110,-80},
- /a.end = {,330}, %Fix
- /e.end = {,350}, %Fix
- /k.alt = { ,50}, %Fix
- /r.end = {,300}, %Fix
- /m.end = {,200}, %Fix
- /n.end = {,300}, %Fix
0 = {170,-85},
1 = {230,110},
2 = {130,-70},
@@ -447,14 +459,6 @@
× = {200,200},
÷ = {200,200},
€ = {150, },
- /one.oldstyle = {100,100},
- /two.oldstyle = {100, 80},
- /three.oldstyle = { 80, 50},
- /four.oldstyle = { 80, 80},
- /five.oldstyle = { 50, },
- /six.oldstyle = { 50, },
- /seven.oldstyle = { 80, 80},
- /eight.oldstyle = { 50, },
Γ = {100,120}, % /Gamma
Δ = {120,100}, % /Delta
Θ = {120, 50}, % /Theta
@@ -555,6 +559,46 @@
ψ = {80,},
}
+\SetProtrusion
+ [ name = NCM-it-TU,
+ load = NCM-it ]
+ { encoding = {TU,EU1,EU2},
+ family = {New Computer Modern},
+ shape = {it,sl} }
+ {
+ /a.end = {,330}, %Fix
+ /e.end = {,350}, %Fix
+ /k.alt = { ,50}, %Fix
+ /r.end = {,300}, %Fix
+ /m.end = {,200}, %Fix
+ /n.end = {,300}, %Fix
+ /one.oldstyle = {100,100},
+ /two.oldstyle = {100, 80},
+ /three.oldstyle = { 80, 50},
+ /four.oldstyle = { 80, 80},
+ /five.oldstyle = { 50, },
+ /six.oldstyle = { 50, },
+ /seven.oldstyle = { 80, 80},
+ /eight.oldstyle = { 50, },
+ }
+
+\SetProtrusion
+ [ name = CMU-it-TU,
+ load = NCM-it ]
+ { encoding = {TU,EU1,EU2},
+ family = {CMU Serif},
+ shape = {it,sl} }
+ {
+ /oneoldstyle = {100,100},
+ /twooldstyle = {100, 80},
+ /threeoldstyle = { 80, 50},
+ /fouroldstyle = { 80, 80},
+ /fiveoldstyle = { 50, },
+ /sixoldstyle = { 50, },
+ /sevenoldstyle = { 80, 80},
+ /eightoldstyle = { 50, },
+ }
+
\endinput
%%
%% End of file `mt-NewComputerModern.cfg'.
diff --git a/Master/texmf-dist/tex/latex/microtype/mt-Palatino.cfg b/Master/texmf-dist/tex/latex/microtype/mt-Palatino.cfg
index 74289387ab3..5e7cfc252e1 100644
--- a/Master/texmf-dist/tex/latex/microtype/mt-Palatino.cfg
+++ b/Master/texmf-dist/tex/latex/microtype/mt-Palatino.cfg
@@ -55,7 +55,7 @@
%% for xetex (EU1) and luatex (EU2), resp. both (TU)
\DeclareCharacterInheritance
- { encoding = {EU1,EU2,TU},
+ { encoding = {TU,EU1,EU2},
family = {Palatino} }
{ A = {À,Á,Â,Ã,Ä,Ā,Ă,Ą,Ǎ,Ǟ,Ǡ,Ȧ,Ǻ,Ȁ,Ȃ,Ḁ,Ạ,Ả,Ấ,Ầ,Ẩ,Ẫ,Ậ,Ắ,Ằ,Ẳ,Ẵ,Ặ,Ꜳ},
B = {Ḃ,Ḅ,Ḇ},
@@ -114,7 +114,7 @@
\SetProtrusion
[ name = palatino-default ]
- { encoding = {EU1,EU2,TU},
+ { encoding = {TU,EU1,EU2},
family = {Palatino} }
{
A = {50,50},
@@ -209,7 +209,7 @@
\SetProtrusion
[ name = palatino-it ]
- { encoding = {EU1,EU2,TU},
+ { encoding = {TU,EU1,EU2},
family = {Palatino},
shape = {it,sl} }
{
@@ -302,7 +302,7 @@
\SetProtrusion
[ name = palatino-sc,
load = palatino-default ]
- { encoding = {EU1,EU2,TU},
+ { encoding = {TU,EU1,EU2},
family = {Palatino},
shape = sc }
{