diff options
author | Karl Berry <karl@freefriends.org> | 2017-07-13 23:12:08 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2017-07-13 23:12:08 +0000 |
commit | 89aa998bcb48fde73fb8c02e28350ca8b9042bc6 (patch) | |
tree | 5d32265a3f46be10802647d7fb209fd650415341 /Master/texmf-dist/tex/latex/microtype | |
parent | 5a237aa2394aa120794c276d4af43957742d3da4 (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')
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 |