From 55af698ad13da62b3a0ae681c4bce01da52312a1 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Mon, 7 Aug 2017 21:09:26 +0000 Subject: xecjk (7aug17) git-svn-id: svn://tug.org/texlive/trunk@44978 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/xelatex/xecjk/xeCJK.pdf | Bin 1246034 -> 1248236 bytes .../doc/xelatex/xecjk/xunicode-symbols.pdf | Bin 293124 -> 293121 bytes .../misc/xetex/fontmapping/xecjk/han-simp.map | 4 +- .../misc/xetex/fontmapping/xecjk/han-trad.map | 4 +- Master/texmf-dist/source/xelatex/xecjk/xeCJK.dtx | 158 +++++++++++---------- .../tex/xelatex/xecjk/xeCJK-listings.sty | 22 +-- Master/texmf-dist/tex/xelatex/xecjk/xeCJK.cfg | 4 +- Master/texmf-dist/tex/xelatex/xecjk/xeCJK.sty | 90 ++++++------ Master/texmf-dist/tex/xelatex/xecjk/xeCJKfntef.sty | 8 +- .../tex/xelatex/xecjk/xunicode-addon.sty | 36 ++--- .../tex/xelatex/xecjk/xunicode-extra.def | 4 +- 11 files changed, 163 insertions(+), 167 deletions(-) diff --git a/Master/texmf-dist/doc/xelatex/xecjk/xeCJK.pdf b/Master/texmf-dist/doc/xelatex/xecjk/xeCJK.pdf index d103606ab9f..0218b6b13db 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 e828b18c590..d478236a2c5 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/fonts/misc/xetex/fontmapping/xecjk/han-simp.map b/Master/texmf-dist/fonts/misc/xetex/fontmapping/xecjk/han-simp.map index 92b9c2965c3..fd3221b8245 100644 --- a/Master/texmf-dist/fonts/misc/xetex/fontmapping/xecjk/han-simp.map +++ b/Master/texmf-dist/fonts/misc/xetex/fontmapping/xecjk/han-simp.map @@ -2,8 +2,8 @@ ; from the Unicode Unihan database: ; ; Unihan_Variants.txt -; Date: 2016-06-01 07:01:48 GMT [JHJ] -; Unicode version: 9.0.0 +; Date: 2017-05-14 07:01:48 GMT [JHJ] +; Unicode version: 10.0.0 ; LHSName "traditional" diff --git a/Master/texmf-dist/fonts/misc/xetex/fontmapping/xecjk/han-trad.map b/Master/texmf-dist/fonts/misc/xetex/fontmapping/xecjk/han-trad.map index 6ec87ad0f18..05d94bd8646 100644 --- a/Master/texmf-dist/fonts/misc/xetex/fontmapping/xecjk/han-trad.map +++ b/Master/texmf-dist/fonts/misc/xetex/fontmapping/xecjk/han-trad.map @@ -2,8 +2,8 @@ ; from the Unicode Unihan database: ; ; Unihan_Variants.txt -; Date: 2016-06-01 07:01:48 GMT [JHJ] -; Unicode version: 9.0.0 +; Date: 2017-05-14 07:01:48 GMT [JHJ] +; Unicode version: 10.0.0 ; LHSName "simplified" diff --git a/Master/texmf-dist/source/xelatex/xecjk/xeCJK.dtx b/Master/texmf-dist/source/xelatex/xecjk/xeCJK.dtx index 6a6e16387e3..5d2008047f3 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 18af4a5 2017-05-15 20:12:35 +0800 Qing Lee $ +%<+!driver>\GetIdInfo$Id: xeCJK.dtx 8b5e450 2017-08-07 17:02:18 +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.8}{\ExplFileDescription} +% {\ExplFileDate}{3.5.0}{\ExplFileDescription} % %<*driver> \documentclass{ctxdoc} @@ -274,8 +274,11 @@ Copyright and Licence % \changes{v3.2.6}{2013/07/29}{\texttt{case} 类函数的用法与 \hologo{LaTeX3} 同步。} % \changes{v3.3.2}{2015/05/15}{随 Unicode 7.0.0 更新简繁汉字映射。} % \changes{v3.3.3}{2015/09/25}{更新 \hologo{LaTeX3} 代码。} +% \changes{v3.5.0}{2017/07/19}{常数 \cs{c_minus_one} 已过时。} +% \changes{v3.5.0}{2017/07/22}{使用 \texttt{lazy} 函数对 Boolean 表达式 +% 进行最小化运算(\hologo{LaTeX3} 2017/07/19)。} % -% \CheckSum{10169} +% \CheckSum{10170} % \GetFileId{xeCJK.sty} % % \title{\bfseries\pkg{xeCJK} 宏包} @@ -519,6 +522,7 @@ Copyright and Licence % \end{syntax} % 全局设定当没有声明对应的斜体时,是否使用\textit{\CJKfontspec[AutoFakeSlant]{Adobe Song Std}伪斜体}; % 当输入的是数字时,将使用伪斜体,并将使用输入的数字作为伪斜体的默认倾斜程度。 +% 倾斜程度的取值范围是 $[-0.999, 0.999]$。 % \end{function} % % \begin{function}[rEXP]{EmboldenFactor} @@ -532,7 +536,7 @@ Copyright and Licence % \begin{syntax} % SlantFactor = \Arg{数字|(0.167)} % \end{syntax} -% 设置伪斜体的倾斜程度,范围是 $-0.999 \sim 0.999$。 +% 设置伪斜体的倾斜程度,范围是 $[-0.999, 0.999]$。 % \end{function} % % \begin{function}[updated=2012-11-10]{PunctStyle} @@ -1241,7 +1245,7 @@ Copyright and Licence % kerning-margin-minimum = 0.1 em % } % \end{ctexexam} -% 就定义了一个名为 |mine| 的标点处理格式。可以在导演区通过 +% 就定义了一个名为 |mine| 的标点处理格式。可以在导言区通过 % \begin{frameverb} % \xeCJKsetup{PunctStyle=mine} % \end{frameverb} @@ -1592,7 +1596,7 @@ Copyright and Licence using~your~TeX~package~manager~or~from~CTAN.\\ \str_if_eq:nnT {#1} { expl3 } { Loading~xeCJK~will~abort! } } -\@ifpackagelater { expl3 } { 2015/09/24 } { } +\@ifpackagelater { expl3 } { 2017/07/19 } { } { \msg_critical:nnn { xeCJK } { l3-too-old } { expl3 } } % \end{macrocode} % @@ -1779,7 +1783,9 @@ Copyright and Licence } \cs_new:Npn \@@_tl_remove_outer_braces:w #1 \s__stop { - \bool_if:nTF { \tl_if_single_p:n {#1} && ! ( \tl_if_head_is_N_type_p:n {#1} ) } + \bool_lazy_and:nnTF + { \tl_if_single_p:n {#1} } + { ! ( \tl_if_head_is_N_type_p:n {#1} ) } { \xeCJK_tl_remove_outer_braces:n {#1} } { \tl_trim_spaces:n {#1} } } @@ -2413,6 +2419,7 @@ Copyright and Licence % % \changes{v3.3.3}{2015/06/25}{补充 Ext-E。} % \changes{v3.4.1}{2016/08/18}{补充 Unicode 9.0.0 的西夏文。} +% \changes{v3.5.0}{2017/07/22}{补充 Ext-F。} % % \begin{macro}[var,internal]{\c_@@_CJK_chars_clist} % CJK 字符类,包括文字和标点符号。 @@ -2551,7 +2558,11 @@ Copyright and Licence % \end{macrocode} % \item CJK Unified Ideographs Extension-E (中日韩统一表意文字扩展 E) % \begin{macrocode} - "2B820 -> "2CEA1 , + "2B820 -> "2CEAF , +% \end{macrocode} +% \item CJK Unified Ideographs Extension-F (中日韩统一表意文字扩展 F) +% \begin{macrocode} + "2CEB0 -> "2EBEF , % \end{macrocode} % \item CJK Compatibility Ideographs Supplement (中日韩兼容表意文字增补) % \begin{macrocode} @@ -2685,7 +2696,9 @@ Copyright and Licence % \begin{macrocode} \cs_new_protected_nopar:Npn \@@_check_num_range:nnNN #1#2#3#4 { - \bool_if:nTF { \xeCJK_if_blank_x_p:n {#1} || \xeCJK_if_blank_x_p:n {#2} } + \bool_lazy_or:nnTF + { \xeCJK_if_blank_x_p:n {#1} } + { \xeCJK_if_blank_x_p:n {#2} } { \int_set:Nn #3 { \xeCJK_if_blank_x:nTF {#1} {#2} {#1} } \int_set_eq:NN #3 #4 @@ -3117,11 +3130,9 @@ Copyright and Licence } \cs_new_protected_nopar:Npn \@@_check_for_ecglue: { - \bool_if:nTF - { - \xeCJK_if_last_node_p:n { CJK } || - \xeCJK_if_last_node_p:n { CJK-widow } - } + \bool_lazy_or:nnTF + { \xeCJK_if_last_node_p:n { CJK } } + { \xeCJK_if_last_node_p:n { CJK-widow } } { \xeCJK_remove_node: \CJKecglue } { \xeCJK_if_last_node:nT { CJK-space } @@ -3242,18 +3253,17 @@ Copyright and Licence % \begin{macrocode} \cs_new_protected_nopar:Npn \xeCJK_check_for_glue: { - \bool_if:nTF - { \xeCJK_if_last_node_p:n { CJK } || \xeCJK_if_last_node_p:n { CJK-space } } + \bool_lazy_or:nnTF + { \xeCJK_if_last_node_p:n { CJK } } + { \xeCJK_if_last_node_p:n { CJK-space } } { \xeCJK_remove_node: \CJKglue } { \xeCJK_if_last_node:nTF { CJK-widow } { \xeCJK_remove_node: \xeCJK_widow_penalty: \CJKglue } { - \bool_if:nTF - { - \xeCJK_if_last_node_p:n { default } || - \int_compare_p:nNn \etex_lastnodetype:D = \c_ten - } + \bool_lazy_or:nnTF + { \xeCJK_if_last_node_p:n { default } } + { \int_compare_p:nNn \etex_lastnodetype:D = \c_ten } { \xeCJK_remove_node: \CJKecglue } { \xeCJK_check_for_xglue: } } @@ -3824,32 +3834,26 @@ Copyright and Licence { \c_one } { \box_set_to_last:N \l_@@_tmp_box - \bool_if:nTF - { - \int_compare_p:nNn \etex_lastnodetype:D = \c_minus_one && - \dim_compare_p:nNn { \box_wd:N \l_@@_tmp_box } = \tex_parindent:D - } + \bool_lazy_and:nnTF + { \int_compare_p:nNn \etex_lastnodetype:D = { -1 } } + { \dim_compare_p:nNn { \box_wd:N \l_@@_tmp_box } = \tex_parindent:D } { \box_use_clear:N \l_@@_tmp_box \use_none:n } { \box_use_clear:N \l_@@_tmp_box \use:n } } - { \c_minus_one } { \@@_zero_glue: \use_none:n } + { -1 } { \@@_zero_glue: \use_none:n } { \c_eleven } { - \bool_if:nTF - { - ! ( \skip_if_finite_p:n { \tex_lastskip:D } ) || - \skip_if_eq_p:nn { \tex_lastskip:D } { 1 sp } - } + \bool_lazy_or:nnTF + { ! ( \skip_if_finite_p:n { \tex_lastskip:D } ) } + { \skip_if_eq_p:nn { \tex_lastskip:D } { 1 sp } } { \@@_zero_glue: \use_none:n } { \skip_if_eq:nnTF { \tex_lastskip:D } { \labelsep } { \tex_unskip:D - \bool_if:nTF - { - \int_compare_p:nNn \etex_lastnodetype:D = \c_thirteen && - \int_compare_p:nNn \tex_lastpenalty:D = \c_zero - } + \bool_lazy_and:nnTF + { \int_compare_p:nNn \etex_lastnodetype:D = \c_thirteen } + { \int_compare_p:nNn \tex_lastpenalty:D = \c_zero } { \skip_horizontal:n { \labelsep } \use_none:n } { \skip_horizontal:n { \labelsep } \use:n } } @@ -6390,7 +6394,9 @@ Copyright and Licence } { \@@_warning:nx { SubBlock-undefined } {##1} } } - \bool_if:nT { #1 && \seq_if_empty_p:N \l_@@_sub_key_seq } + \bool_lazy_and:nnT + {#1} + { \seq_if_empty_p:N \l_@@_sub_key_seq } { \seq_map_function:NN \g_@@_sub_key_seq \@@_add_sub_class_features:n @@ -6398,8 +6404,9 @@ Copyright and Licence \prop_get:NVNT \g_@@_family_font_options_prop \l_xeCJK_family_tl \l_@@_font_options_clist { - \bool_if:nT - { \seq_if_empty_p:N \l_@@_sub_key_seq || #1 } + \bool_lazy_or:nnT + { \seq_if_empty_p:N \l_@@_sub_key_seq } + {#1} { \clist_concat:NNN \l_@@_font_options_clist \l_@@_font_options_clist \l_@@_add_font_features_clist @@ -7475,7 +7482,9 @@ Copyright and Licence } \@@_after_end_preamble:n { - \bool_if:nT { \g_@@_math_bool && \cs_if_exist_p:N \Url@MathSetup } + \bool_lazy_and:nnT + { \g_@@_math_bool } + { \cs_if_exist_p:N \Url@MathSetup } { \tl_put_right:Nn \Url@MathSetup { \xeCJK@update@fam } } } % \end{macrocode} @@ -7495,11 +7504,9 @@ Copyright and Licence \exp_not:o { \fontspec_setup_maths: - \bool_if:nT - { - \tl_if_empty_p:N \g__fontspec_bfmathrm_tl || - \tl_if_empty_p:N \g_fontspec_bfmathrm_tl - } + \bool_lazy_or:nnT + { \tl_if_empty_p:N \g__fontspec_bfmathrm_tl } + { \tl_if_empty_p:N \g_fontspec_bfmathrm_tl } { \DeclareSymbolFontAlphabet \mathrm { operators } } } } @@ -7966,8 +7973,9 @@ Copyright and Licence % \begin{macrocode} \@@_after_end_preamble:n { - \bool_if:nT - { \xeCJK_if_package_loaded_p:n { cprotect } && \cs_if_exist_p:N \icprotect } + \bool_lazy_and:nnT + { \xeCJK_if_package_loaded_p:n { cprotect } } + { \cs_if_exist_p:N \icprotect } { \exp_after:wN \tex_let:D \cs:w cprotect \cs_end: \icprotect } } % \end{macrocode} @@ -9022,7 +9030,7 @@ Copyright and Licence % \begin{macrocode} \cs_new_protected:Npn \xeCJK_fntef_boot:nnNNNn #1#2#3#4#5#6 { - \bool_if:nT { #3 || #5 } + \bool_lazy_or:nnT {#3} {#5} { \bool_set_false:c { l_@@_#2_skip_bool } } \IfBooleanT #4 { \bool_set_true:c { l_@@_#2_subtract_bool } } @@ -9035,7 +9043,7 @@ Copyright and Licence } \cs_new_protected:Npn \xeCJK_ulem_boot:NNNn #1#2#3#4 { - \bool_if:nT { #1 || #3 } + \bool_lazy_or:nnT {#1} {#3} { \bool_set_false:N \l_@@_ulem_skip_bool } \IfBooleanT #2 { \bool_set_true:N \l_@@_ulem_subtract_bool } @@ -9669,6 +9677,7 @@ Copyright and Licence } \@@_listings_append:nN } +\bool_new:N \l_@@_listings_letter_bool \cs_new_protected_nopar:Npn \@@_listings_process_other:nN #1#2 { \lst@whitespacefalse @@ -9714,11 +9723,12 @@ Copyright and Licence \lst@whitespacefalse \bool_if:NTF \l_@@_listings_letter_bool { - \bool_if:nF + \bool_lazy_or:nnF + { \int_compare_p:nNn \l_@@_listings_flag_int = \c_two } { - \int_compare_p:nNn \l_@@_listings_flag_int = \c_two || - ( \int_compare_p:nNn \l_@@_listings_flag_int = \c_three && - ! \l_@@_punct_breakable_bool ) + \bool_lazy_and_p:nn + { \int_compare_p:nNn \l_@@_listings_flag_int = \c_three } + { ! \l_@@_punct_breakable_bool } } { \lst@Output } \lst@lettertrue @@ -9735,11 +9745,9 @@ Copyright and Licence \lst@whitespacefalse \bool_if:NTF \l_@@_listings_letter_bool { - \bool_if:nT - { - \int_compare_p:nNn \l_@@_listings_flag_int < \c_two && - \@@_punct_if_long_p:N #2 - } + \bool_lazy_and:nnT + { \int_compare_p:nNn \l_@@_listings_flag_int < \c_two } + { \@@_punct_if_long_p:N #2 } { \lst@Output } \lst@lettertrue } @@ -9935,11 +9943,9 @@ Copyright and Licence % 些符号命令的默认设置。 % % \begin{macrocode} -\bool_if:nF - { - \sys_if_engine_xetex_p: || - \sys_if_engine_luatex_p: - } +\bool_lazy_or:nnF + { \sys_if_engine_xetex_p: } + { \sys_if_engine_luatex_p: } { \msg_new:nnnn { xunicode-addon } { xetex-luatex } { This~package~requires~either~XeTeX~or~LuaTeX~to~function.} @@ -10252,11 +10258,9 @@ Copyright and Licence % \begin{macrocode} \cs_new_protected:Npn \@@_provide_text_command_default:N #1 { - \bool_if:nF - { - \cs_if_exist_p:c { ? \token_to_str:N #1 } || - \cs_if_free_p:c { ? - \token_to_str:N #1 } - } + \bool_lazy_or:nnF + { \cs_if_exist_p:c { ? \token_to_str:N #1 } } + { \cs_if_free_p:c { ? - \token_to_str:N #1 } } { \exp_args:NNv \ProvideTextCommandDefault #1 { ? - \token_to_str:N #1 } } } % \end{macrocode} @@ -10568,11 +10572,9 @@ Copyright and Licence \tl_if_blank:nTF {#1} { \cs_if_exist_use:cTF { ? #2 } { {#1} } {#1} } { - \bool_if:nTF - { - \@@_glyph_if_exist_p:n { `#3 } && - \@@_glyph_if_exist_p:n { `#4 } - } + \bool_lazy_and:nnTF + { \@@_glyph_if_exist_p:n { `#3 } } + { \@@_glyph_if_exist_p:n { `#4 } } { #1#3#4 } { \cs_if_exist_use:cTF { ? #2 } { {#1} } { #1#3#4 } } } @@ -10701,11 +10703,11 @@ Copyright and Licence } \cs_new_protected:Npn \@@_add_double_symbol_aux:NnN #1#2#3 { - \bool_if:nTF + \bool_lazy_any:nTF { - \token_if_letter_p:N #1 || - \token_if_other_p:N #1 || - \token_if_chardef_p:N #1 + { \token_if_letter_p:N #1 } + { \token_if_other_p:N #1 } + { \token_if_chardef_p:N #1 } } { #1#3#2 } { #1#2#3 } diff --git a/Master/texmf-dist/tex/xelatex/xecjk/xeCJK-listings.sty b/Master/texmf-dist/tex/xelatex/xecjk/xeCJK-listings.sty index a41f8e2d322..22ced35096f 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 18af4a5 2017-05-15 20:12:35 +0800 Qing Lee $ +\GetIdInfo$Id: xeCJK.dtx 8b5e450 2017-08-07 17:02:18 +0800 Qing Lee $ {xeCJK patch file for listings} \ProvidesExplPackage{xeCJK-listings} - {\ExplFileDate}{3.4.8}{\ExplFileDescription} + {\ExplFileDate}{3.5.0}{\ExplFileDescription} \DeclareOption* { \PassOptionsToPackage { \CurrentOption } { xeCJK } } \ProcessOptions \scan_stop: \RequirePackage { xeCJK } @@ -168,6 +168,7 @@ } \__xeCJK_listings_append:nN } +\bool_new:N \l__xeCJK_listings_letter_bool \cs_new_protected_nopar:Npn \__xeCJK_listings_process_other:nN #1#2 { \lst@whitespacefalse @@ -200,11 +201,12 @@ \lst@whitespacefalse \bool_if:NTF \l__xeCJK_listings_letter_bool { - \bool_if:nF + \bool_lazy_or:nnF + { \int_compare_p:nNn \l__xeCJK_listings_flag_int = \c_two } { - \int_compare_p:nNn \l__xeCJK_listings_flag_int = \c_two || - ( \int_compare_p:nNn \l__xeCJK_listings_flag_int = \c_three && - ! \l__xeCJK_punct_breakable_bool ) + \bool_lazy_and_p:nn + { \int_compare_p:nNn \l__xeCJK_listings_flag_int = \c_three } + { ! \l__xeCJK_punct_breakable_bool } } { \lst@Output } \lst@lettertrue @@ -221,11 +223,9 @@ \lst@whitespacefalse \bool_if:NTF \l__xeCJK_listings_letter_bool { - \bool_if:nT - { - \int_compare_p:nNn \l__xeCJK_listings_flag_int < \c_two && - \__xeCJK_punct_if_long_p:N #2 - } + \bool_lazy_and:nnT + { \int_compare_p:nNn \l__xeCJK_listings_flag_int < \c_two } + { \__xeCJK_punct_if_long_p:N #2 } { \lst@Output } \lst@lettertrue } diff --git a/Master/texmf-dist/tex/xelatex/xecjk/xeCJK.cfg b/Master/texmf-dist/tex/xelatex/xecjk/xeCJK.cfg index 800fc7a9bbb..4f128de5d21 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 18af4a5 2017-05-15 20:12:35 +0800 Qing Lee $ +\GetIdInfo$Id: xeCJK.dtx 8b5e450 2017-08-07 17:02:18 +0800 Qing Lee $ {Configuration file for xeCJK package} \ProvidesExplFile{\ExplFileName.cfg} - {\ExplFileDate}{3.4.8}{\ExplFileDescription} + {\ExplFileDate}{3.5.0}{\ExplFileDescription} %% %% diff --git a/Master/texmf-dist/tex/xelatex/xecjk/xeCJK.sty b/Master/texmf-dist/tex/xelatex/xecjk/xeCJK.sty index c50b1246acf..eb360adc1f0 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 18af4a5 2017-05-15 20:12:35 +0800 Qing Lee $ +\GetIdInfo$Id: xeCJK.dtx 8b5e450 2017-08-07 17:02:18 +0800 Qing Lee $ {Typesetting CJK scripts with XeLaTeX} \ProvidesExplPackage{\ExplFileName} - {\ExplFileDate}{3.4.8}{\ExplFileDescription} + {\ExplFileDate}{3.5.0}{\ExplFileDescription} \msg_new:nnn { xeCJK } { Require-XeTeX } { The~xeCJK~package~requires~XeTeX~to~function.\\\\ @@ -49,7 +49,7 @@ using~your~TeX~package~manager~or~from~CTAN.\\ \str_if_eq:nnT {#1} { expl3 } { Loading~xeCJK~will~abort! } } -\@ifpackagelater { expl3 } { 2015/09/24 } { } +\@ifpackagelater { expl3 } { 2017/07/19 } { } { \msg_critical:nnn { xeCJK } { l3-too-old } { expl3 } } \prg_new_conditional:Npnn \xeCJK_if_package_loaded:n #1 { p , T , F , TF } { @@ -161,7 +161,9 @@ } \cs_new:Npn \__xeCJK_tl_remove_outer_braces:w #1 \s__stop { - \bool_if:nTF { \tl_if_single_p:n {#1} && ! ( \tl_if_head_is_N_type_p:n {#1} ) } + \bool_lazy_and:nnTF + { \tl_if_single_p:n {#1} } + { ! ( \tl_if_head_is_N_type_p:n {#1} ) } { \xeCJK_tl_remove_outer_braces:n {#1} } { \tl_trim_spaces:n {#1} } } @@ -518,7 +520,8 @@ "20000 -> "2A6DF , "2A700 -> "2B73F , "2B740 -> "2B81F , - "2B820 -> "2CEA1 , + "2B820 -> "2CEAF , + "2CEB0 -> "2EBEF , "2F800 -> "2FA1F } \clist_const:Nn \c__xeCJK_CM_chars_clist @@ -565,7 +568,9 @@ \cs_generate_variant:Nn \xeCJK_declare_char_class:nn { nc } \cs_new_protected_nopar:Npn \__xeCJK_check_num_range:nnNN #1#2#3#4 { - \bool_if:nTF { \xeCJK_if_blank_x_p:n {#1} || \xeCJK_if_blank_x_p:n {#2} } + \bool_lazy_or:nnTF + { \xeCJK_if_blank_x_p:n {#1} } + { \xeCJK_if_blank_x_p:n {#2} } { \int_set:Nn #3 { \xeCJK_if_blank_x:nTF {#1} {#2} {#1} } \int_set_eq:NN #3 #4 @@ -755,11 +760,9 @@ } \cs_new_protected_nopar:Npn \__xeCJK_check_for_ecglue: { - \bool_if:nTF - { - \xeCJK_if_last_node_p:n { CJK } || - \xeCJK_if_last_node_p:n { CJK-widow } - } + \bool_lazy_or:nnTF + { \xeCJK_if_last_node_p:n { CJK } } + { \xeCJK_if_last_node_p:n { CJK-widow } } { \xeCJK_remove_node: \CJKecglue } { \xeCJK_if_last_node:nT { CJK-space } @@ -842,18 +845,17 @@ } \cs_new_protected_nopar:Npn \xeCJK_check_for_glue: { - \bool_if:nTF - { \xeCJK_if_last_node_p:n { CJK } || \xeCJK_if_last_node_p:n { CJK-space } } + \bool_lazy_or:nnTF + { \xeCJK_if_last_node_p:n { CJK } } + { \xeCJK_if_last_node_p:n { CJK-space } } { \xeCJK_remove_node: \CJKglue } { \xeCJK_if_last_node:nTF { CJK-widow } { \xeCJK_remove_node: \xeCJK_widow_penalty: \CJKglue } { - \bool_if:nTF - { - \xeCJK_if_last_node_p:n { default } || - \int_compare_p:nNn \etex_lastnodetype:D = \c_ten - } + \bool_lazy_or:nnTF + { \xeCJK_if_last_node_p:n { default } } + { \int_compare_p:nNn \etex_lastnodetype:D = \c_ten } { \xeCJK_remove_node: \CJKecglue } { \xeCJK_check_for_xglue: } } @@ -1240,32 +1242,26 @@ { \c_one } { \box_set_to_last:N \l__xeCJK_tmp_box - \bool_if:nTF - { - \int_compare_p:nNn \etex_lastnodetype:D = \c_minus_one && - \dim_compare_p:nNn { \box_wd:N \l__xeCJK_tmp_box } = \tex_parindent:D - } + \bool_lazy_and:nnTF + { \int_compare_p:nNn \etex_lastnodetype:D = { -1 } } + { \dim_compare_p:nNn { \box_wd:N \l__xeCJK_tmp_box } = \tex_parindent:D } { \box_use_clear:N \l__xeCJK_tmp_box \use_none:n } { \box_use_clear:N \l__xeCJK_tmp_box \use:n } } - { \c_minus_one } { \__xeCJK_zero_glue: \use_none:n } + { -1 } { \__xeCJK_zero_glue: \use_none:n } { \c_eleven } { - \bool_if:nTF - { - ! ( \skip_if_finite_p:n { \tex_lastskip:D } ) || - \skip_if_eq_p:nn { \tex_lastskip:D } { 1 sp } - } + \bool_lazy_or:nnTF + { ! ( \skip_if_finite_p:n { \tex_lastskip:D } ) } + { \skip_if_eq_p:nn { \tex_lastskip:D } { 1 sp } } { \__xeCJK_zero_glue: \use_none:n } { \skip_if_eq:nnTF { \tex_lastskip:D } { \labelsep } { \tex_unskip:D - \bool_if:nTF - { - \int_compare_p:nNn \etex_lastnodetype:D = \c_thirteen && - \int_compare_p:nNn \tex_lastpenalty:D = \c_zero - } + \bool_lazy_and:nnTF + { \int_compare_p:nNn \etex_lastnodetype:D = \c_thirteen } + { \int_compare_p:nNn \tex_lastpenalty:D = \c_zero } { \skip_horizontal:n { \labelsep } \use_none:n } { \skip_horizontal:n { \labelsep } \use:n } } @@ -3119,7 +3115,9 @@ } { \__xeCJK_warning:nx { SubBlock-undefined } {##1} } } - \bool_if:nT { #1 && \seq_if_empty_p:N \l__xeCJK_sub_key_seq } + \bool_lazy_and:nnT + {#1} + { \seq_if_empty_p:N \l__xeCJK_sub_key_seq } { \seq_map_function:NN \g__xeCJK_sub_key_seq \__xeCJK_add_sub_class_features:n @@ -3127,8 +3125,9 @@ \prop_get:NVNT \g__xeCJK_family_font_options_prop \l_xeCJK_family_tl \l__xeCJK_font_options_clist { - \bool_if:nT - { \seq_if_empty_p:N \l__xeCJK_sub_key_seq || #1 } + \bool_lazy_or:nnT + { \seq_if_empty_p:N \l__xeCJK_sub_key_seq } + {#1} { \clist_concat:NNN \l__xeCJK_font_options_clist \l__xeCJK_font_options_clist \l__xeCJK_add_font_features_clist @@ -3900,7 +3899,9 @@ } \__xeCJK_after_end_preamble:n { - \bool_if:nT { \g__xeCJK_math_bool && \cs_if_exist_p:N \Url@MathSetup } + \bool_lazy_and:nnT + { \g__xeCJK_math_bool } + { \cs_if_exist_p:N \Url@MathSetup } { \tl_put_right:Nn \Url@MathSetup { \xeCJK@update@fam } } } \@ifpackagelater { fontspec } { 2014/06/21 } { } @@ -3910,11 +3911,9 @@ \exp_not:o { \fontspec_setup_maths: - \bool_if:nT - { - \tl_if_empty_p:N \g__fontspec_bfmathrm_tl || - \tl_if_empty_p:N \g_fontspec_bfmathrm_tl - } + \bool_lazy_or:nnT + { \tl_if_empty_p:N \g__fontspec_bfmathrm_tl } + { \tl_if_empty_p:N \g_fontspec_bfmathrm_tl } { \DeclareSymbolFontAlphabet \mathrm { operators } } } } @@ -4218,8 +4217,9 @@ } \__xeCJK_after_end_preamble:n { - \bool_if:nT - { \xeCJK_if_package_loaded_p:n { cprotect } && \cs_if_exist_p:N \icprotect } + \bool_lazy_and:nnT + { \xeCJK_if_package_loaded_p:n { cprotect } } + { \cs_if_exist_p:N \icprotect } { \exp_after:wN \tex_let:D \cs:w cprotect \cs_end: \icprotect } } \cs_if_eq:NNTF \ifCTEX@fntef \tex_iftrue:D diff --git a/Master/texmf-dist/tex/xelatex/xecjk/xeCJKfntef.sty b/Master/texmf-dist/tex/xelatex/xecjk/xeCJKfntef.sty index 16d6642f86d..2c4834cbf38 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 18af4a5 2017-05-15 20:12:35 +0800 Qing Lee $ +\GetIdInfo$Id: xeCJK.dtx 8b5e450 2017-08-07 17:02:18 +0800 Qing Lee $ {xeCJK font effect} \ProvidesExplPackage{xeCJKfntef} - {\ExplFileDate}{3.4.8}{\ExplFileDescription} + {\ExplFileDate}{3.5.0}{\ExplFileDescription} \PassOptionsToPackage { normalem } { ulem } \DeclareOption* { \PassOptionsToPackage { \CurrentOption } { ulem } } \ProcessOptions \scan_stop: @@ -723,7 +723,7 @@ } \cs_new_protected:Npn \xeCJK_fntef_boot:nnNNNn #1#2#3#4#5#6 { - \bool_if:nT { #3 || #5 } + \bool_lazy_or:nnT {#3} {#5} { \bool_set_false:c { l__xeCJK_#2_skip_bool } } \IfBooleanT #4 { \bool_set_true:c { l__xeCJK_#2_subtract_bool } } @@ -736,7 +736,7 @@ } \cs_new_protected:Npn \xeCJK_ulem_boot:NNNn #1#2#3#4 { - \bool_if:nT { #1 || #3 } + \bool_lazy_or:nnT {#1} {#3} { \bool_set_false:N \l__xeCJK_ulem_skip_bool } \IfBooleanT #2 { \bool_set_true:N \l__xeCJK_ulem_subtract_bool } diff --git a/Master/texmf-dist/tex/xelatex/xecjk/xunicode-addon.sty b/Master/texmf-dist/tex/xelatex/xecjk/xunicode-addon.sty index 8e82ebe46bd..78221c88d01 100644 --- a/Master/texmf-dist/tex/xelatex/xecjk/xunicode-addon.sty +++ b/Master/texmf-dist/tex/xelatex/xecjk/xunicode-addon.sty @@ -29,15 +29,13 @@ %% \NeedsTeXFormat{LaTeX2e} \RequirePackage{expl3} -\GetIdInfo$Id: xeCJK.dtx 18af4a5 2017-05-15 20:12:35 +0800 Qing Lee $ +\GetIdInfo$Id: xeCJK.dtx 8b5e450 2017-08-07 17:02:18 +0800 Qing Lee $ {addon file for xunicode} \ProvidesExplPackage{xunicode-addon} - {\ExplFileDate}{3.4.8}{\ExplFileDescription} -\bool_if:nF - { - \sys_if_engine_xetex_p: || - \sys_if_engine_luatex_p: - } + {\ExplFileDate}{3.5.0}{\ExplFileDescription} +\bool_lazy_or:nnF + { \sys_if_engine_xetex_p: } + { \sys_if_engine_luatex_p: } { \msg_new:nnnn { xunicode-addon } { xetex-luatex } { This~package~requires~either~XeTeX~or~LuaTeX~to~function.} @@ -244,11 +242,9 @@ } \cs_new_protected:Npn \__xunadd_provide_text_command_default:N #1 { - \bool_if:nF - { - \cs_if_exist_p:c { ? \token_to_str:N #1 } || - \cs_if_free_p:c { ? - \token_to_str:N #1 } - } + \bool_lazy_or:nnF + { \cs_if_exist_p:c { ? \token_to_str:N #1 } } + { \cs_if_free_p:c { ? - \token_to_str:N #1 } } { \exp_args:NNv \ProvideTextCommandDefault #1 { ? - \token_to_str:N #1 } } } \cs_new_protected:Npn \__xunadd_declare_character:NNnn #1#2#3#4 @@ -412,11 +408,9 @@ \tl_if_blank:nTF {#1} { \cs_if_exist_use:cTF { ? #2 } { {#1} } {#1} } { - \bool_if:nTF - { - \__xunadd_glyph_if_exist_p:n { `#3 } && - \__xunadd_glyph_if_exist_p:n { `#4 } - } + \bool_lazy_and:nnTF + { \__xunadd_glyph_if_exist_p:n { `#3 } } + { \__xunadd_glyph_if_exist_p:n { `#4 } } { #1#3#4 } { \cs_if_exist_use:cTF { ? #2 } { {#1} } { #1#3#4 } } } @@ -513,11 +507,11 @@ } \cs_new_protected:Npn \__xunadd_add_double_symbol_aux:NnN #1#2#3 { - \bool_if:nTF + \bool_lazy_any:nTF { - \token_if_letter_p:N #1 || - \token_if_other_p:N #1 || - \token_if_chardef_p:N #1 + { \token_if_letter_p:N #1 } + { \token_if_other_p:N #1 } + { \token_if_chardef_p:N #1 } } { #1#3#2 } { #1#2#3 } diff --git a/Master/texmf-dist/tex/xelatex/xecjk/xunicode-extra.def b/Master/texmf-dist/tex/xelatex/xecjk/xunicode-extra.def index 8fa6a558016..7b96d42684e 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 18af4a5 2017-05-15 20:12:35 +0800 Qing Lee $ +\GetIdInfo$Id: xeCJK.dtx 8b5e450 2017-08-07 17:02:18 +0800 Qing Lee $ {extra definition for xunicode} \ProvidesExplFile{xunicode-extra.def} - {\ExplFileDate}{3.4.8}{\ExplFileDescription} + {\ExplFileDate}{3.5.0}{\ExplFileDescription} \DeclareUTFComposite\textsuperscript \DeclareUTFComposite\textsubscript \DeclareUTFEncodedAccent\textsbleftarrow{"20EE}{"20FF} -- cgit v1.2.3