diff options
author | Norbert Preining <preining@logic.at> | 2013-05-27 01:20:20 +0000 |
---|---|---|
committer | Norbert Preining <preining@logic.at> | 2013-05-27 01:20:20 +0000 |
commit | f07b7c015a77f69963eb08048aba8c5621cdb0c1 (patch) | |
tree | 416117265306e535a623b7d29544a300865d02db /Master/texmf-dist/tex/latex/microtype/microtype-pdftex.def | |
parent | a310e63ad62aa521c7903a0f499d8b9ca8124681 (diff) |
microtype 5/27
git-svn-id: svn://tug.org/texlive/trunk@30696 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/microtype/microtype-pdftex.def')
-rw-r--r-- | Master/texmf-dist/tex/latex/microtype/microtype-pdftex.def | 77 |
1 files changed, 58 insertions, 19 deletions
diff --git a/Master/texmf-dist/tex/latex/microtype/microtype-pdftex.def b/Master/texmf-dist/tex/latex/microtype/microtype-pdftex.def index be537a1ff4b..2729281d6cb 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} - [2013/03/13 v2.5 + [2013/05/23 v2.5a Definitions specific to pdftex (RS)] @@ -142,15 +142,13 @@ \def\MT@ledmac@setup{% \ifMT@protrusion \MT@ifdefined@c@TF\l@dunhbox@line{% - \MT@info@nl{Patching ledmac to enable character protrusion}% - \newdimen\MT@led@kern + \MT@info@nl{Patching (e)ledmac to enable character protrusion}% \let\MT@led@unhbox@line\l@dunhbox@line \renewcommand*{\l@dunhbox@line}[1]{% \ifhbox##1% - \MT@led@kern=\rightmarginkern##1% \kern\leftmarginkern##1% - \MT@led@unhbox@line##1% - \kern\MT@led@kern + \expandafter\MT@led@unhbox@line\expandafter##1\expandafter + \kern\rightmarginkern##1% \fi }% }{% @@ -684,10 +682,22 @@ \csname MT@outer@kern\expandafter\string\font@name\endcsname\relax \fi \xdef\MT@set@curr@ok{\MT@outer@kern=\the\MT@outer@kern\relax}% - \aftergroup\aftergroup\aftergroup\MT@ls@aftergroup + \MT@afteraftergroup{% + \MT@set@curr@os + \MT@set@curr@ok + \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}% + }% +} \def\MT@get@tr@opt{% \MT@set@listname \MT@ifdefined@n@T{MT@tr@c@\MT@tr@c@name}{% @@ -729,7 +739,7 @@ \MT@outer@kern=\dimexpr\MT@curr@ls sp * \fontdimen6\font@name/2000\relax \kern\MT@outer@kern \font@name #1% - \kern\MT@outer@kern% + \kern\MT@outer@kern }{#1}}% } \def\MT@get@ls@basefont{% @@ -831,13 +841,19 @@ \fi \fi } -\def\MT@tr@outer@r{% - \futurelet\MT@tr@outer@next\MT@tr@outer@r@ +\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@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 @@ -846,14 +862,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 @@ -866,18 +882,28 @@ \MT@if@outer@next\ \relax{% \MT@if@outer@next\space\relax{% \MT@if@outer@next\@xobeysp\relax{% - \def\MT@temp*{\ifdim\MT@outer@kern=\z@\else\MT@ls@outer@k - \fi}% - \MT@let@nc{MT@tr@outer@next}\relax - }}}}}}}\fi + \MT@if@outer@next\xspace{% + \def\MT@temp*\xspace{\futurelet\@let@token\MT@xspace}% + }{% + \def\MT@temp*{\ifdim\MT@outer@kern=\z@\else\MT@ls@outer@k + \fi}% + \MT@let@nc{MT@tr@outer@next}\relax + }}}}}}}}\fi \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@ } +\def\MT@xspace{\@xspace@firsttrue\@xspace + \ifdim\lastskip>5sp + \unskip \hskip\MT@outer@space + \else + \ifdim\MT@outer@kern=\z@\else\MT@ls@outer@k \fi + \fi +} }{ \DeclareRobustCommand\lsstyle{% \MT@error{Letterspacing only works with \MT@engine tex version @@ -908,7 +934,20 @@ * \fontdimen6\MT@lsfont/2000\relax \edef\MT@temp{\MT@temp{\the\@tempdima}}% } -\def\MT@ls@outer@k{\ifhmode\kern\MT@outer@kern\relax\fi} +\def\MT@ls@outer@k{% + \ifhmode + \ifdim\lastkern=-3sp \unkern + \ifdim\lastkern=3sp \kern-3sp + \expandafter\expandafter\expandafter\@gobble + \else \unkern + \expandafter\expandafter\expandafter\@firstofone + \fi + \else + \expandafter\@firstofone + \fi + {\kern\MT@outer@kern\kern3sp\kern-3sp\relax}% + \fi +} \MT@requires@pdftex5{ \def\MT@noligatures{% \MT@dotrue |