summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/microtype/letterspace.sty
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/microtype/letterspace.sty')
-rw-r--r--Master/texmf-dist/tex/latex/microtype/letterspace.sty36
1 files changed, 31 insertions, 5 deletions
diff --git a/Master/texmf-dist/tex/latex/microtype/letterspace.sty b/Master/texmf-dist/tex/latex/microtype/letterspace.sty
index 3fc1de4ec15..3afa0048c1e 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}
- [2013/03/13 v2.5
+ [2013/05/23 v2.5a
Robust letterspacing
(RS)]
\def\MT@MT
@@ -156,6 +156,9 @@
\def\MT@ifdefined@n@T#1{%
^^X \ifcsname#1\endcsname\expandafter\@firstofone\else\expandafter\@gobble\fi
}
+\def\MT@ifdefined@n@TF#1{%
+^^X \ifcsname#1\endcsname\expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi
+}
\begingroup
\catcode`\%=12
\catcode`\&=14
@@ -267,11 +270,21 @@
\MT@outer@kern=-\dimexpr\MT@letterspace@ sp * \fontdimen6\font@name/2000\relax
\MT@ls@outer@k
\xdef\MT@set@curr@ok{\MT@outer@kern=\the\MT@outer@kern\relax}%
- \aftergroup\aftergroup\aftergroup\MT@ls@aftergroup
+ \MT@afteraftergroup{%
+ \MT@set@curr@ok
+ \noexpand\MT@ls@outer@k
+ }%
\fi
\fi
}
-\def\MT@ls@aftergroup{\MT@set@curr@ok\MT@ls@outer@k}
+\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@requires@latex2{
\def\MT@set@lsfont{\MT@exp@two@c\let\font@name\MT@lsfont}
\DeclareRobustCommand\lsstyle{%
@@ -299,7 +312,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{%
@@ -354,7 +367,20 @@
\fi
}
\newdimen\MT@outer@kern
-\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@latex2{
\MT@addto@setup{%
\@ifpackageloaded{CJK}{%