summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2017-04-01 20:57:33 +0000
committerKarl Berry <karl@freefriends.org>2017-04-01 20:57:33 +0000
commit2eecb3520617a4ec9b242167d8af56aafde4a9af (patch)
tree90f9936ac11ca33092e1536a823ae0e4ce81940f
parent5112bfa157654c21370044635eb59293b8c8d895 (diff)
xecjk (1apr17)
git-svn-id: svn://tug.org/texlive/trunk@43672 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/xelatex/xecjk/example/xeCJK-example-checksingle.tex7
-rw-r--r--Master/texmf-dist/doc/xelatex/xecjk/xeCJK.pdfbin1246817 -> 1246502 bytes
-rw-r--r--Master/texmf-dist/doc/xelatex/xecjk/xunicode-symbols.pdfbin298083 -> 298073 bytes
-rw-r--r--Master/texmf-dist/source/xelatex/xecjk/xeCJK.dtx162
-rw-r--r--Master/texmf-dist/tex/xelatex/xecjk/xeCJK-listings.sty4
-rw-r--r--Master/texmf-dist/tex/xelatex/xecjk/xeCJK.cfg4
-rw-r--r--Master/texmf-dist/tex/xelatex/xecjk/xeCJK.sty128
-rw-r--r--Master/texmf-dist/tex/xelatex/xecjk/xeCJKfntef.sty4
-rw-r--r--Master/texmf-dist/tex/xelatex/xecjk/xunicode-addon.sty4
-rw-r--r--Master/texmf-dist/tex/xelatex/xecjk/xunicode-extra.def4
10 files changed, 162 insertions, 155 deletions
diff --git a/Master/texmf-dist/doc/xelatex/xecjk/example/xeCJK-example-checksingle.tex b/Master/texmf-dist/doc/xelatex/xecjk/example/xeCJK-example-checksingle.tex
index 3735d4a76e7..d3c37feff52 100644
--- a/Master/texmf-dist/doc/xelatex/xecjk/example/xeCJK-example-checksingle.tex
+++ b/Master/texmf-dist/doc/xelatex/xecjk/example/xeCJK-example-checksingle.tex
@@ -9,14 +9,11 @@
\documentclass{minimal}
\usepackage{xeCJK}
\setCJKmainfont{SimSun}
-\catcode`\。=\active
-\def。{.}
-\def\foo{一}
\long\def\showtext{一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十。
\[x^2+y^2\]
-一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十\foo
+一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十。
$$x^2+y^2$$
-一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十\foo
+一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十。
\begin{equation}
x^2+y^2
\end{equation}
diff --git a/Master/texmf-dist/doc/xelatex/xecjk/xeCJK.pdf b/Master/texmf-dist/doc/xelatex/xecjk/xeCJK.pdf
index 596ab144ba4..64ac5246c3f 100644
--- a/Master/texmf-dist/doc/xelatex/xecjk/xeCJK.pdf
+++ b/Master/texmf-dist/doc/xelatex/xecjk/xeCJK.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/xelatex/xecjk/xunicode-symbols.pdf b/Master/texmf-dist/doc/xelatex/xecjk/xunicode-symbols.pdf
index 7fc3e2fd1fe..d9cc38e10e5 100644
--- a/Master/texmf-dist/doc/xelatex/xecjk/xunicode-symbols.pdf
+++ b/Master/texmf-dist/doc/xelatex/xecjk/xunicode-symbols.pdf
Binary files differ
diff --git a/Master/texmf-dist/source/xelatex/xecjk/xeCJK.dtx b/Master/texmf-dist/source/xelatex/xecjk/xeCJK.dtx
index 8a3f5bbdfd9..e73a8c7ce6b 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 efd7a18 2017-02-23 02:07:20 +0800 Qing Lee <sobenlee@gmail.com> $
+%<+!driver>\GetIdInfo$Id: xeCJK.dtx 832988e 2017-04-01 21:33:23 +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.4.6}{\ExplFileDescription}
+%<!driver> {\ExplFileDate}{3.4.7}{\ExplFileDescription}
%</package|config|fntef|listings|xunicode|xunextra>
%<*driver>
\documentclass{ctxdoc}
@@ -275,7 +275,7 @@ Copyright and Licence
% \changes{v3.3.2}{2015/05/15}{随 Unicode 7.0.0 更新简繁汉字映射。}
% \changes{v3.3.3}{2015/09/25}{更新 \hologo{LaTeX3} 代码。}
%
-% \CheckSum{10171}
+% \CheckSum{10155}
% \GetFileId{xeCJK.sty}
%
% \title{\bfseries\pkg{xeCJK} 宏包}
@@ -4201,34 +4201,34 @@ Copyright and Licence
% \end{macrocode}
% \end{macro}
%
+% \changes{v3.4.7}{2017/03/20}{简化 \texttt{CheckSingle} 的实现,不再展开宏。}
+%
% \begin{macro}[internal]{\xeCJK_check_single:Nw}
+% \begin{macro}[aux]{\@@_check_single_end:N}
% \begin{macrocode}
\cs_new_protected_nopar:Npn \xeCJK_check_single:Nw #1
{
+ \group_align_safe_begin:
\peek_catcode:NTF \c_catcode_letter_token
{ \xeCJK_check_single:NNw #1 }
{
- \group_align_safe_begin:
\token_if_other:NTF \l_peek_token
- { \group_align_safe_end: \xeCJK_check_single:NNw #1 }
- {
- \group_align_safe_end:
- \bool_if:nTF
- {
- \str_if_eq_x_p:nn { \token_get_arg_spec:N \l_peek_token } { } &&
- \exp_args:No \tl_if_single_token_p:n \l_peek_token &&
- ( \exp_after:wN \token_if_other_p:N \l_peek_token ||
- \exp_after:wN \token_if_letter_p:N \l_peek_token )
- }
- { \exp_after:wN \xeCJK_check_single:NNw \exp_after:wN #1 }
- { \@@_check_single_save:N #1 }
- }
+ { \xeCJK_check_single:NNw }
+ { \@@_check_single_end:N }
+ #1
}
}
+\cs_new_protected_nopar:Npn \@@_check_single_end:N
+ {
+ \group_align_safe_end:
+ \@@_check_single_save:N
+ }
% \end{macrocode}
% \end{macro}
+% \end{macro}
%
% \begin{macro}[internal]{\xeCJK_check_single:NNw}
+% \begin{macro}[aux]{\@@_check_single_aux:nNNw}
% \changes{v3.1.1}{2012/12/04}{改进定义,减少使用 \texttt{peek} 函数的次数。}
% \changes{v3.2.7}{2013/08/30}{与 \tn{CJKspace} 兼容。}
% 使用 \cs{group_align_safe_begin:} 和 \cs{group_align_safe_end:} 是为了防止在表格
@@ -4241,49 +4241,71 @@ Copyright and Licence
\bool_if:NTF \l_@@_peek_ignore_spaces_bool
{
\bool_if:NTF \l_@@_reserve_space_bool
- { \@@_check_single_save:N #1 #2 ~ }
+ { \@@_check_single_end:N #1 #2 ~ }
{ \@@_check_single_space:NN #1#2 }
}
- { \@@_check_single_save:N #1 #2 }
+ { \@@_check_single_end:N #1 #2 }
}
{
- \group_align_safe_begin:
\token_if_other:NTF \l_peek_token
{
- \group_align_safe_end:
\bool_if:NTF \l_@@_peek_ignore_spaces_bool
- { \@@_check_single_space:NN #1#2 }
- { \@@_check_single_save:N #1 #2 }
+ { \@@_check_single_space:NN }
+ { \@@_check_single_end:N }
}
{
- \token_if_cs:NTF \l_peek_token
- {
- \group_align_safe_end:
- \bool_if:NTF \l_@@_peek_ignore_spaces_bool
- { \xeCJK_check_single_cs:NNn #1#2 { ~ } }
- { \xeCJK_check_single_cs:NNn #1#2 { } }
- }
- {
- \group_align_safe_end:
- \bool_if:nTF
- {
- \l_@@_plain_equation_bool &&
- \token_if_math_toggle_p:N \l_peek_token
- }
- {
- \bool_if:NTF \l_@@_peek_ignore_spaces_bool
- { \xeCJK_check_single_equation:NNnNw #1 #2 { ~ } }
- { \xeCJK_check_single_equation:NNnNw #1 #2 { } }
- }
- {
- \bool_if:NTF \l_@@_peek_ignore_spaces_bool
- { \@@_check_single_save:N #1 #2 ~ }
- { \@@_check_single_save:N #1 #2 }
- }
- }
+ \bool_if:NTF \l_@@_peek_ignore_spaces_bool
+ { \@@_check_single_aux:nNNw { ~ } }
+ { \@@_check_single_aux:nNNw { } }
}
+ #1 #2
}
}
+\cs_new_protected_nopar:Npn \@@_check_single_aux:nNNw #1#2#3
+ {
+ \token_if_cs:NTF \l_peek_token
+ { \xeCJK_check_single_cs:NNn }
+ { \xeCJK_check_single_end:NNnw }
+ #2 #3 {#1}
+ }
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}[internal]{\xeCJK_check_single_end:NNnw}
+% \begin{macro}[aux]{\@@_check_single_end_aux:NNn,\@@_check_single_end_equation:NNnw}
+% \begin{macrocode}
+\cs_new_protected_nopar:Npn \@@_check_single_end_aux:NNn #1#2#3
+ { \@@_check_single_end:N #1 #2 #3 }
+\cs_new_eq:NN \xeCJK_check_single_end:NNnw \@@_check_single_end_aux:NNn
+\cs_new_protected_nopar:Npn \@@_check_single_end_equation:NNnw
+ {
+ \token_if_math_toggle:NTF \l_peek_token
+ { \xeCJK_check_single_equation:NNnNw }
+ { \@@_check_single_end_aux:NNn }
+ }
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{PlainEquation}
+% \changes{v3.1.1}{2012/12/06}{增加 \texttt{PlainEquation} 选项。}
+% \begin{macrocode}
+\keys_define:nn { xeCJK / options }
+ {
+ PlainEquation .choice: ,
+ PlainEquation / true .code:n =
+ {
+ \cs_set_eq:NN \xeCJK_check_single_end:NNnw
+ \@@_check_single_end_equation:NNnw
+ } ,
+ PlainEquation / false .code:n =
+ {
+ \cs_set_eq:NN \xeCJK_check_single_end:NNnw
+ \@@_check_single_end_aux:NNn
+ } ,
+ PlainEquation .default:n = { true } ,
+ }
% \end{macrocode}
% \end{macro}
%
@@ -4298,10 +4320,10 @@ Copyright and Licence
\xeCJK_if_CJK_class:NTF #2
{
\xeCJK_if_CJK_class:NTF \l_peek_token
- { \@@_check_single_save:N #1 #2 }
- { \@@_check_single_save:N #1 #2 ~ }
+ { \@@_check_single_end:N #1 #2 }
+ { \@@_check_single_end:N #1 #2 ~ }
}
- { \@@_check_single_save:N #1 #2 ~ }
+ { \@@_check_single_end:N #1 #2 ~ }
}
% \end{macrocode}
% \end{macro}
@@ -4312,10 +4334,10 @@ Copyright and Licence
{
\peek_catcode:NTF \c_math_toggle_token
{
- \xeCJK_widow_penalty: \@@_check_single_save:N #1
+ \xeCJK_widow_penalty: \@@_check_single_end:N #1
\xeCJK_make_node:n { CJK-widow } #2 #4
}
- { \@@_check_single_save:N #1 #2#3#4 }
+ { \@@_check_single_end:N #1 #2#3#4 }
}
% \end{macrocode}
% \end{macro}
@@ -4342,16 +4364,16 @@ Copyright and Licence
% \begin{macrocode}
\cs_new_protected_nopar:Npn \xeCJK_check_single_cs:NNn #1#2#3
{
- \group_align_safe_begin:
\tl_case:NoF \l_peek_token
{ \l_@@_check_single_cs_case_tl }
- { \group_align_safe_end: \use_iii:nnn }
+ { \use_iii:nnn }
{ \xeCJK_check_single_env:nnNn }
{
- \xeCJK_widow_penalty: \@@_check_single_save:N #1
+ \xeCJK_widow_penalty:
+ \@@_check_single_end:N #1
\xeCJK_make_node:n { CJK-widow } #2#3
}
- { \@@_check_single_save:N #1 #2#3 }
+ { \@@_check_single_end:N #1 #2#3 }
}
\tl_new:N \l_@@_check_single_cs_case_tl
\cs_generate_variant:Nn \tl_case:NnF { No }
@@ -4362,11 +4384,10 @@ Copyright and Licence
% \begin{macrocode}
\cs_new_protected_nopar:Npn \xeCJK_check_single_env:nnNn #1#2#3#4
{
- \group_align_safe_begin:
\str_case_x:noTF {#4}
{ \l_@@_inline_env_case_tl }
- { \group_align_safe_end: #2 }
- { \group_align_safe_end: #1 }
+ {#2}
+ {#1}
#3 {#4}
}
\cs_generate_variant:Nn \str_case_x:nnTF { no }
@@ -4379,7 +4400,7 @@ Copyright and Licence
% \begin{macrocode}
\xeCJK_cs_case_keys_define:nNNnn { NewLineCS }
\l_@@_new_line_cs_case_tl \l_@@_new_line_cs_seq
- { \group_align_safe_end: \use_ii:nnn }
+ { \use_ii:nnn }
{
\tl_concat:NNN \l_@@_check_single_cs_case_tl
\l_@@_new_line_cs_case_tl \l_@@_env_cs_case_tl
@@ -4391,7 +4412,7 @@ Copyright and Licence
% \begin{macrocode}
\xeCJK_cs_case_keys_define:nNNnn { EnvCS }
\l_@@_env_cs_case_tl \l_@@_env_cs_seq
- { \group_align_safe_end: \use:n }
+ { \use:n }
{
\tl_concat:NNN \l_@@_check_single_cs_case_tl
\l_@@_new_line_cs_case_tl \l_@@_env_cs_case_tl
@@ -4405,7 +4426,7 @@ Copyright and Licence
% \begin{macrocode}
\keys_define:nn { xeCJK / options }
{
- InlineEnv .code:n =
+ InlineEnv .code:n =
{
\seq_set_from_clist:Nn \l_@@_inline_env_seq {#1}
\@@_update_inline_env_case_tl:
@@ -4442,14 +4463,6 @@ Copyright and Licence
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{PlainEquation}
-% \changes{v3.1.1}{2012/12/06}{增加 \texttt{PlainEquation} 选项。}
-% \begin{macrocode}
-\keys_define:nn { xeCJK / options }
- { PlainEquation .bool_set:N = \l_@@_plain_equation_bool }
-% \end{macrocode}
-% \end{macro}
-%
% \subsection{增加 CJK 子分区}
%
% \begin{macro}[internal]{\g_@@_CJK_sub_class_seq}
@@ -12469,14 +12482,11 @@ This is an example. 这是一个例子}
\documentclass{minimal}
\usepackage{xeCJK}
\setCJKmainfont{SimSun}
-\catcode`\。=\active
-\def。{.}
-\def\foo{一}
\long\def\showtext{一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十。
\[x^2+y^2\]
-一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十\foo
+一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十。
$$x^2+y^2$$
-一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十\foo
+一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十。
\begin{equation}
x^2+y^2
\end{equation}
diff --git a/Master/texmf-dist/tex/xelatex/xecjk/xeCJK-listings.sty b/Master/texmf-dist/tex/xelatex/xecjk/xeCJK-listings.sty
index bf6b628fc37..c5982eb3de4 100644
--- a/Master/texmf-dist/tex/xelatex/xecjk/xeCJK-listings.sty
+++ b/Master/texmf-dist/tex/xelatex/xecjk/xeCJK-listings.sty
@@ -29,10 +29,10 @@
%%
\NeedsTeXFormat{LaTeX2e}
\RequirePackage{expl3}
-\GetIdInfo$Id: xeCJK.dtx efd7a18 2017-02-23 02:07:20 +0800 Qing Lee <sobenlee@gmail.com> $
+\GetIdInfo$Id: xeCJK.dtx 832988e 2017-04-01 21:33:23 +0800 Qing Lee <sobenlee@gmail.com> $
{xeCJK patch file for listings}
\ProvidesExplPackage{xeCJK-listings}
- {\ExplFileDate}{3.4.6}{\ExplFileDescription}
+ {\ExplFileDate}{3.4.7}{\ExplFileDescription}
\DeclareOption* { \PassOptionsToPackage { \CurrentOption } { xeCJK } }
\ProcessOptions \scan_stop:
\RequirePackage { xeCJK }
diff --git a/Master/texmf-dist/tex/xelatex/xecjk/xeCJK.cfg b/Master/texmf-dist/tex/xelatex/xecjk/xeCJK.cfg
index 1795c6bb4f2..38bf54a521e 100644
--- a/Master/texmf-dist/tex/xelatex/xecjk/xeCJK.cfg
+++ b/Master/texmf-dist/tex/xelatex/xecjk/xeCJK.cfg
@@ -6,10 +6,10 @@
%%
%% xeCJK.dtx (with options: `config')
%%
-\GetIdInfo$Id: xeCJK.dtx efd7a18 2017-02-23 02:07:20 +0800 Qing Lee <sobenlee@gmail.com> $
+\GetIdInfo$Id: xeCJK.dtx 832988e 2017-04-01 21:33:23 +0800 Qing Lee <sobenlee@gmail.com> $
{Configuration file for xeCJK package}
\ProvidesExplFile{\ExplFileName.cfg}
- {\ExplFileDate}{3.4.6}{\ExplFileDescription}
+ {\ExplFileDate}{3.4.7}{\ExplFileDescription}
%%
%%
diff --git a/Master/texmf-dist/tex/xelatex/xecjk/xeCJK.sty b/Master/texmf-dist/tex/xelatex/xecjk/xeCJK.sty
index 6b30d8f253f..97c9e4ff557 100644
--- a/Master/texmf-dist/tex/xelatex/xecjk/xeCJK.sty
+++ b/Master/texmf-dist/tex/xelatex/xecjk/xeCJK.sty
@@ -29,10 +29,10 @@
%%
\NeedsTeXFormat{LaTeX2e}
\RequirePackage{expl3}
-\GetIdInfo$Id: xeCJK.dtx efd7a18 2017-02-23 02:07:20 +0800 Qing Lee <sobenlee@gmail.com> $
+\GetIdInfo$Id: xeCJK.dtx 832988e 2017-04-01 21:33:23 +0800 Qing Lee <sobenlee@gmail.com> $
{Typesetting CJK scripts with XeLaTeX}
\ProvidesExplPackage{\ExplFileName}
- {\ExplFileDate}{3.4.6}{\ExplFileDescription}
+ {\ExplFileDate}{3.4.7}{\ExplFileDescription}
\msg_new:nnn { xeCJK } { Require-XeTeX }
{
The~xeCJK~package~requires~XeTeX~to~function.\\\\
@@ -1496,26 +1496,21 @@
{ \tex_penalty:D \l__xeCJK_widow_penalty_int }
\cs_new_protected_nopar:Npn \xeCJK_check_single:Nw #1
{
+ \group_align_safe_begin:
\peek_catcode:NTF \c_catcode_letter_token
{ \xeCJK_check_single:NNw #1 }
{
- \group_align_safe_begin:
\token_if_other:NTF \l_peek_token
- { \group_align_safe_end: \xeCJK_check_single:NNw #1 }
- {
- \group_align_safe_end:
- \bool_if:nTF
- {
- \str_if_eq_x_p:nn { \token_get_arg_spec:N \l_peek_token } { } &&
- \exp_args:No \tl_if_single_token_p:n \l_peek_token &&
- ( \exp_after:wN \token_if_other_p:N \l_peek_token ||
- \exp_after:wN \token_if_letter_p:N \l_peek_token )
- }
- { \exp_after:wN \xeCJK_check_single:NNw \exp_after:wN #1 }
- { \__xeCJK_check_single_save:N #1 }
- }
+ { \xeCJK_check_single:NNw }
+ { \__xeCJK_check_single_end:N }
+ #1
}
}
+\cs_new_protected_nopar:Npn \__xeCJK_check_single_end:N
+ {
+ \group_align_safe_end:
+ \__xeCJK_check_single_save:N
+ }
\cs_new_protected_nopar:Npn \xeCJK_check_single:NNw #1#2
{
\xeCJK_peek_catcode_ignore_spaces:NTF \c_catcode_letter_token
@@ -1523,110 +1518,117 @@
\bool_if:NTF \l__xeCJK_peek_ignore_spaces_bool
{
\bool_if:NTF \l__xeCJK_reserve_space_bool
- { \__xeCJK_check_single_save:N #1 #2 ~ }
+ { \__xeCJK_check_single_end:N #1 #2 ~ }
{ \__xeCJK_check_single_space:NN #1#2 }
}
- { \__xeCJK_check_single_save:N #1 #2 }
+ { \__xeCJK_check_single_end:N #1 #2 }
}
{
- \group_align_safe_begin:
\token_if_other:NTF \l_peek_token
{
- \group_align_safe_end:
\bool_if:NTF \l__xeCJK_peek_ignore_spaces_bool
- { \__xeCJK_check_single_space:NN #1#2 }
- { \__xeCJK_check_single_save:N #1 #2 }
+ { \__xeCJK_check_single_space:NN }
+ { \__xeCJK_check_single_end:N }
}
{
- \token_if_cs:NTF \l_peek_token
- {
- \group_align_safe_end:
- \bool_if:NTF \l__xeCJK_peek_ignore_spaces_bool
- { \xeCJK_check_single_cs:NNn #1#2 { ~ } }
- { \xeCJK_check_single_cs:NNn #1#2 { } }
- }
- {
- \group_align_safe_end:
- \bool_if:nTF
- {
- \l__xeCJK_plain_equation_bool &&
- \token_if_math_toggle_p:N \l_peek_token
- }
- {
- \bool_if:NTF \l__xeCJK_peek_ignore_spaces_bool
- { \xeCJK_check_single_equation:NNnNw #1 #2 { ~ } }
- { \xeCJK_check_single_equation:NNnNw #1 #2 { } }
- }
- {
- \bool_if:NTF \l__xeCJK_peek_ignore_spaces_bool
- { \__xeCJK_check_single_save:N #1 #2 ~ }
- { \__xeCJK_check_single_save:N #1 #2 }
- }
- }
+ \bool_if:NTF \l__xeCJK_peek_ignore_spaces_bool
+ { \__xeCJK_check_single_aux:nNNw { ~ } }
+ { \__xeCJK_check_single_aux:nNNw { } }
}
+ #1 #2
}
}
+\cs_new_protected_nopar:Npn \__xeCJK_check_single_aux:nNNw #1#2#3
+ {
+ \token_if_cs:NTF \l_peek_token
+ { \xeCJK_check_single_cs:NNn }
+ { \xeCJK_check_single_end:NNnw }
+ #2 #3 {#1}
+ }
+\cs_new_protected_nopar:Npn \__xeCJK_check_single_end_aux:NNn #1#2#3
+ { \__xeCJK_check_single_end:N #1 #2 #3 }
+\cs_new_eq:NN \xeCJK_check_single_end:NNnw \__xeCJK_check_single_end_aux:NNn
+\cs_new_protected_nopar:Npn \__xeCJK_check_single_end_equation:NNnw
+ {
+ \token_if_math_toggle:NTF \l_peek_token
+ { \xeCJK_check_single_equation:NNnNw }
+ { \__xeCJK_check_single_end_aux:NNn }
+ }
+\keys_define:nn { xeCJK / options }
+ {
+ PlainEquation .choice: ,
+ PlainEquation / true .code:n =
+ {
+ \cs_set_eq:NN \xeCJK_check_single_end:NNnw
+ \__xeCJK_check_single_end_equation:NNnw
+ } ,
+ PlainEquation / false .code:n =
+ {
+ \cs_set_eq:NN \xeCJK_check_single_end:NNnw
+ \__xeCJK_check_single_end_aux:NNn
+ } ,
+ PlainEquation .default:n = { true } ,
+ }
\cs_new_protected_nopar:Npn \__xeCJK_check_single_space:NN #1#2
{
\xeCJK_if_CJK_class:NTF #2
{
\xeCJK_if_CJK_class:NTF \l_peek_token
- { \__xeCJK_check_single_save:N #1 #2 }
- { \__xeCJK_check_single_save:N #1 #2 ~ }
+ { \__xeCJK_check_single_end:N #1 #2 }
+ { \__xeCJK_check_single_end:N #1 #2 ~ }
}
- { \__xeCJK_check_single_save:N #1 #2 ~ }
+ { \__xeCJK_check_single_end:N #1 #2 ~ }
}
\cs_new_protected_nopar:Npn \xeCJK_check_single_equation:NNnNw #1#2#3#4
{
\peek_catcode:NTF \c_math_toggle_token
{
- \xeCJK_widow_penalty: \__xeCJK_check_single_save:N #1
+ \xeCJK_widow_penalty: \__xeCJK_check_single_end:N #1
\xeCJK_make_node:n { CJK-widow } #2 #4
}
- { \__xeCJK_check_single_save:N #1 #2#3#4 }
+ { \__xeCJK_check_single_end:N #1 #2#3#4 }
}
\cs_new_protected_nopar:Npn \xeCJK_check_single_cs:NNn #1#2#3
{
- \group_align_safe_begin:
\tl_case:NoF \l_peek_token
{ \l__xeCJK_check_single_cs_case_tl }
- { \group_align_safe_end: \use_iii:nnn }
+ { \use_iii:nnn }
{ \xeCJK_check_single_env:nnNn }
{
- \xeCJK_widow_penalty: \__xeCJK_check_single_save:N #1
+ \xeCJK_widow_penalty:
+ \__xeCJK_check_single_end:N #1
\xeCJK_make_node:n { CJK-widow } #2#3
}
- { \__xeCJK_check_single_save:N #1 #2#3 }
+ { \__xeCJK_check_single_end:N #1 #2#3 }
}
\tl_new:N \l__xeCJK_check_single_cs_case_tl
\cs_generate_variant:Nn \tl_case:NnF { No }
\cs_new_protected_nopar:Npn \xeCJK_check_single_env:nnNn #1#2#3#4
{
- \group_align_safe_begin:
\str_case_x:noTF {#4}
{ \l__xeCJK_inline_env_case_tl }
- { \group_align_safe_end: #2 }
- { \group_align_safe_end: #1 }
+ {#2}
+ {#1}
#3 {#4}
}
\cs_generate_variant:Nn \str_case_x:nnTF { no }
\xeCJK_cs_case_keys_define:nNNnn { NewLineCS }
\l__xeCJK_new_line_cs_case_tl \l__xeCJK_new_line_cs_seq
- { \group_align_safe_end: \use_ii:nnn }
+ { \use_ii:nnn }
{
\tl_concat:NNN \l__xeCJK_check_single_cs_case_tl
\l__xeCJK_new_line_cs_case_tl \l__xeCJK_env_cs_case_tl
}
\xeCJK_cs_case_keys_define:nNNnn { EnvCS }
\l__xeCJK_env_cs_case_tl \l__xeCJK_env_cs_seq
- { \group_align_safe_end: \use:n }
+ { \use:n }
{
\tl_concat:NNN \l__xeCJK_check_single_cs_case_tl
\l__xeCJK_new_line_cs_case_tl \l__xeCJK_env_cs_case_tl
}
\keys_define:nn { xeCJK / options }
{
- InlineEnv .code:n =
+ InlineEnv .code:n =
{
\seq_set_from_clist:Nn \l__xeCJK_inline_env_seq {#1}
\__xeCJK_update_inline_env_case_tl:
@@ -1655,8 +1657,6 @@
{ \tl_put_right:Nn \l__xeCJK_inline_env_case_tl { {##1} { } } }
}
\tl_new:N \l__xeCJK_inline_env_case_tl
-\keys_define:nn { xeCJK / options }
- { PlainEquation .bool_set:N = \l__xeCJK_plain_equation_bool }
\seq_new:N \g__xeCJK_CJK_sub_class_seq
\NewDocumentCommand \xeCJKDeclareSubCJKBlock
{ s > { \TrimSpaces } m m }
diff --git a/Master/texmf-dist/tex/xelatex/xecjk/xeCJKfntef.sty b/Master/texmf-dist/tex/xelatex/xecjk/xeCJKfntef.sty
index f27c1418121..c048f9fbf83 100644
--- a/Master/texmf-dist/tex/xelatex/xecjk/xeCJKfntef.sty
+++ b/Master/texmf-dist/tex/xelatex/xecjk/xeCJKfntef.sty
@@ -29,10 +29,10 @@
%%
\NeedsTeXFormat{LaTeX2e}
\RequirePackage{expl3}
-\GetIdInfo$Id: xeCJK.dtx efd7a18 2017-02-23 02:07:20 +0800 Qing Lee <sobenlee@gmail.com> $
+\GetIdInfo$Id: xeCJK.dtx 832988e 2017-04-01 21:33:23 +0800 Qing Lee <sobenlee@gmail.com> $
{xeCJK font effect}
\ProvidesExplPackage{xeCJKfntef}
- {\ExplFileDate}{3.4.6}{\ExplFileDescription}
+ {\ExplFileDate}{3.4.7}{\ExplFileDescription}
\PassOptionsToPackage { normalem } { ulem }
\DeclareOption* { \PassOptionsToPackage { \CurrentOption } { ulem } }
\ProcessOptions \scan_stop:
diff --git a/Master/texmf-dist/tex/xelatex/xecjk/xunicode-addon.sty b/Master/texmf-dist/tex/xelatex/xecjk/xunicode-addon.sty
index 5346e0e9b11..6349f80d8bd 100644
--- a/Master/texmf-dist/tex/xelatex/xecjk/xunicode-addon.sty
+++ b/Master/texmf-dist/tex/xelatex/xecjk/xunicode-addon.sty
@@ -29,10 +29,10 @@
%%
\NeedsTeXFormat{LaTeX2e}
\RequirePackage{expl3}
-\GetIdInfo$Id: xeCJK.dtx efd7a18 2017-02-23 02:07:20 +0800 Qing Lee <sobenlee@gmail.com> $
+\GetIdInfo$Id: xeCJK.dtx 832988e 2017-04-01 21:33:23 +0800 Qing Lee <sobenlee@gmail.com> $
{addon file for xunicode}
\ProvidesExplPackage{xunicode-addon}
- {\ExplFileDate}{3.4.6}{\ExplFileDescription}
+ {\ExplFileDate}{3.4.7}{\ExplFileDescription}
\bool_if:nF
{
\sys_if_engine_xetex_p: ||
diff --git a/Master/texmf-dist/tex/xelatex/xecjk/xunicode-extra.def b/Master/texmf-dist/tex/xelatex/xecjk/xunicode-extra.def
index 58c57c48d3e..43810b49b6a 100644
--- a/Master/texmf-dist/tex/xelatex/xecjk/xunicode-extra.def
+++ b/Master/texmf-dist/tex/xelatex/xecjk/xunicode-extra.def
@@ -27,10 +27,10 @@
%%
%% ----------------------------------------------------------------------
%%
-\GetIdInfo$Id: xeCJK.dtx efd7a18 2017-02-23 02:07:20 +0800 Qing Lee <sobenlee@gmail.com> $
+\GetIdInfo$Id: xeCJK.dtx 832988e 2017-04-01 21:33:23 +0800 Qing Lee <sobenlee@gmail.com> $
{extra definition for xunicode}
\ProvidesExplFile{xunicode-extra.def}
- {\ExplFileDate}{3.4.6}{\ExplFileDescription}
+ {\ExplFileDate}{3.4.7}{\ExplFileDescription}
\DeclareUTFComposite\textsuperscript
\DeclareUTFComposite\textsubscript
\DeclareUTFEncodedAccent\textsbleftarrow{"20EE}{"20FF}