summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/xelatex/xecjk/xeCJK.dtx
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2017-11-22 22:42:40 +0000
committerKarl Berry <karl@freefriends.org>2017-11-22 22:42:40 +0000
commit1bea5926931cacb1ac5323dc459a8c297f3b9871 (patch)
treef43d2abb0a73546730b11f5900e6b1ef45bd05d1 /Master/texmf-dist/source/xelatex/xecjk/xeCJK.dtx
parent2e9394a9ebc9187ebf5e127a4c8c47e5b537b8e7 (diff)
xecjk (22nov17)
git-svn-id: svn://tug.org/texlive/trunk@45885 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/xelatex/xecjk/xeCJK.dtx')
-rw-r--r--Master/texmf-dist/source/xelatex/xecjk/xeCJK.dtx33
1 files changed, 26 insertions, 7 deletions
diff --git a/Master/texmf-dist/source/xelatex/xecjk/xeCJK.dtx b/Master/texmf-dist/source/xelatex/xecjk/xeCJK.dtx
index 5d2008047f3..530421a2b08 100644
--- a/Master/texmf-dist/source/xelatex/xecjk/xeCJK.dtx
+++ b/Master/texmf-dist/source/xelatex/xecjk/xeCJK.dtx
@@ -194,7 +194,7 @@ Copyright and Licence
%<*package|config|fntef|listings|xunicode|xunextra>
%<!(config|xunextra)>\NeedsTeXFormat{LaTeX2e}
%<!(config|xunextra)>\RequirePackage{expl3}
-%<+!driver>\GetIdInfo$Id: xeCJK.dtx 8b5e450 2017-08-07 17:02:18 +0800 Qing Lee <sobenlee@gmail.com> $
+%<+!driver>\GetIdInfo$Id: xeCJK.dtx 5a18688 2017-11-22 19:12:51 +0800 Qing Lee <sobenlee@gmail.com> $
%<package> {Typesetting CJK scripts with XeLaTeX}
%<config> {Configuration file for xeCJK package}
%<fntef> {xeCJK font effect}
@@ -207,7 +207,7 @@ Copyright and Licence
%<listings>\ProvidesExplPackage{xeCJK-listings}
%<xunicode>\ProvidesExplPackage{xunicode-addon}
%<xunextra>\ProvidesExplFile{xunicode-extra.def}
-%<!driver> {\ExplFileDate}{3.5.0}{\ExplFileDescription}
+%<!driver> {\ExplFileDate}{3.5.1}{\ExplFileDescription}
%</package|config|fntef|listings|xunicode|xunextra>
%<*driver>
\documentclass{ctxdoc}
@@ -278,7 +278,7 @@ Copyright and Licence
% \changes{v3.5.0}{2017/07/22}{使用 \texttt{lazy} 函数对 Boolean 表达式
% 进行最小化运算(\hologo{LaTeX3} 2017/07/19)。}
%
-% \CheckSum{10170}
+% \CheckSum{10190}
% \GetFileId{xeCJK.sty}
%
% \title{\bfseries\pkg{xeCJK} 宏包}
@@ -5523,15 +5523,34 @@ Copyright and Licence
\xeCJK_glyph_if_exist:NTF {#1}
{ \@@_fallback_save_CJKsymbol:N {#1} }
{
- \xeCJK_class_group_begin:
- \tl_set_eq:NN \l_@@_fallback_family_tl \l_xeCJK_family_tl
- \xeCJK_fallback_loop:Nn {#1} { \l_xeCJK_family_tl/FallBack }
- \xeCJK_class_group_end:
+ \group_begin:
+ \xeCJK_aftergroup_reset_Boundary:N {#1}
+ \tl_set_eq:NN \l_@@_fallback_family_tl \l_xeCJK_family_tl
+ \xeCJK_fallback_loop:Nn {#1} { \l_xeCJK_family_tl/FallBack }
+ \group_end:
}
}
% \end{macrocode}
% \end{macro}
%
+% \changes{v3.5.1}{2017/11/16}{修正 fallback 字体后无法忽略空格的错误。}
+%
+% \begin{macro}[internal]{\xeCJK_aftergroup_reset_Boundary:N}
+% 在分组中暂时清空 |#1| 与边界的 toks,分组后恢复。
+% \begin{macrocode}
+\cs_new_protected_nopar:Npn \xeCJK_aftergroup_reset_Boundary:N #1
+ {
+ \tl_set:Nx \l_@@_tmp_tl
+ { \tex_the:D \xetex_charclass:D `#1 ~ \xeCJK_class_num:n { Boundary } }
+ \tl_gset:Nx \g_@@_aftergroup_Boundary_tl
+ { \tex_the:D \xetex_interchartoks:D \l_@@_tmp_tl }
+ \xetex_interchartoks:D \l_@@_tmp_tl = { \prg_do_nothing: }
+ \group_insert_after:N \g_@@_aftergroup_Boundary_tl
+ }
+\tl_new:N \g_@@_aftergroup_Boundary_tl
+% \end{macrocode}
+% \end{macro}
+%
% \changes{v3.2.12}{2014/05/12}{更新 \cs{int_to_Hex:n}。}
%
% \begin{macro}[internal]{\xeCJK_fallback_loop:Nn}