From 8183411fd04acd45256192a7065ffdb5ee3636bb Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Tue, 25 Oct 2016 20:40:25 +0000 Subject: xecjk (25oct16) git-svn-id: svn://tug.org/texlive/trunk@42354 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/xelatex/xecjk/xeCJK.pdf | Bin 1273618 -> 1243719 bytes .../doc/xelatex/xecjk/xunicode-symbols.pdf | Bin 298082 -> 298082 bytes Master/texmf-dist/source/xelatex/xecjk/xeCJK.dtx | 65 +++++++++++++-------- .../tex/xelatex/xecjk/xeCJK-listings.sty | 4 +- Master/texmf-dist/tex/xelatex/xecjk/xeCJK.cfg | 4 +- Master/texmf-dist/tex/xelatex/xecjk/xeCJK.sty | 46 +++++++++------ Master/texmf-dist/tex/xelatex/xecjk/xeCJKfntef.sty | 4 +- .../tex/xelatex/xecjk/xunicode-addon.sty | 4 +- .../tex/xelatex/xecjk/xunicode-extra.def | 4 +- 9 files changed, 78 insertions(+), 53 deletions(-) (limited to 'Master') diff --git a/Master/texmf-dist/doc/xelatex/xecjk/xeCJK.pdf b/Master/texmf-dist/doc/xelatex/xecjk/xeCJK.pdf index 7ae27485b1d..b85e918b1ba 100644 Binary files a/Master/texmf-dist/doc/xelatex/xecjk/xeCJK.pdf and b/Master/texmf-dist/doc/xelatex/xecjk/xeCJK.pdf differ diff --git a/Master/texmf-dist/doc/xelatex/xecjk/xunicode-symbols.pdf b/Master/texmf-dist/doc/xelatex/xecjk/xunicode-symbols.pdf index 64373cb128c..32f935f7f1c 100644 Binary files a/Master/texmf-dist/doc/xelatex/xecjk/xunicode-symbols.pdf and b/Master/texmf-dist/doc/xelatex/xecjk/xunicode-symbols.pdf differ diff --git a/Master/texmf-dist/source/xelatex/xecjk/xeCJK.dtx b/Master/texmf-dist/source/xelatex/xecjk/xeCJK.dtx index 2f8fcd16556..745380178bb 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> %\NeedsTeXFormat{LaTeX2e} %\RequirePackage{expl3} -%<+!driver>\GetIdInfo$Id: xeCJK.dtx 10a8836 2016-08-27 11:02:24 +0800 Qing Lee $ +%<+!driver>\GetIdInfo$Id: xeCJK.dtx 7cdefd6 2016-10-25 17:38:55 +0800 Qing Lee $ % {Typesetting CJK scripts with XeLaTeX} % {Configuration file for xeCJK package} % {xeCJK font effect} @@ -207,7 +207,7 @@ Copyright and Licence %\ProvidesExplPackage{xeCJK-listings} %\ProvidesExplPackage{xunicode-addon} %\ProvidesExplFile{xunicode-extra.def} -% {\ExplFileDate}{3.4.1}{\ExplFileDescription} +% {\ExplFileDate}{3.4.2}{\ExplFileDescription} % %<*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{10130} +% \CheckSum{10138} % \GetFileId{xeCJK.sty} % % \title{\bfseries\pkg{xeCJK} 宏包} @@ -2613,25 +2613,6 @@ Copyright and Licence % % \subsection{字符类别处理} % -% \begin{macro}[internal,var] -% {\g_@@_base_class_seq,\g_@@_non_CJK_class_seq,\g_@@_CJK_class_seq} -% \begin{macrocode} -\seq_new:N \g_@@_base_class_seq -\seq_gset_eq:NN \g_@@_base_class_seq \g_@@_class_seq -\seq_new:N \g_@@_non_CJK_class_seq -\seq_gset_from_clist:Nn \g_@@_non_CJK_class_seq - { Default , HalfLeft , HalfRight , NormalSpace , Boundary } -\seq_new:N \g_@@_CJK_class_seq -\cs_new_protected_nopar:Npn \@@_save_CJK_class:n #1 - { - \seq_gput_right:Nn \g_@@_CJK_class_seq {#1} - \tl_const:cn { \@@_CJK_class_tl:c { \@@_class_csname:n {#1} } } {#1} - } -\clist_map_function:nN - { CJK , FullLeft , FullRight , CM , HangulJamo } \@@_save_CJK_class:n -% \end{macrocode} -% \end{macro} -% % \begin{macro}[internal]{\xeCJK_class_num:n} % |#1| 为字符类别名称,用于取得字符类别对应的编号。 % \begin{macrocode} @@ -2889,12 +2870,42 @@ Copyright and Licence % \end{macro} % % \begin{macro}[internal]{\xeCJK_clear_Boundary_and_CJK_toks:} +% \changes{v3.4.2}{2016/10/19}{提高效率,避免重复循环。} % 清除边界与 CJK 文字、全角左右标点之间的内容。 % \begin{macrocode} \cs_new_protected_nopar:Npn \xeCJK_clear_Boundary_and_CJK_toks: - { \seq_map_function:NN \g_@@_CJK_class_seq \@@_clear_Boundary_and_CJK_toks:n } -\cs_new_protected_nopar:Npn \@@_clear_Boundary_and_CJK_toks:n #1 - { \xeCJK_clear_inter_class_toks:nn { Boundary } {#1} } + { } +\cs_new_protected_nopar:Npn \@@_update_clear_toks:n #1 + { + \cs_gset_protected_nopar:Npx \xeCJK_clear_Boundary_and_CJK_toks: + { + \exp_not:o { \xeCJK_clear_Boundary_and_CJK_toks: } + \xetex_interchartoks:D + \xeCJK_class_num:n { Boundary } ~ \xeCJK_class_num:n {#1} + = { \exp_not:N \prg_do_nothing: } + } + } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}[internal,var] +% {\g_@@_base_class_seq,\g_@@_non_CJK_class_seq,\g_@@_CJK_class_seq} +% 保存宏包预先定义的字符类。 +% \begin{macrocode} +\seq_new:N \g_@@_base_class_seq +\seq_gset_eq:NN \g_@@_base_class_seq \g_@@_class_seq +\seq_new:N \g_@@_non_CJK_class_seq +\seq_gset_from_clist:Nn \g_@@_non_CJK_class_seq + { Default , HalfLeft , HalfRight , NormalSpace , Boundary } +\seq_new:N \g_@@_CJK_class_seq +\cs_new_protected_nopar:Npn \@@_save_CJK_class:n #1 + { + \seq_gput_right:Nn \g_@@_CJK_class_seq {#1} + \tl_const:cn { \@@_CJK_class_tl:c { \@@_class_csname:n {#1} } } {#1} + \@@_update_clear_toks:n {#1} + } +\clist_map_function:nN + { CJK , FullLeft , FullRight , CM , HangulJamo } \@@_save_CJK_class:n % \end{macrocode} % \end{macro} % @@ -2999,13 +3010,17 @@ Copyright and Licence % \end{tabular} % \end{center} % +% \changes{v3.4.2}{2016/10/19}{避免在破折号之间折行。} +% % \begin{macro}[internal]{\xeCJK_class_group_begin:,\xeCJK_class_group_end:} +% 在 CJK 类开始时,设置 \tn{XeTeXdashbreakstate} 为零,避免破折号之间的折行。 % \begin{macrocode} \cs_new_protected_nopar:Npn \xeCJK_class_group_begin: { \c_group_begin_token \bool_set_true:N \l_@@_CJK_group_bool \int_gset_eq:NN \g_@@_spacefactor_int \c_one_thousand + \int_zero:N \xetex_dashbreakstate:D } \bool_new:N \l_@@_CJK_group_bool \cs_new_eq:NN \xeCJK_class_group_end: \c_group_end_token diff --git a/Master/texmf-dist/tex/xelatex/xecjk/xeCJK-listings.sty b/Master/texmf-dist/tex/xelatex/xecjk/xeCJK-listings.sty index 51ce6106f1b..9b2e2dad084 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 10a8836 2016-08-27 11:02:24 +0800 Qing Lee $ +\GetIdInfo$Id: xeCJK.dtx 7cdefd6 2016-10-25 17:38:55 +0800 Qing Lee $ {xeCJK patch file for listings} \ProvidesExplPackage{xeCJK-listings} - {\ExplFileDate}{3.4.1}{\ExplFileDescription} + {\ExplFileDate}{3.4.2}{\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 e0dc0a8b813..f1314122faa 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 10a8836 2016-08-27 11:02:24 +0800 Qing Lee $ +\GetIdInfo$Id: xeCJK.dtx 7cdefd6 2016-10-25 17:38:55 +0800 Qing Lee $ {Configuration file for xeCJK package} \ProvidesExplFile{\ExplFileName.cfg} - {\ExplFileDate}{3.4.1}{\ExplFileDescription} + {\ExplFileDate}{3.4.2}{\ExplFileDescription} %% %% diff --git a/Master/texmf-dist/tex/xelatex/xecjk/xeCJK.sty b/Master/texmf-dist/tex/xelatex/xecjk/xeCJK.sty index 5e030296495..bcb8164353b 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 10a8836 2016-08-27 11:02:24 +0800 Qing Lee $ +\GetIdInfo$Id: xeCJK.dtx 7cdefd6 2016-10-25 17:38:55 +0800 Qing Lee $ {Typesetting CJK scripts with XeLaTeX} \ProvidesExplPackage{\ExplFileName} - {\ExplFileDate}{3.4.1}{\ExplFileDescription} + {\ExplFileDate}{3.4.2}{\ExplFileDescription} \msg_new:nnn { xeCJK } { Require-XeTeX } { The~xeCJK~package~requires~XeTeX~to~function.\\\\ @@ -534,19 +534,6 @@ "A960 -> "A97F , "D7B0 -> "D7FF } -\seq_new:N \g__xeCJK_base_class_seq -\seq_gset_eq:NN \g__xeCJK_base_class_seq \g__xeCJK_class_seq -\seq_new:N \g__xeCJK_non_CJK_class_seq -\seq_gset_from_clist:Nn \g__xeCJK_non_CJK_class_seq - { Default , HalfLeft , HalfRight , NormalSpace , Boundary } -\seq_new:N \g__xeCJK_CJK_class_seq -\cs_new_protected_nopar:Npn \__xeCJK_save_CJK_class:n #1 - { - \seq_gput_right:Nn \g__xeCJK_CJK_class_seq {#1} - \tl_const:cn { \__xeCJK_CJK_class_tl:c { \__xeCJK_class_csname:n {#1} } } {#1} - } -\clist_map_function:nN - { CJK , FullLeft , FullRight , CM , HangulJamo } \__xeCJK_save_CJK_class:n \cs_new_nopar:Npn \xeCJK_class_num:n #1 { \use:c { \__xeCJK_class_csname:n {#1} } } \NewDocumentCommand \xeCJKDeclareCharClass { s > { \TrimSpaces } m m } { @@ -683,14 +670,37 @@ } } \cs_new_protected_nopar:Npn \xeCJK_clear_Boundary_and_CJK_toks: - { \seq_map_function:NN \g__xeCJK_CJK_class_seq \__xeCJK_clear_Boundary_and_CJK_toks:n } -\cs_new_protected_nopar:Npn \__xeCJK_clear_Boundary_and_CJK_toks:n #1 - { \xeCJK_clear_inter_class_toks:nn { Boundary } {#1} } + { } +\cs_new_protected_nopar:Npn \__xeCJK_update_clear_toks:n #1 + { + \cs_gset_protected_nopar:Npx \xeCJK_clear_Boundary_and_CJK_toks: + { + \exp_not:o { \xeCJK_clear_Boundary_and_CJK_toks: } + \xetex_interchartoks:D + \xeCJK_class_num:n { Boundary } ~ \xeCJK_class_num:n {#1} + = { \exp_not:N \prg_do_nothing: } + } + } +\seq_new:N \g__xeCJK_base_class_seq +\seq_gset_eq:NN \g__xeCJK_base_class_seq \g__xeCJK_class_seq +\seq_new:N \g__xeCJK_non_CJK_class_seq +\seq_gset_from_clist:Nn \g__xeCJK_non_CJK_class_seq + { Default , HalfLeft , HalfRight , NormalSpace , Boundary } +\seq_new:N \g__xeCJK_CJK_class_seq +\cs_new_protected_nopar:Npn \__xeCJK_save_CJK_class:n #1 + { + \seq_gput_right:Nn \g__xeCJK_CJK_class_seq {#1} + \tl_const:cn { \__xeCJK_CJK_class_tl:c { \__xeCJK_class_csname:n {#1} } } {#1} + \__xeCJK_update_clear_toks:n {#1} + } +\clist_map_function:nN + { CJK , FullLeft , FullRight , CM , HangulJamo } \__xeCJK_save_CJK_class:n \cs_new_protected_nopar:Npn \xeCJK_class_group_begin: { \c_group_begin_token \bool_set_true:N \l__xeCJK_CJK_group_bool \int_gset_eq:NN \g__xeCJK_spacefactor_int \c_one_thousand + \int_zero:N \xetex_dashbreakstate:D } \bool_new:N \l__xeCJK_CJK_group_bool \cs_new_eq:NN \xeCJK_class_group_end: \c_group_end_token diff --git a/Master/texmf-dist/tex/xelatex/xecjk/xeCJKfntef.sty b/Master/texmf-dist/tex/xelatex/xecjk/xeCJKfntef.sty index 8ab073d4e4c..c719c9b97e1 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 10a8836 2016-08-27 11:02:24 +0800 Qing Lee $ +\GetIdInfo$Id: xeCJK.dtx 7cdefd6 2016-10-25 17:38:55 +0800 Qing Lee $ {xeCJK font effect} \ProvidesExplPackage{xeCJKfntef} - {\ExplFileDate}{3.4.1}{\ExplFileDescription} + {\ExplFileDate}{3.4.2}{\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 039692ba3f2..7d9ac869a66 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 10a8836 2016-08-27 11:02:24 +0800 Qing Lee $ +\GetIdInfo$Id: xeCJK.dtx 7cdefd6 2016-10-25 17:38:55 +0800 Qing Lee $ {addon file for xunicode} \ProvidesExplPackage{xunicode-addon} - {\ExplFileDate}{3.4.1}{\ExplFileDescription} + {\ExplFileDate}{3.4.2}{\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 8827e785755..236838e6799 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 10a8836 2016-08-27 11:02:24 +0800 Qing Lee $ +\GetIdInfo$Id: xeCJK.dtx 7cdefd6 2016-10-25 17:38:55 +0800 Qing Lee $ {extra definition for xunicode} \ProvidesExplFile{xunicode-extra.def} - {\ExplFileDate}{3.4.1}{\ExplFileDescription} + {\ExplFileDate}{3.4.2}{\ExplFileDescription} \DeclareUTFComposite\textsuperscript \DeclareUTFComposite\textsubscript \DeclareUTFEncodedAccent\textsbleftarrow{"20EE}{"20FF} -- cgit v1.2.3