summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/luatex/luatexko/luatexko-core.sty
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/luatex/luatexko/luatexko-core.sty')
-rw-r--r--Master/texmf-dist/tex/luatex/luatexko/luatexko-core.sty58
1 files changed, 31 insertions, 27 deletions
diff --git a/Master/texmf-dist/tex/luatex/luatexko/luatexko-core.sty b/Master/texmf-dist/tex/luatex/luatexko/luatexko-core.sty
index bec7d1206b2..06e7e1e65a0 100644
--- a/Master/texmf-dist/tex/luatex/luatexko/luatexko-core.sty
+++ b/Master/texmf-dist/tex/luatex/luatexko/luatexko-core.sty
@@ -17,7 +17,7 @@
\ifcsname ifpdf\endcsname\else \input ifpdf.sty \fi
\catcode`@ = 11
\else
- \ProvidesPackage{luatexko-core}[2016/05/08 v1.14 Typesetting Korean with LuaTeX]
+ \ProvidesPackage{luatexko-core}[2016/05/14 v1.15 Typesetting Korean with LuaTeX]
\RequirePackage{luaotfload}[2016/04/21]
\RequirePackage{ifpdf}
\fi
@@ -268,47 +268,51 @@
%% ulem doesn't work well with luatexko;
%% especially linebreak does not occur inside cjk words.
\def\ulinewidth{0.04em }
-\def\ulinedown {0.25em }
+\def\ulinedown {0.24em }
\newcount\luakoulineboxcnt\luakoulineboxcnt\z@
-\protected\def\uline#1{%
+\chardef\luako@uline@level\z@ % for nested uline
+\def\luako@nested@ulinedown{% must be used in a group
+ \ifcase\luako@uline@level\else
+ \edef\ulinedown{\the\dimexpr\ulinedown+0.1em\relax}%
+ \fi
+ \chardef\luako@uline@level\@ne}
+\def\luako@uline@code@common{%
\begingroup
\ifnum\luakoulineboxcnt > 65535 \luakoulineboxcnt\z@ \fi
\global\advance\luakoulineboxcnt\@ne
- \edef\luako@temp@{\the\luakoulineboxcnt}%
- \leavevmode
+ \count@\luakoulineboxcnt
+ \leavevmode}
+\protected\def\uline#1{%
+ \luako@uline@code@common
+ \luako@nested@ulinedown
\dimen@\dimexpr\ulinedown+\ulinewidth\relax
\dimen@ii-\dimexpr\ulinedown\relax
- \setbox\z@\hbox{\vrule width0pt height\dimen@ii depth\dimen@}%
- \directlua{ luatexko.ulinebox[\luako@temp@]=node.copy_list(tex.box[0].head)
- luatexko.uline_boundary(\luako@temp@,true) }%
+ \setbox\z@\hbox{\vrule width\z@ height\dimen@ii depth\dimen@}%
+ \directlua{ luatexko.uline_boundary(\the\count@,tex.box[0].head) }%
#1%
- \directlua{ luatexko.uline_boundary(\luako@temp@,false) }%
+ \directlua{ luatexko.uline_boundary(\the\count@) }%
\endgroup}
\protected\def\sout#1{{\def\ulinedown{-0.5ex-\ulinewidth/2}\uline{#1}}}
+\protected\def\uuline#1{\uline{\uline{#1}}}
% ulem with arbitray box
\protected\def\markoverwith#1#2{%
- \begingroup
- \ifnum\luakoulineboxcnt > 65535 \luakoulineboxcnt\z@ \fi
- \global\advance\luakoulineboxcnt\@ne
- \edef\luako@temp@{\the\luakoulineboxcnt}%
- \leavevmode
+ \luako@uline@code@common
\setbox\z@\hbox{#1}%
- \directlua{ luatexko.ulinebox[\luako@temp@]=node.copy_list(tex.box[0])
- luatexko.uline_boundary(\luako@temp@,true) }%
+ \directlua{ luatexko.uline_boundary(\the\count@,tex.box[0]) }%
#2%
- \directlua{ luatexko.uline_boundary(\luako@temp@,false) }%
+ \directlua{ luatexko.uline_boundary(\the\count@) }%
\endgroup}
-\protected\def\uuline{\dimen@ii-\dimexpr\ulinedown\relax
- \dimen@\dimexpr\ulinedown+\ulinewidth\relax
- \markoverwith{\vtop{\hrule width.1em height\dimen@ii depth\dimen@
- \kern.1em\hrule height\dimen@ii depth\dimen@}}}
-\protected\def\uwave {\ifx\ltxko@sixly\undefined \font\ltxko@sixly=lasy6 \fi
+\protected\def\uwave{\ifx\ltxko@sixly\undefined \font\ltxko@sixly=lasy6 \fi
\markoverwith{\lower4\p@\hbox{\ltxko@sixly\char58}}}
-\protected\def\xout {\markoverwith{\hbox to.35em{/\hss}}}
-\protected\def\dashuline{\markoverwith{\kern.125em\vtop{\kern\ulinedown
- \hrule width.3em height\z@ depth\ulinewidth}\kern.125em}}
-\protected\def\dotuline{\dimen@\dimexpr\ulinedown+0.1ex\relax
- \markoverwith{\lower\dimen@\hbox{\kern.1em .\kern.04em}}}
+\protected\def\xout {\markoverwith{\hbox to.35em{/\hss}}}
+\protected\def\dashuline#1{\begingroup
+ \luako@nested@ulinedown
+ \markoverwith{\kern.125em\vtop{\kern\ulinedown
+ \hrule width.3em height\z@ depth\ulinewidth}\kern.125em}{#1}\endgroup}
+\protected\def\dotuline#1{\begingroup
+ \luako@nested@ulinedown
+ \dimen@\dimexpr\ulinedown+0.1ex\relax
+ \markoverwith{\lower\dimen@\hbox{\kern.1em .\kern.04em}}{#1}\endgroup}
%% hangul font -- core
\def\luatexko@hangul@selectfont{%