summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/microtype
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2017-07-13 23:12:08 +0000
committerKarl Berry <karl@freefriends.org>2017-07-13 23:12:08 +0000
commit89aa998bcb48fde73fb8c02e28350ca8b9042bc6 (patch)
tree5d32265a3f46be10802647d7fb209fd650415341 /Master/texmf-dist/tex/latex/microtype
parent5a237aa2394aa120794c276d4af43957742d3da4 (diff)
microtype (8jul17)
git-svn-id: svn://tug.org/texlive/trunk@44791 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/microtype')
-rw-r--r--Master/texmf-dist/tex/latex/microtype/letterspace.sty21
-rw-r--r--Master/texmf-dist/tex/latex/microtype/microtype-luatex.def97
-rw-r--r--Master/texmf-dist/tex/latex/microtype/microtype-pdftex.def40
-rw-r--r--Master/texmf-dist/tex/latex/microtype/microtype-xetex.def4
-rw-r--r--Master/texmf-dist/tex/latex/microtype/microtype.cfg73
-rw-r--r--Master/texmf-dist/tex/latex/microtype/microtype.lua13
-rw-r--r--Master/texmf-dist/tex/latex/microtype/microtype.sty62
-rw-r--r--Master/texmf-dist/tex/latex/microtype/mt-CharisSIL.cfg70
8 files changed, 222 insertions, 158 deletions
diff --git a/Master/texmf-dist/tex/latex/microtype/letterspace.sty b/Master/texmf-dist/tex/latex/microtype/letterspace.sty
index 8de486ee244..edbd5260f5a 100644
--- a/Master/texmf-dist/tex/latex/microtype/letterspace.sty
+++ b/Master/texmf-dist/tex/latex/microtype/letterspace.sty
@@ -33,7 +33,7 @@
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage
{letterspace}
- [2016/05/14 v2.6a
+ [2017/07/07 v2.7
Robust letterspacing
(RS)]
\def\MT@MT
@@ -308,16 +308,16 @@
\fi
}
\def\MT@afteraftergroup#1{%
- \MT@ifdefined@n@TF{MT@aftergroup@\number\currentgrouplevel}\relax{%
- \MT@exp@cs\xdef{MT@aftergroup@\number\currentgrouplevel}%
- {\MT@exp@cs\MT@glet{MT@aftergroup@\number\currentgrouplevel}\noexpand\@undefined#1}%
- \expandafter\aftergroup\expandafter\aftergroup\MT@exp@cs\aftergroup
- {MT@aftergroup@\number\currentgrouplevel}%
- }%
+ \MT@ifdefined@n@TF{MT@aftergroup@\number\currentgrouplevel}\relax{%
+ \MT@exp@cs\xdef{MT@aftergroup@\number\currentgrouplevel}%
+ {\MT@exp@cs\MT@glet{MT@aftergroup@\number\currentgrouplevel}\noexpand\@undefined#1}%
+ \expandafter\aftergroup\expandafter\aftergroup\MT@exp@cs\aftergroup
+ {MT@aftergroup@\number\currentgrouplevel}%
+ }%
}
-\def\MT@ls@fontspec@colon#1:#2:#3\@nil{#1:#2}
+\def\MT@ls@fontspec@colon#1:#2:#3:#4\@nil{\ifx\\#3\\#1:#2\else#1:#2:#3\fi}
\def\MT@ls@fontspec@font#1 #2\@nil{%
- "\MT@ls@fontspec@colon#1::\@nil
+ "\MT@ls@fontspec@colon#1:::\relax\@nil
kernfactor=\MT@minus \ifnum\MT@letterspace@=1000 1\else 0.%
\ifnum\MT@minus\MT@letterspace@<100 0\fi
\ifnum\MT@minus\MT@letterspace@<10 0\fi
@@ -328,7 +328,6 @@
\def\MT@set@lsfont{\MT@exp@two@c\let\font@name\MT@lsfont}
\DeclareRobustCommand\lsstyle{%
\not@math@alphabet\lsstyle\textls
- \MT@glet\glb@currsize\@empty
\let\MT@tracking\MT@set@tr@codes
\selectfont
}
@@ -510,11 +509,13 @@
{%
\ifnum\pdfoutput<\@ne
\def\MT@warn@tracking@DVI{%
+ \MT@pdf@or@lua{%
\MT@warning@nl{%
You are using tracking/letterspacing in DVI mode.\MessageBreak
This will probably not work, unless the post-\MessageBreak
processing program (dvips, dvipdfm(x), ...) is\MessageBreak
able to create the virtual fonts on the fly}%
+ }\relax
\MT@glet\MT@warn@tracking@DVI\relax
}%
\else
diff --git a/Master/texmf-dist/tex/latex/microtype/microtype-luatex.def b/Master/texmf-dist/tex/latex/microtype/microtype-luatex.def
index 957efc99d22..8bea43098a0 100644
--- a/Master/texmf-dist/tex/latex/microtype/microtype-luatex.def
+++ b/Master/texmf-dist/tex/latex/microtype/microtype-luatex.def
@@ -30,19 +30,22 @@
%%
\ProvidesFile
{microtype-luatex.def}
- [2016/05/14 v2.6a
+ [2017/07/07 v2.7
Definitions specific to
luatex
(RS)]
\def\MT@lua{\directlua}
-\def\MT@luatex@no{4}
-\ifnum\luatexversion<85
- \def\MT@luatex@no{3}
- \ifnum\luatexversion<62
- \def\MT@luatex@no{2}
- \ifnum\luatexversion<36
- \def\MT@lua{\directlua0}
- \def\MT@luatex@no{1}
+\def\MT@luatex@no{5}
+\ifnum\luatexversion<90
+ \def\MT@luatex@no{4}
+ \ifnum\luatexversion<85
+ \def\MT@luatex@no{3}
+ \ifnum\luatexversion<62
+ \def\MT@luatex@no{2}
+ \ifnum\luatexversion<36
+ \def\MT@lua{\directlua0}
+ \def\MT@luatex@no{1}
+ \fi
\fi
\fi
\fi
@@ -51,9 +54,9 @@
#1{\ifnum
\MT@luatex@no
<#1 \expandafter\@secondoftwo\else\expandafter\@firstoftwo\fi}
-\RequirePackage{luatexbase}
+\@ifl@t@r\fmtversion{2016/01/01}\relax{\RequirePackage{luatexbase}}
\RequirePackage{luaotfload}
-\RequireLuaModule{microtype}
+\MT@lua{require("microtype")}
\def\MT@ifint#1{\csname\MT@lua{microtype.if_int([[#1]])}\endcsname}
\def\MT@ifdimen#1{\csname\MT@lua{microtype.if_dimen([[#1]])}\endcsname}
\def\MT@ifstreq#1#2{\csname\MT@lua{microtype.if_str_eq([[#1]],[[#2]])}\endcsname}
@@ -141,7 +144,7 @@
\MT@if@list@exists{%
\ifMT@nofamily
\MT@ifdefined@n@TF{\MT@encoding-\MT@family-settings}\relax{%
- \MT@info@nl{Loading generic settings for font family\MessageBreak
+ \MT@info@nl{Loading generic protrusion settings for font family\MessageBreak
`\MT@family' (encoding: \MT@encoding).\MessageBreak
For optimal results, create family-specific settings.\MessageBreak
See the microtype manual for details}%
@@ -306,7 +309,16 @@
\MT@do@font{\efcode\MT@font\@tempcnta=#1\relax}%
}
\def\MT@reset@ef@codes@{\MT@set@all@ex\MT@ex@factor@}
+\MT@requires@luatex5
+{
+ \def\MT@reset@ef@codes{%
+ \ifnum\MT@ex@factor@=\@m \else
+ \MT@reset@ef@codes@
+ \fi
+ }
+}{
\let\MT@reset@ef@codes\MT@reset@ef@codes@
+}
\def\MT@ex@split@val#1\relax{%
\@tempcntb=#1\relax
\ifnum\MT@ex@factor@=\@m \else
@@ -442,23 +454,24 @@
\MT@afteraftergroup{%
\MT@set@curr@os
\MT@set@curr@ok
- \MT@glet\noexpand\glb@currsize\noexpand\@empty
\noexpand\MT@tr@outer@r
}%
\fi
}%
}
\def\MT@afteraftergroup#1{%
- \MT@ifdefined@n@TF{MT@aftergroup@\number\currentgrouplevel}\relax{%
- \MT@exp@cs\xdef{MT@aftergroup@\number\currentgrouplevel}%
- {\MT@exp@cs\MT@glet{MT@aftergroup@\number\currentgrouplevel}\noexpand\@undefined#1}%
- \expandafter\aftergroup\expandafter\aftergroup\MT@exp@cs\aftergroup
- {MT@aftergroup@\number\currentgrouplevel}%
+ \MT@maybe@gobble@with@tikz{%
+ \MT@ifdefined@n@TF{MT@aftergroup@\number\currentgrouplevel}\relax{%
+ \MT@exp@cs\xdef{MT@aftergroup@\number\currentgrouplevel}%
+ {\MT@exp@cs\MT@glet{MT@aftergroup@\number\currentgrouplevel}\noexpand\@undefined#1}%
+ \expandafter\aftergroup\expandafter\aftergroup\MT@exp@cs\aftergroup
+ {MT@aftergroup@\number\currentgrouplevel}%
+ }%
}%
}
-\def\MT@ls@fontspec@colon#1:#2:#3\@nil{#1:#2}
+\def\MT@ls@fontspec@colon#1:#2:#3:#4\@nil{\ifx\\#3\\#1:#2\else#1:#2:#3\fi}
\def\MT@ls@fontspec@font#1 #2\@nil{%
- "\MT@ls@fontspec@colon#1::\@nil
+ "\MT@ls@fontspec@colon#1:::\relax\@nil
kernfactor=\MT@minus \ifnum\MT@letterspace@=1000 1\else 0.%
\ifnum\MT@minus\MT@letterspace@<100 0\fi
\ifnum\MT@minus\MT@letterspace@<10 0\fi
@@ -494,7 +507,7 @@
\def\MT@set@lsfont{\MT@exp@two@c\let\font@name\MT@lsfont}
\DeclareRobustCommand\lsstyle{%
\not@math@alphabet\lsstyle\textls
- \MT@glet\glb@currsize\@empty
+ \MT@maybe@gobble@with@tikz{\aftergroup\glb@settings}%
\def\MT@feat{tr}%
\let\MT@tracking\MT@set@tr@codes
\selectfont
@@ -599,19 +612,13 @@
\fi
\fi
}
-\MT@addto@setup{%
- \@ifpackageloaded{tikz}
- {\def\MT@tr@outer@r{%
- \ifnum\tikz@expandcount>\z@ \else
- \expandafter\MT@tr@outer@r@\fi}}
- {\let\MT@tr@outer@r\MT@tr@outer@r@}}
-\def\MT@tr@outer@r@{%
- \futurelet\MT@tr@outer@next\MT@tr@outer@r@@
+\def\MT@tr@outer@r{%
+ \futurelet\MT@tr@outer@next\MT@tr@outer@r@
}
\def\MT@if@outer@next#1{%
\ifx\MT@tr@outer@next#1\expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi
}
-\def\MT@tr@outer@r@@{%
+\def\MT@tr@outer@r@{%
\def\MT@temp*{}%
\ifmmode \else
\ifnum\currentgrouptype=10 \else
@@ -620,14 +627,14 @@
\expandafter\ifcat\expandafter\noexpand\csname MT@tr@outer@next\endcsname\egroup
\ifhmode\unkern\fi\egroup
\MT@set@curr@ok \MT@set@curr@os
- \def\MT@temp*{\afterassignment\MT@tr@outer@r@\let\MT@temp=}%
+ \def\MT@temp*{\afterassignment\MT@tr@outer@r\let\MT@temp=}%
\else
\MT@if@outer@next\maybe@ic{%
\MT@set@curr@ok \MT@set@curr@os
\def\MT@temp*{\afterassignment\MT@tr@outer@icr\let\MT@temp=}%
}{%
\MT@if@outer@next\check@icr{%
- \def\MT@temp*{\aftergroup\MT@tr@outer@r@\check@icr\let\MT@temp=}%
+ \def\MT@temp*{\aftergroup\MT@tr@outer@r\check@icr\let\MT@temp=}%
}{%
\MT@if@outer@next\@sptoken{%
\def\MT@temp* {\ifhmode\hskip\MT@outer@space
@@ -650,7 +657,7 @@
\fi\fi
\MT@temp*%
}
-\def\MT@tr@outer@icr{\afterassignment\MT@tr@outer@icr@\MT@tr@outer@r@}
+\def\MT@tr@outer@icr{\afterassignment\MT@tr@outer@icr@\MT@tr@outer@r}
\def\MT@tr@outer@icr@{%
\let\@let@token= \MT@tr@outer@next
\maybe@ic@
@@ -1105,20 +1112,7 @@
\fi
\let\MT@auto\@empty
\ifMT@auto
- \ifnum\pdfoutput<\@ne
- \ifMT@opt@auto
- \MT@error{%
- Automatic font expansion only works for PDF output.\MessageBreak
- However, you are creating a DVI file}
- {If you have created expanded fonts instances, remove `auto' from%
- \MessageBreak the package options. Otherwise, you have to switch
- off expansion\MessageBreak completely.}%
- \fi
- \MT@autofalse
- \else
\def\MT@auto{autoexpand}%
- \fi
- \else
\fi
\ifMT@selected
\let\MT@set@ex@codes\MT@set@ex@codes@s
@@ -1207,21 +1201,10 @@
\def\MT@setup@spacing {\MT@error@doesnt@work{spacing}}
\def\MT@setup@warntracking
{%
- \ifnum\pdfoutput<\@ne
- \def\MT@warn@tracking@DVI{%
- \MT@warning@nl{%
- You are using tracking/letterspacing in DVI mode.\MessageBreak
- This will probably not work, unless the post-\MessageBreak
- processing program (dvips, dvipdfm(x), ...) is\MessageBreak
- able to create the virtual fonts on the fly}%
- \MT@glet\MT@warn@tracking@DVI\relax
- }%
- \else
\def\MT@warn@tracking@DVI{%
\ifnum\pdfprotrudechars<\@ne \global\pdfprotrudechars\@ne \fi
\MT@glet\MT@warn@tracking@DVI\relax
}%
- \fi
\ifnum\MT@letterspace=\m@ne
\let\MT@letterspace\MT@letterspace@default
\else
diff --git a/Master/texmf-dist/tex/latex/microtype/microtype-pdftex.def b/Master/texmf-dist/tex/latex/microtype/microtype-pdftex.def
index 91f36c2301f..af7746eddb2 100644
--- a/Master/texmf-dist/tex/latex/microtype/microtype-pdftex.def
+++ b/Master/texmf-dist/tex/latex/microtype/microtype-pdftex.def
@@ -30,7 +30,7 @@
%%
\ProvidesFile
{microtype-pdftex.def}
- [2016/05/14 v2.6a
+ [2017/07/07 v2.7
Definitions specific to
pdftex
(RS)]
@@ -234,7 +234,7 @@
\MT@if@list@exists{%
\ifMT@nofamily
\MT@ifdefined@n@TF{\MT@encoding-\MT@family-settings}\relax{%
- \MT@info@nl{Loading generic settings for font family\MessageBreak
+ \MT@info@nl{Loading generic protrusion settings for font family\MessageBreak
`\MT@family' (encoding: \MT@encoding).\MessageBreak
For optimal results, create family-specific settings.\MessageBreak
See the microtype manual for details}%
@@ -416,7 +416,8 @@
\MT@do@font{\efcode\MT@font\@tempcnta=#1\relax}%
}
\def\MT@reset@ef@codes@{\MT@set@all@ex\MT@ex@factor@}
-\MT@requires@pdftex4{
+\MT@requires@pdftex4
+{
\def\MT@reset@ef@codes{%
\ifnum\MT@ex@factor@=\@m \else
\MT@reset@ef@codes@
@@ -684,18 +685,19 @@
\MT@afteraftergroup{%
\MT@set@curr@os
\MT@set@curr@ok
- \MT@glet\noexpand\glb@currsize\noexpand\@empty
\noexpand\MT@tr@outer@r
}%
\fi
}%
}
\def\MT@afteraftergroup#1{%
- \MT@ifdefined@n@TF{MT@aftergroup@\number\currentgrouplevel}\relax{%
- \MT@exp@cs\xdef{MT@aftergroup@\number\currentgrouplevel}%
- {\MT@exp@cs\MT@glet{MT@aftergroup@\number\currentgrouplevel}\noexpand\@undefined#1}%
- \expandafter\aftergroup\expandafter\aftergroup\MT@exp@cs\aftergroup
- {MT@aftergroup@\number\currentgrouplevel}%
+ \MT@maybe@gobble@with@tikz{%
+ \MT@ifdefined@n@TF{MT@aftergroup@\number\currentgrouplevel}\relax{%
+ \MT@exp@cs\xdef{MT@aftergroup@\number\currentgrouplevel}%
+ {\MT@exp@cs\MT@glet{MT@aftergroup@\number\currentgrouplevel}\noexpand\@undefined#1}%
+ \expandafter\aftergroup\expandafter\aftergroup\MT@exp@cs\aftergroup
+ {MT@aftergroup@\number\currentgrouplevel}%
+ }%
}%
}
\def\MT@get@tr@opt{%
@@ -727,7 +729,7 @@
\def\MT@set@lsfont{\MT@exp@two@c\let\font@name\MT@lsfont}
\DeclareRobustCommand\lsstyle{%
\not@math@alphabet\lsstyle\textls
- \MT@glet\glb@currsize\@empty
+ \MT@maybe@gobble@with@tikz{\aftergroup\glb@settings}%
\def\MT@feat{tr}%
\let\MT@tracking\MT@set@tr@codes
\selectfont
@@ -841,19 +843,13 @@
\fi
\fi
}
-\MT@addto@setup{%
- \@ifpackageloaded{tikz}
- {\def\MT@tr@outer@r{%
- \ifnum\tikz@expandcount>\z@ \else
- \expandafter\MT@tr@outer@r@\fi}}
- {\let\MT@tr@outer@r\MT@tr@outer@r@}}
-\def\MT@tr@outer@r@{%
- \futurelet\MT@tr@outer@next\MT@tr@outer@r@@
+\def\MT@tr@outer@r{%
+ \futurelet\MT@tr@outer@next\MT@tr@outer@r@
}
\def\MT@if@outer@next#1{%
\ifx\MT@tr@outer@next#1\expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi
}
-\def\MT@tr@outer@r@@{%
+\def\MT@tr@outer@r@{%
\def\MT@temp*{}%
\ifmmode \else
\ifnum\currentgrouptype=10 \else
@@ -862,14 +858,14 @@
\expandafter\ifcat\expandafter\noexpand\csname MT@tr@outer@next\endcsname\egroup
\ifhmode\unkern\fi\egroup
\MT@set@curr@ok \MT@set@curr@os
- \def\MT@temp*{\afterassignment\MT@tr@outer@r@\let\MT@temp=}%
+ \def\MT@temp*{\afterassignment\MT@tr@outer@r\let\MT@temp=}%
\else
\MT@if@outer@next\maybe@ic{%
\MT@set@curr@ok \MT@set@curr@os
\def\MT@temp*{\afterassignment\MT@tr@outer@icr\let\MT@temp=}%
}{%
\MT@if@outer@next\check@icr{%
- \def\MT@temp*{\aftergroup\MT@tr@outer@r@\check@icr\let\MT@temp=}%
+ \def\MT@temp*{\aftergroup\MT@tr@outer@r\check@icr\let\MT@temp=}%
}{%
\MT@if@outer@next\@sptoken{%
\def\MT@temp* {\ifhmode\hskip\MT@outer@space
@@ -892,7 +888,7 @@
\fi\fi
\MT@temp*%
}
-\def\MT@tr@outer@icr{\afterassignment\MT@tr@outer@icr@\MT@tr@outer@r@}
+\def\MT@tr@outer@icr{\afterassignment\MT@tr@outer@icr@\MT@tr@outer@r}
\def\MT@tr@outer@icr@{%
\let\@let@token= \MT@tr@outer@next
\maybe@ic@
diff --git a/Master/texmf-dist/tex/latex/microtype/microtype-xetex.def b/Master/texmf-dist/tex/latex/microtype/microtype-xetex.def
index 141310f3578..9a8ae06d275 100644
--- a/Master/texmf-dist/tex/latex/microtype/microtype-xetex.def
+++ b/Master/texmf-dist/tex/latex/microtype/microtype-xetex.def
@@ -30,7 +30,7 @@
%%
\ProvidesFile
{microtype-xetex.def}
- [2016/05/14 v2.6a
+ [2017/07/07 v2.7
Definitions specific to
xetex
(RS)]
@@ -126,7 +126,7 @@
\MT@if@list@exists{%
\ifMT@nofamily
\MT@ifdefined@n@TF{\MT@encoding-\MT@family-settings}\relax{%
- \MT@info@nl{Loading generic settings for font family\MessageBreak
+ \MT@info@nl{Loading generic protrusion settings for font family\MessageBreak
`\MT@family' (encoding: \MT@encoding).\MessageBreak
For optimal results, create family-specific settings.\MessageBreak
See the microtype manual for details}%
diff --git a/Master/texmf-dist/tex/latex/microtype/microtype.cfg b/Master/texmf-dist/tex/latex/microtype/microtype.cfg
index 1c7b1f80502..4cd504df98a 100644
--- a/Master/texmf-dist/tex/latex/microtype/microtype.cfg
+++ b/Master/texmf-dist/tex/latex/microtype/microtype.cfg
@@ -40,7 +40,7 @@
%%
\ProvidesFile
{microtype.cfg}
- [2016/05/14 v2.6a
+ [2017/07/07 v2.7
microtype main configuration file
(RS)]
@@ -112,40 +112,57 @@
\DeclareMicrotypeVariants{x,j,w,a,d,0,1}
-\ifMT@fontspec
-\DeclareMicrotypeAlias{lmr} {Latin Modern Roman}
-\else
-\DeclareMicrotypeAlias{lmr} {cmr} % lmodern
+\MT@if@false
+\ifx\UnicodeEncodingName\@undefined\else
+ \MT@ifstreq{\encodingdefault}{\UnicodeEncodingName}\MT@if@true\relax
+\fi
+\ifMT@fontspec\MT@if@true\fi
+\ifMT@if@
+\DeclareMicrotypeAlias{lmr}{Latin Modern Roman}
+ \else
+\DeclareMicrotypeAlias{lmr}{cmr} % lmodern
\fi
\DeclareMicrotypeAlias{lmsy}{cmsy}
\DeclareMicrotypeAlias{lmm} {cmm}
-\DeclareMicrotypeAlias{aer} {cmr} % ae
-\DeclareMicrotypeAlias{zer} {cmr} % zefonts
-\DeclareMicrotypeAlias{cmor}{cmr} % eco
-\DeclareMicrotypeAlias{hfor}{cmr} % hfoldsty
-\DeclareMicrotypeAlias{pxr} {ppl} % pxfonts
-\DeclareMicrotypeAlias{qpl} {ppl} % TeX Gyre Pagella (formerly: qfonts/QuasiPalatino)
-\DeclareMicrotypeAlias{fp9x}{pplx} % FPL Neu
-\DeclareMicrotypeAlias{fp9j}{pplj} % "
-\DeclareMicrotypeAlias{txr} {ptm} % txfonts
-\DeclareMicrotypeAlias{qtm} {ptm} % TeX Gyre Termes (formerly: qfonts/QuasiTimes)
+\DeclareMicrotypeAlias{aer} {cmr} % ae
+\DeclareMicrotypeAlias{zer} {cmr} % zefonts
+\DeclareMicrotypeAlias{cmor}{cmr} % eco
+\DeclareMicrotypeAlias{hfor}{cmr} % hfoldsty
+\DeclareMicrotypeAlias{pxr} {ppl} % pxfonts
+\DeclareMicrotypeAlias{qpl} {ppl} % TeX Gyre Pagella (formerly: qfonts/QuasiPalatino)
+\DeclareMicrotypeAlias{fp9x}{pplx} % FPL Neu
+\DeclareMicrotypeAlias{fp9j}{pplj} % "
+\DeclareMicrotypeAlias{zpllf}{ppl} % newpxtext
+\DeclareMicrotypeAlias{zplosf}{ppl} % "
+\DeclareMicrotypeAlias{zpltlf}{ppl} % "
+\DeclareMicrotypeAlias{zpltosf}{ppl} % "
+\DeclareMicrotypeAlias{txr} {ptm} % txfonts
+\DeclareMicrotypeAlias{ntxlf}{ptm} % newtxtext
+\DeclareMicrotypeAlias{ntxosf}{ptm} % "
+\DeclareMicrotypeAlias{ntxtlf}{ptm} % "
+\DeclareMicrotypeAlias{ntxtosf}{ptm} % "
+\DeclareMicrotypeAlias{Tempora-TLF}{ptm} % tempora
+\DeclareMicrotypeAlias{Tempora-TOsF}{ptm}% "
+\DeclareMicrotypeAlias{qtm} {ptm} % TeX Gyre Termes (formerly: qfonts/QuasiTimes)
\DeclareMicrotypeAlias{TeX Gyre Pagella}{Palatino Linotype}
\DeclareMicrotypeAlias{Palatino LT Std} {Palatino Linotype}
\DeclareMicrotypeAlias{Palatino} {Palatino Linotype}
\DeclareMicrotypeAlias{Asana Math} {Palatino Linotype}
-\DeclareMicrotypeAlias{zeur}{eur} % Euler VM
-\DeclareMicrotypeAlias{zeus}{eus} % "
-\DeclareMicrotypeAlias{chr} {bch} % CH Math
-\DeclareMicrotypeAlias{mdbch}{bch} % mathdesign/Charter
-\DeclareMicrotypeAlias{mdugm}{ugm} % mathdesign/URW Garamond
-\DeclareMicrotypeAlias{zgmx}{ugm} % garamondx
-\DeclareMicrotypeAlias{zgmj}{ugm} % "
-\DeclareMicrotypeAlias{zgmI}{ugm} % "
-\DeclareMicrotypeAlias{zgmq}{ugm} % "
-\DeclareMicrotypeAlias{ulg} {blg} % URW LetterGothic -> Bitstream LetterGothic12Pitch
-\DeclareMicrotypeAlias{zpeus} {zpeu} % Adobe Euro sans -> serif
-\DeclareMicrotypeAlias{eurosans}{zpeu} % Adobe Euro sans -> serif
-\DeclareMicrotypeAlias{euroitcs}{euroitc} % ITC Euro sans -> serif
+\DeclareMicrotypeAlias{zeur}{eur} % Euler VM
+\DeclareMicrotypeAlias{zeus}{eus} % "
+\DeclareMicrotypeAlias{chr} {bch} % CH Math
+\DeclareMicrotypeAlias{XCharter-TLF} {bch} % XCharter
+\DeclareMicrotypeAlias{XCharter-TOsF}{bch} % "
+\DeclareMicrotypeAlias{mdbch}{bch} % mathdesign/Charter
+\DeclareMicrotypeAlias{mdugm}{ugm} % mathdesign/URW Garamond
+\DeclareMicrotypeAlias{zgmx}{ugm} % garamondx
+\DeclareMicrotypeAlias{zgmj}{ugm} % "
+\DeclareMicrotypeAlias{zgmI}{ugm} % "
+\DeclareMicrotypeAlias{zgmq}{ugm} % "
+\DeclareMicrotypeAlias{ulg} {blg} % URW LetterGothic -> Bitstream LetterGothic12Pitch
+\DeclareMicrotypeAlias{zpeus} {zpeu} % Adobe Euro sans -> serif
+\DeclareMicrotypeAlias{eurosans}{zpeu} % Adobe Euro sans -> serif
+\DeclareMicrotypeAlias{euroitcs}{euroitc}% ITC Euro sans -> serif
%%% -----------------------------------------------------------------------
%%% INTERACTION WITH THE `babel' PACKAGE
diff --git a/Master/texmf-dist/tex/latex/microtype/microtype.lua b/Master/texmf-dist/tex/latex/microtype/microtype.lua
index 58a8d28d6c8..84eb7abb36b 100644
--- a/Master/texmf-dist/tex/latex/microtype/microtype.lua
+++ b/Master/texmf-dist/tex/latex/microtype/microtype.lua
@@ -30,13 +30,12 @@
-- (Bugs are mine.)
-- ------------------------------------------------------------------------
--
-
microtype = microtype or {}
local microtype = microtype
microtype.module = {
name = "microtype",
- version = "2.6a",
- date = "2016/05/14",
+ version = "2.7",
+ date = "2017/07/07",
description = "microtype module.",
author = "E. Roux, R. Schlicht and P. Gesang",
copyright = "E. Roux, R. Schlicht and P. Gesang",
@@ -50,8 +49,14 @@ local find = string.find
local match = string.match
local tex_write = tex.write
+local catpackage
+if luatexbase.registernumber then
+ catpackage = luatexbase.registernumber("catcodetable@atletter") -- LaTeX
+else
+ catpackage = luatexbase.catcodetables.CatcodeTableAtletter -- luatexbase
+end
function microtype.sprint (...)
- tex.sprint(luatexbase.catcodetables['latex-package'], ...)
+ tex.sprint(catpackage, ...)
end
local function if_int(s)
diff --git a/Master/texmf-dist/tex/latex/microtype/microtype.sty b/Master/texmf-dist/tex/latex/microtype/microtype.sty
index e5fc5d29fa7..8df7a4043e1 100644
--- a/Master/texmf-dist/tex/latex/microtype/microtype.sty
+++ b/Master/texmf-dist/tex/latex/microtype/microtype.sty
@@ -29,7 +29,7 @@
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage
{microtype}
- [2016/05/14 v2.6a
+ [2017/07/07 v2.7
Micro-typographical refinements
(RS)]
\def\MT@MT
@@ -410,6 +410,11 @@
\MT@warning@nl{Detected the `wordcount' utility.\MessageBreak
Disabling `\MT@MT', since it wouldn't work}%
\MT@clear@options\endinput}\relax
+\@ifclassloaded{minimal}{%
+ \MT@warning@nl{Detected the `minimal' class.\MessageBreak
+ Expect lots of warnings and some malfunctions.\MessageBreak
+ You might want to use a proper class instead}%
+}\relax
\let\MT@setup@\@empty
\def\MT@addto@setup{\g@addto@macro\MT@setup@}
\def\MT@with@package@T#1{\@ifpackageloaded{#1}\@firstofone\@gobble}
@@ -432,6 +437,14 @@
}\relax
}
\ifMT@fontspec\MT@fontspec@setup\fi
+\let\MT@maybe@gobble@with@tikz\@firstofone
+\def\MT@tikz@setup{%
+ \def\MT@maybe@gobble@with@tikz{%
+ \ifnum\tikz@expandcount>\z@
+ \expandafter\@gobble
+ \else
+ \expandafter\@firstofone
+ \fi}}
\def\MT@setupfont@hook{%
\ifMT@fontspec\MT@font\fi
\MT@if@false
@@ -446,6 +459,7 @@
\MT@with@package@T{tex4ht} \MT@if@true
\MT@with@package@T{mathastext}\MT@if@true
\ifMT@if@\MT@restore@p@h\fi
+ \MT@with@package@T{tikz}\MT@tikz@setup
}
\MT@addto@setup{%
\MT@with@package@T{pdfcprot}{%
@@ -484,7 +498,7 @@ time will almost certainly lead to undesired results. Have your choice!}%
\MT@if@false
\MT@with@package@T{hyperref}{%
\pdfstringdefDisableCommands{%
- \let\pickup@font\MT@orig@pickupfont
+ \MT@ltx@pickupfont
\let\textmicrotypecontext\@secondoftwo
\let\microtypecontext\@gobble
\def\lsstyle{\pdfstringdefWarn\lsstyle}%
@@ -511,18 +525,19 @@ time will almost certainly lead to undesired results. Have your choice!}%
\soulregister\lsstyle 0%
\soulregister\textls 1%
}%
+ \MT@with@package@T{tikz}\MT@tikz@setup
\MT@with@package@T{pinyin}{%
\let\MT@orig@py@macron\py@macron
\@ifpackagelater{pinyin}{2005/08/11}{% 4.6.0
\def\py@macron#1#2{%
- \let\pickup@font\MT@orig@pickupfont
+ \MT@ltx@pickupfont
\MT@orig@py@macron{#1}{#2}%
- \let\pickup@font\MT@pickupfont}%
+ \MT@MT@pickupfont}%
}{%
\def\py@macron#1{%
- \let\pickup@font\MT@orig@pickupfont
+ \MT@ltx@pickupfont
\MT@orig@py@macron{#1}%
- \let\pickup@font\MT@pickupfont}%
+ \MT@MT@pickupfont}%
}%
}%
}
@@ -1128,6 +1143,10 @@ time will almost certainly lead to undesired results. Have your choice!}%
\expandafter\def\expandafter\MT@char\expandafter{\csname\expandafter
\string\csname\MT@encoding\endcsname
\MT@detokenize@n{#1}-\MT@detokenize@n{#2}\endcsname}%
+ \ifx\UnicodeEncodingName\@undefined\else
+ \expandafter\expandafter\expandafter
+ \MT@is@uni@comp\MT@char\iffontchar\else\fi\relax
+ \fi
\expandafter\expandafter\expandafter\MT@is@letter\MT@char\relax\relax
\ifnum\MT@char@ < \z@
\ifMT@xunicode
@@ -1138,6 +1157,9 @@ time will almost certainly lead to undesired results. Have your choice!}%
\fi
\fi
}
+\def\MT@is@uni@comp#1\iffontchar#2\else#3\fi\relax{%
+ \ifx\\#2\\\else\edef\MT@char{\iffontchar#2\fi}\fi
+}
\def\MT@set@listname{%
\edef\MT@curr@list@name{\@nameuse{MT@abbr@\MT@feat} list\noexpand\MessageBreak
`\@nameuse{MT@\MT@feat @c@name}'}%
@@ -1240,14 +1262,16 @@ time will almost certainly lead to undesired results. Have your choice!}%
\endgroup
}%
\let\MT@pickupfont\pickup@font
+ \def\MT@MT@pickupfont {\let\pickup@font\MT@pickupfont}%
+ \def\MT@ltx@pickupfont{\let\pickup@font\MT@orig@pickupfont}%
\g@addto@macro\do@subst@correction
{\edef\MT@font{\csname\curr@fontshape/\f@size\endcsname}%
\MT@glet@nc{MT@subst@\expandafter\string\font@name}\MT@font}%
\let\MT@orig@add@accent\add@accent
\def\add@accent#1#2{%
- \let\pickup@font\MT@orig@pickupfont
+ \MT@ltx@pickupfont
\MT@orig@add@accent{#1}{#2}%
- \let\pickup@font\MT@pickupfont
+ \MT@MT@pickupfont
}%
}
\def\MT@check@font{\MT@exp@one@n\MT@in@clist\MT@font\MT@font@list}
@@ -1893,10 +1917,14 @@ time will almost certainly lead to undesired results. Have your choice!}%
\MT@tempsize
}{%
\MT@ifdefined@n@T{MT@\MT@permutelist @\@tempa\MT@extra@context}{%
- \MT@warning{\@nameuse{MT@abbr@\MT@permutelist} list
- `\@nameuse{MT@\MT@permutelist @name}' will override list\MessageBreak
- `\@nameuse{MT@\MT@permutelist @\@tempa\MT@extra@context}'
- for font `\@tempa'}%
+ \MT@ifstreq{\csname MT@\MT@permutelist @\@tempa\MT@extra@context\endcsname}%
+ {\csname MT@\MT@permutelist @\csname MT@\MT@permutelist @name\endcsname @load\endcsname}%
+ \relax{%
+ \MT@warning{\@nameuse{MT@abbr@\MT@permutelist} list
+ `\@nameuse{MT@\MT@permutelist @name}' will override list\MessageBreak
+ `\@nameuse{MT@\MT@permutelist @\@tempa\MT@extra@context}'
+ for font `\@tempa'}%
+ }%
}%
}%
\MT@xdef@n{MT@\MT@permutelist @\@tempa\MT@extra@context}%
@@ -1957,9 +1985,13 @@ time will almost certainly lead to undesired results. Have your choice!}%
}%
}%
\ifMT@if@
- \MT@warning{\@nameuse{MT@abbr@\MT@permutelist} list
- `\@nameuse{MT@\MT@permutelist @name}' will override\MessageBreak
- list `#3' for font \@tempa,\MessageBreak size \@tempb}%
+ \MT@ifstreq{#3}%
+ {\csname MT@\MT@permutelist @\csname MT@\MT@permutelist @name\endcsname @load\endcsname}%
+ \relax{%
+ \MT@warning{\@nameuse{MT@abbr@\MT@permutelist} list
+ `\@nameuse{MT@\MT@permutelist @name}' will override\MessageBreak
+ list `#3' for font \@tempa,\MessageBreak size \@tempb}%
+ }%
\expandafter\MT@tlist@break
\fi
}
diff --git a/Master/texmf-dist/tex/latex/microtype/mt-CharisSIL.cfg b/Master/texmf-dist/tex/latex/microtype/mt-CharisSIL.cfg
index 7423b898f31..da5b1ed162f 100644
--- a/Master/texmf-dist/tex/latex/microtype/mt-CharisSIL.cfg
+++ b/Master/texmf-dist/tex/latex/microtype/mt-CharisSIL.cfg
@@ -38,7 +38,7 @@
%% ------------------------------------------------------------------------
%%
\ProvidesFile
- {mt-CharisSIL.cfg}[2013/03/13 v1.0 microtype config. file: Charis SIL (RS)]
+ {mt-CharisSIL.cfg}[2017/07/07 v1.1 microtype config. file: Charis SIL (RS)]
%%% -----------------------------------------------------------------------
%%% INHERITANCE
@@ -448,32 +448,62 @@
χ = {50,50},
}
+ % quick and dirty -- maybe we'll promote this to a
+ % regular key some time
+\define@key{MT@pr@c}{command}{\csname #1\endcsname}
+
+ % glyph names have changed with version 5.0 of Charis SIL:
+ % before: /a.SC, /b.SC, ...
+ % after: /a.sc, /b.sc, ...
+\ifx\MT@lua\@undefined
+ \gdef\MT@get@CHARIS@SC{
+ % test whether glyph "a.sc" exists
+ \ifnum\numexpr\XeTeXglyphindex "a.sc"\relax > 0
+ \gdef\MT@CHARIS@SC{sc}%
+ \else
+ \gdef\MT@CHARIS@SC{SC}%
+ \fi
+ }
+\else
+ \gdef\MT@get@CHARIS@SC{
+ \gdef\MT@CHARIS@SC{\MT@lua{
+ % check font version
+ if (tonumber(fontloader.info(font.getfont(font.current()).filename).version) < 5) then;
+ tex.print("SC");
+ else;
+ tex.print("sc");
+ end
+ }}
+ }
+\fi
+
\SetProtrusion
[ name = Charis-sc,
- load = Charis-default ]
+ load = Charis-default,
+ command = {MT@get@CHARIS@SC} ]
{ encoding = {EU1,EU2,TU},
family = Charis SIL,
shape = {sc} }
{
% ᴀ = {100,100}, % etc., doesn't work with \textsc
- /a.SC = {100,100},
- /c.SC = {50, },
- /d.SC = { ,50},
- /f.SC = { ,50},
- /g.SC = {50, },
- /j.SC = {100, },
- /k.SC = { ,50},
- /l.SC = { ,50},
- /f_l.SC = { ,50},
- /o.SC = {50,50},
- /oe.SC = {50, },
- /q.SC = {50,70},
- /r.SC = { ,50},
- /t.SC = {50,100},
- /v.SC = {50,50},
- /w.SC = {50,50},
- /x.SC = {50,50},
- /y.SC = {50,50}
+ /a.\MT@CHARIS@SC = {100,100},
+ /c.\MT@CHARIS@SC = {50, },
+ /d.\MT@CHARIS@SC = { ,50},
+ /f.\MT@CHARIS@SC = { ,50},
+ /g.\MT@CHARIS@SC = {50, },
+ /j.\MT@CHARIS@SC = {100, },
+ /k.\MT@CHARIS@SC = { ,50},
+ /l.\MT@CHARIS@SC = { ,50},
+ /f_l.\MT@CHARIS@SC = { ,50},
+ /o.\MT@CHARIS@SC = {50,50},
+ /oe.\MT@CHARIS@SC = {50, },
+ /q.\MT@CHARIS@SC = {50,70},
+ /r.\MT@CHARIS@SC = { ,50},
+ /t.\MT@CHARIS@SC = {50,100},
+ /v.\MT@CHARIS@SC = {50,50},
+ /w.\MT@CHARIS@SC = {50,50},
+ /x.\MT@CHARIS@SC = {50,50},
+ /y.\MT@CHARIS@SC = {50,50}
}
\endinput