diff options
author | Karl Berry <karl@freefriends.org> | 2020-02-10 22:12:31 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2020-02-10 22:12:31 +0000 |
commit | 3851cb5112493bb4778c751f24b877d07cc568bf (patch) | |
tree | 26db8a0f5170aa7ebf9bacad7d93a2cb60fda305 /Master/texmf-dist/tex/xelatex/xecjk | |
parent | b814ea176d325bbd2efe7b03cadec07545aa2c77 (diff) |
xecjk (10feb20)
git-svn-id: svn://tug.org/texlive/trunk@53750 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/xelatex/xecjk')
6 files changed, 163 insertions, 215 deletions
diff --git a/Master/texmf-dist/tex/xelatex/xecjk/xeCJK-listings.sty b/Master/texmf-dist/tex/xelatex/xecjk/xeCJK-listings.sty index e2d6fe01a84..513f4ba5f2c 100644 --- a/Master/texmf-dist/tex/xelatex/xecjk/xeCJK-listings.sty +++ b/Master/texmf-dist/tex/xelatex/xecjk/xeCJK-listings.sty @@ -7,8 +7,8 @@ %% xeCJK.dtx (with options: `listings') %% %% Copyright (C) 2007--2010 by Wenchang Sun <sunwch@nankai.edu.cn> -%% Copyright (C) 2009--2019 by Leo Liu <leoliu.pku@gmail.com> -%% Copyright (C) 2012--2019 by Qing Lee <sobenlee@gmail.com> +%% Copyright (C) 2009--2020 by Leo Liu <leoliu.pku@gmail.com> +%% Copyright (C) 2012--2020 by Qing Lee <sobenlee@gmail.com> %% ---------------------------------------------------------------------- %% %% This work may be distributed and/or modified under the @@ -29,10 +29,10 @@ %% \NeedsTeXFormat{LaTeX2e} \RequirePackage{expl3} -\GetIdInfo$Id: xeCJK.dtx 4449ab5 2019-06-02 23:02:31 +0800 Qing Lee <sobenlee@gmail.com> $ +\GetIdInfo$Id: xeCJK.dtx 06a6ce4 2020-02-10 22:37:50 +0800 Qing Lee <sobenlee@gmail.com> $ {xeCJK patch file for listings} \ProvidesExplPackage{xeCJK-listings} - {\ExplFileDate}{3.7.4}{\ExplFileDescription} + {\ExplFileDate}{3.8.0}{\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 15dc1420b3b..bda6f56714f 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 4449ab5 2019-06-02 23:02:31 +0800 Qing Lee <sobenlee@gmail.com> $ +\GetIdInfo$Id: xeCJK.dtx 06a6ce4 2020-02-10 22:37:50 +0800 Qing Lee <sobenlee@gmail.com> $ {Configuration file for xeCJK package} \ProvidesExplFile{\ExplFileName.cfg} - {\ExplFileDate}{3.7.4}{\ExplFileDescription} + {\ExplFileDate}{3.8.0}{\ExplFileDescription} %% %% diff --git a/Master/texmf-dist/tex/xelatex/xecjk/xeCJK.sty b/Master/texmf-dist/tex/xelatex/xecjk/xeCJK.sty index 3a38fdb023a..c376cac7fd6 100644 --- a/Master/texmf-dist/tex/xelatex/xecjk/xeCJK.sty +++ b/Master/texmf-dist/tex/xelatex/xecjk/xeCJK.sty @@ -7,8 +7,8 @@ %% xeCJK.dtx (with options: `package') %% %% Copyright (C) 2007--2010 by Wenchang Sun <sunwch@nankai.edu.cn> -%% Copyright (C) 2009--2019 by Leo Liu <leoliu.pku@gmail.com> -%% Copyright (C) 2012--2019 by Qing Lee <sobenlee@gmail.com> +%% Copyright (C) 2009--2020 by Leo Liu <leoliu.pku@gmail.com> +%% Copyright (C) 2012--2020 by Qing Lee <sobenlee@gmail.com> %% ---------------------------------------------------------------------- %% %% This work may be distributed and/or modified under the @@ -29,10 +29,10 @@ %% \NeedsTeXFormat{LaTeX2e} \RequirePackage{expl3} -\GetIdInfo$Id: xeCJK.dtx 4449ab5 2019-06-02 23:02:31 +0800 Qing Lee <sobenlee@gmail.com> $ +\GetIdInfo$Id: xeCJK.dtx 06a6ce4 2020-02-10 22:37:50 +0800 Qing Lee <sobenlee@gmail.com> $ {Typesetting CJK scripts with XeLaTeX} \ProvidesExplPackage{\ExplFileName} - {\ExplFileDate}{3.7.4}{\ExplFileDescription} + {\ExplFileDate}{3.8.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 } { 2019/03/05 } { } +\@ifpackagelater { expl3 } { 2020/02/08 } { } { \msg_critical:nnn { xeCJK } { l3-too-old } { expl3 } } \prg_new_conditional:Npnn \xeCJK_if_package_loaded:n #1 { p , T , F , TF } { @@ -67,21 +67,19 @@ The~`#1'~package~and~xeCJK~are~incompatible.\\\\ Please~load~it~after~xeCJK. } -\clist_map_inline:nn { CJKfntef , CJKnumb } +\clist_map_inline:nn { CJKnumb } { \xeCJK_if_package_loaded:nT {#1} { \msg_error:nnn { xeCJK } { after-package } {#1} } } -\clist_map_inline:nn { CJKulem , CJKvert , CJKpunct , CJKutf8 , CJK } +\clist_map_inline:nn + { CJKfntef , CJKulem , CJKvert , CJKpunct , CJKutf8 , CJK } { \xeCJK_if_package_loaded:nTF {#1} { \msg_error:nnn { xeCJK } { incompatible-package } {#1} } { \tl_const:cn { ver@ #1 . \c__xeCJK_package_ext_tl } { 9999/99/99 } } } -\RequirePackage { xtemplate } -\@ifpackagelater { xtemplate } { 2012/11/10 } { } - { \msg_error:nnn { xeCJK } { l3-too-old } { xtemplate } } -\RequirePackage { xparse , l3keys2e } +\RequirePackage { l3keys2e , xtemplate , xparse } \tl_new:N \l__xeCJK_tmp_tl \int_new:N \l__xeCJK_tmp_int \box_new:N \l__xeCJK_tmp_box @@ -182,11 +180,9 @@ \cs_set_eq:NN #2 \__xeCJK_swap_cs_aux:w \cs_undefine:N \__xeCJK_swap_cs_aux:w } -\cs_new_protected_nopar:Npn \xeCJK_font_gset_to_current:c #1 - { - \exp_last_unbraced:Nco \cs_gset_eq:NN - {#1} \tex_the:D \tex_font:D - } +\cs_new_protected_nopar:Npn \xeCJK_font_gset_to_current:N #1 + { \exp_after:wN \cs_gset_eq:NN \exp_after:wN #1 \tex_the:D \tex_font:D } +\cs_generate_variant:Nn \xeCJK_font_gset_to_current:N { c } \prg_new_conditional:Npnn \xeCJK_glyph_if_exist:N #1 { p , T , F , TF } { \tex_iffontchar:D \tex_font:D `#1 \exp_stop_f: @@ -292,8 +288,10 @@ \cs_new_protected:Npn \xeCJK_peek_catcode_ignore_spaces:NTF #1#2#3 { \cs_set_eq:NN \l__xeCJK_peek_search_token #1 \scan_stop: - \tl_set:Nn \__xeCJK_peek_catcode_true:w { \group_align_safe_end: #2 } - \tl_set:Nn \__xeCJK_peek_catcode_false:w { \group_align_safe_end: #3 } + \cs_set_protected:Npx \__xeCJK_peek_catcode_true:w + { \exp_not:N \group_align_safe_end: \exp_not:n {#2} } + \cs_set_protected:Npx \__xeCJK_peek_catcode_false:w + { \exp_not:N \group_align_safe_end: \exp_not:n {#3} } \bool_set_false:N \l__xeCJK_peek_ignore_spaces_bool \group_align_safe_begin: \peek_after:Nw \__xeCJK_peek_catcode_ignore_spaces_branches:w @@ -317,25 +315,9 @@ \fi: } \cs_new_eq:NN \l__xeCJK_peek_search_token ? -\tl_new:N \__xeCJK_peek_catcode_true:w -\tl_new:N \__xeCJK_peek_catcode_false:w +\cs_new_eq:NN \__xeCJK_peek_catcode_true:w \prg_do_nothing: +\cs_new_eq:NN \__xeCJK_peek_catcode_false:w \prg_do_nothing: \bool_new:N \l__xeCJK_peek_ignore_spaces_bool -\cs_new_protected:Npn \xeCJK_peek_after_ignore_spaces:nw #1 - { - \tl_set:Nn \__xeCJK_peek_after_do:w { \group_align_safe_end: #1 } - \group_align_safe_begin: - \peek_after:Nw \__xeCJK_peek_ignore_spaces_branches:w - } -\cs_new_protected_nopar:Npn \__xeCJK_peek_ignore_spaces_branches:w - { - \if_meaning:w \l_peek_token \c_space_token - \exp_after:wN \peek_after:Nw - \exp_after:wN \__xeCJK_peek_ignore_spaces_branches:w - \tex_romannumeral:D 0 - \else: - \exp_after:wN \__xeCJK_peek_after_do:w - \fi: - } \cs_new_nopar:Npn \xeCJK_token_value_class:N #1 { \tex_XeTeXcharclass:D \xeCJK_token_value_charcode:N #1 } \cs_new_nopar:Npn \xeCJK_token_value_charcode:N #1 @@ -1779,10 +1761,7 @@ } \prg_generate_conditional_variant:Nnn \tl_case:Nn { No } { TF , F } \cs_new_protected_nopar:Npn \xeCJK_check_FullRight_symbol:Nw #1 - { - \xeCJK_peek_after_ignore_spaces:nw - { \__xeCJK_save_FullRight_symbol:N #1 } - } + { \peek_remove_spaces:n { \__xeCJK_save_FullRight_symbol:N #1 } } \cs_new_protected:Npn \xeCJK_cs_case_keys_define:nNNnn #1#2#3#4#5 { \tl_new:N #2 @@ -2646,7 +2625,7 @@ \dim_compare:nNnTF { \use:c { l__xeCJK_#1_punct_width_dim } } < \c_max_dim { \use:c { l__xeCJK_#1_punct_width_dim } } { - \fp_compare:nNnTF { \use:c { l__xeCJK_#1_punct_ratio_fp } } ? \c_zero_fp + \fp_if_nan:nTF { \use:c { l__xeCJK_#1_punct_ratio_fp } } { \c_max_dim } { \fp_use:c { l__xeCJK_#1_punct_ratio_fp } @@ -2757,7 +2736,7 @@ \dim_compare:nNnTF \l__xeCJK_kerning_total_width_dim < \c_max_dim { \__xeCJK_calc_kerning_margin:nNN \l__xeCJK_kerning_total_width_dim } { - \fp_compare:nNnTF \l__xeCJK_kerning_total_ratio_fp ? \c_zero_fp + \fp_if_nan:nTF { \l__xeCJK_kerning_total_ratio_fp } { \xeCJK_if_same_class:NNTF #1 #2 { \__xeCJK_kerning_width_or_ratio:nNN { same } } @@ -2781,7 +2760,7 @@ \dim_compare:nNnTF { \use:c { l__xeCJK_#1_align_margin_dim } } < \c_max_dim { \use:c { l__xeCJK_#1_align_margin_dim } } { - \fp_compare:nNnTF { \use:c { l__xeCJK_#1_align_ratio_fp } } ? \c_zero_fp + \fp_if_nan:nTF { \use:c { l__xeCJK_#1_align_ratio_fp } } { \dim_compare:nNnTF \l__xeCJK_kerning_margin_width_dim < \c_max_dim { \l__xeCJK_kerning_margin_width_dim \use_none:n } @@ -3314,22 +3293,27 @@ { \__xeCJK_font_csname:n { \CJK@family } } \cs_new_protected_nopar:Npn \xeCJK_select_font: { - \exp_args:Nc \cs_if_exist_use:NF { \l_xeCJK_current_font_tl } + \__xeCJK_select_font:cn + { \l_xeCJK_current_font_tl } + { \l_xeCJK_family_tl } + } +\cs_new_protected_nopar:Npn \__xeCJK_select_font:Nn #1#2 + { + \cs_if_exist_use:NF #1 { - \__xeCJK_family_use:n { \l_xeCJK_family_tl } - \xeCJK_font_gset_to_current:c { \l_xeCJK_current_font_tl } + \__xeCJK_family_use:n {#2} + \xeCJK_font_gset_to_current:N #1 } } +\cs_generate_variant:Nn \__xeCJK_select_font:Nn { c } \tl_new:N \l__xeCJK_current_coor_tl \cs_new_eq:NN \xeCJK@setfont \xeCJK_select_font: \cs_new_eq:NN \xeCJK_select_punct_font: \xeCJK_select_font: \cs_new_protected_nopar:Npn \__xeCJK_select_punct_font_aux: { - \exp_args:Nc \cs_if_exist_use:NF { \l_xeCJK_current_punct_font_tl } - { - \__xeCJK_family_use:n { \l_xeCJK_punct_family_tl } - \xeCJK_font_gset_to_current:c { \l_xeCJK_current_punct_font_tl } - } + \__xeCJK_select_font:cn + { \l_xeCJK_current_punct_font_tl } + { \l_xeCJK_punct_family_tl } } \tl_new:N \CJK@punctfamily \tl_new:N \l_xeCJK_punct_family_tl @@ -3351,15 +3335,21 @@ \__xeCJK_msg_new:nn { CJK-block } { Switch~from~block~`#1'~to~`#2'. } \cs_new_protected_nopar:Npn \xeCJK_select_font:n #1 { - \exp_args:Nc \cs_if_exist_use:NF + \__xeCJK_select_font:cnn { \__xeCJK_font_csname:n { \CJK@family/#1 } } + { \l_xeCJK_family_tl } + {#1} + } +\cs_new_protected_nopar:Npn \__xeCJK_select_font:Nnn #1#2#3 + { + \cs_if_exist_use:NF #1 { - \xeCJK_block_family:nn { \l_xeCJK_family_tl } {#1} - \__xeCJK_family_use:n { \l_xeCJK_family_tl/#1 } - \xeCJK_font_gset_to_current:c - { \__xeCJK_font_csname:n { \CJK@family/#1 } } + \xeCJK_block_family:nn {#2} {#3} + \__xeCJK_family_use:n { #2/#3 } + \xeCJK_font_gset_to_current:N #1 } } +\cs_generate_variant:Nn \__xeCJK_select_font:Nnn { c } \cs_new_protected_nopar:Npn \xeCJK_block_family:nn #1#2 { \xeCJK_family_if_exist:xF { #1/#2 } @@ -3385,11 +3375,36 @@ { \__xeCJK_family_nfss_csname:n {#1} } { \exp_not:N \fontencoding { \c__xeCJK_encoding_tl } - \tl_set:Nn \exp_not:N \f@family {#2} + \__xeCJK_nfss_family:n {#2} \exp_not:N \selectfont } } \cs_generate_variant:Nn \__xeCJK_gset_family_nfss_cs:nn { xx } +\cs_if_exist:NTF \fontseriesforce + { + \cs_new_protected_nopar:Npn \__xeCJK_nfss_family:n #1 + { + \str_if_eq:eeF { \f@series } { \bfdefault } + { + \str_case_e:nn { \f@family } + { + { \rmdefault } { \__xeCJK_nfss_series:n { rm } } + { \sfdefault } { \__xeCJK_nfss_series:n { sf } } + { \ttdefault } { \__xeCJK_nfss_series:n { tt } } + } + } + \fontfamily {#1} + } + \cs_new_protected_nopar:Npn \__xeCJK_nfss_series:n #1 + { + \str_if_eq:eeT { \f@series } { \use:c { bfseries@#1 } } + { \fontseriesforce { \bfdefault } } + } + } + { + \cs_new_protected_nopar:Npn \__xeCJK_nfss_family:n #1 + { \tl_set:Nn \f@family {#1} } + } \prg_new_protected_conditional:Npnn \xeCJK_family_if_exist:n #1 { T , F , TF } { \prop_get:NnNTF \g__xeCJK_family_name_prop @@ -3471,7 +3486,7 @@ \tl_new:N \CJK@family \cs_new_protected_nopar:Npn \__xeCJK_gobble_CJKfamily: { \cs_set_eq:NN \CJKfamily \__xeCJK_gobble_CJKfamily:wn } -\DeclareExpandableDocumentCommand \__xeCJK_gobble_CJKfamily:wn { t+ t- m } { } +\NewExpandableDocumentCommand \__xeCJK_gobble_CJKfamily:wn { t+ t- m } { } \cs_new_protected_nopar:Npn \xeCJK_family_if_exist_use:n #1 { \xeCJK_family_if_exist:nTF {#1} @@ -4159,41 +4174,51 @@ } \fp_new:N \l__xeCJK_scale_factor_fp \prop_new:N \g__xeCJK_scale_family_prop -\cs_new_protected_nopar:Npn \xeCJK_visible_space: +\cs_new_protected_nopar:Npn \xeCJK_setup_visible_space: { \xeCJK_make_boundary: \xeCJK_glyph_if_exist:NTF { ^^^^2423 } - { ^^^^2423 } + { \tl_set:Nn \l__xeCJK_visible_space_tl { ^^^^2423 } } { \int_compare:nNnTF { \tex_XeTeXfonttype:D \tex_font:D } = \c_zero_int { - \str_if_eq:eeTF { \f@family } { \ttdefault } - { \c_catcode_other_space_tl } - { \textvisiblespace } + \tl_set:Nx \l__xeCJK_visible_space_tl + { + \str_if_eq:eeTF { \f@family } { \ttdefault } + { \c_catcode_other_space_tl } + { \exp_not:N \textvisiblespace } + } } - { \xeCJK_visible_space_fallback: } + { \__xeCJK_visible_space_fallback: } } + \cs_set_eq:NN \@xobeysp \l__xeCJK_visible_space_tl } -\AtEndOfPackage - { \cs_gset_eq:NN \fontspec_visible_space: \xeCJK_visible_space: } -\cs_new_protected_nopar:Npn \xeCJK_visible_space_fallback: - { { - \cs_if_exist_use:cF { xeCJK/space/\curr@fontshape/\f@size } - { \xeCJK_set_visible_space_font: } - ^^^^2423 - } } -\cs_new_protected_nopar:Npn \xeCJK_set_visible_space_font: - { - \tl_set:Nx \l__xeCJK_current_coor_tl +\tl_new:N \l__xeCJK_visible_space_tl +\cs_set_eq:NN \@setupverbvisiblespace \xeCJK_setup_visible_space: +\cs_new_protected_nopar:Npn \__xeCJK_visible_space_fallback: + { + \exp_args:Nc \__xeCJK_visible_space_fallback_auxi:N { xeCJK/space/\curr@fontshape/\f@size } - \exp_args:No \__xeCJK_set_visible_space_size:n - { \dim_use:N \tex_fontdimen:D 2 ~ \tex_font:D } - \xeCJK_font_gset_to_current:c { \l__xeCJK_current_coor_tl } + } +\cs_new_protected_nopar:Npn \__xeCJK_visible_space_fallback_auxi:N #1 + { + \cs_if_exist:NF #1 + { \__xeCJK_visible_space_fallback_auxii:N #1 } + \tl_set:Nn \l__xeCJK_visible_space_tl {#1} + } +\cs_new_protected_nopar:Npn \__xeCJK_visible_space_fallback_auxii:N #1 + { + \group_begin: + \exp_args:No \__xeCJK_set_visible_space_size:n + { \dim_use:N \tex_fontdimen:D 2 ~ \tex_font:D } + \cs_new_protected_nopar:Npx #1 + { \group_begin: \tex_the:D \tex_font:D ^^^^2423 \group_end: } + \group_end: } \cs_new_protected_nopar:Npn \__xeCJK_set_visible_space_size:n #1 { - \fontencoding { \g_fontspec_encoding_tl } - \tl_set:Nx \f@family { lmtt } + \fontencoding { \UnicodeEncodingName } + \tl_set:Nn \f@family { lmtt } \selectfont \dim_compare:nNnF {#1} = { \tex_fontdimen:D 2 ~ \tex_font:D } { @@ -4303,7 +4328,7 @@ \defaultCJKfontfeatures { Script = CJK } \xeCJKsetwidth { ^^^^2013 } { 0.5 em } \ProcessKeysOptions { xeCJK / options } -\RequirePackage { fontspec } [ 2019/03/15 ] +\RequirePackage { fontspec } [ 2020/02/03 ] \tl_const:Nx \c__xeCJK_encoding_tl { \g_fontspec_encoding_tl } \keys_define:nn { xeCJK / options } { @@ -4312,7 +4337,7 @@ } \__xeCJK_msg_new:nn { option-invalid } { - The~`#1'~option~only~can~be~set~in~the~optional~argument~to~the\\ + The~`#1'~option~can~only~be~set~in~the~optional~argument~to~the\\ \token_to_str:N \usepackage \ command~when~xeCJK~is~being~loaded.\\\\ Please~do~not~set~it~via~the~\token_to_str:N \xeCJKsetup \ command. } @@ -4359,33 +4384,6 @@ \xeCJK_set_char_class:nnn {#1} {#2} {#3} \xeCJKResetPunctClass } -\cs_new_protected_nopar:Npn \xeCJK_fix_hbar: - { - \cs_if_free:NF \symlegacymaths - { - \group_begin: - \cs_set_nopar:Npn \__xeCJK_tmp:w - { { \mathchar '26 \mkern -9mu h } } - \exp_after:wN \group_end: - \if_meaning:w \__xeCJK_tmp:w \hbar - \cs_set_protected_nopar:Npx \hbar - { { - \mathchar - \int_eval:n { \symlegacymaths * 256 + '26 } ~ - \mkern -9mu h - } } - \fi: - } - } -\cs_if_exist:NTF \fontspec_maybe_setup_maths: - { - \cs_gset_protected_nopar:Npx \fontspec_maybe_setup_maths: - { - \exp_not:o { \fontspec_maybe_setup_maths: } - \xeCJK_fix_hbar: - } - } - { \AtBeginDocument { \xeCJK_fix_hbar: } } \cs_new_protected_nopar:Npn \xeCJK@update@fam { \addto@hook \everymath @@ -4425,20 +4423,6 @@ { \cs_if_exist_p:N \Url@MathSetup } { \tl_put_right:Nn \Url@MathSetup { \xeCJK@update@fam } } } -\@ifpackagelater { fontspec } { 2014/06/21 } { } - { - \cs_gset_protected_nopar:Npx \fontspec_setup_maths: - { - \exp_not:o - { - \fontspec_setup_maths: - \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 } } - } - } - } \cs_new_protected_nopar:Npn \__xeCJK_math_robust:N #1 { \group_begin: \exp_args:NcNc \group_end: @@ -4505,59 +4489,41 @@ \__xeCJK_math_robust:N \endmath } \__xeCJK_math_robust:N \ensuremath -\__xeCJK_msg_new:nn { conflict-package } +\cs_if_exist:NTF \@rmfamilyhook { - The~`#1'~package~is~too~old. \\ - Please~update~an~up~to~date~version~of~it\\ - using~your~TeX~package~manager~or~from~CTAN. - } -\xeCJK_if_package_loaded:nTF { realscripts } - { - \@ifpackagelater { realscripts } { 2010/10/10 } { } + \cs_set_eq:NN \xeCJK@family \xeCJK_switch_family:x + \g@addto@macro \@rmfamilyhook { \xeCJK@family { \CJKrmdefault } } + \g@addto@macro \@sffamilyhook { \xeCJK@family { \CJKsfdefault } } + \g@addto@macro \@ttfamilyhook { \xeCJK@family { \CJKttdefault } } + \exp_args:Nx \g@addto@macro { - \__xeCJK_error:nx { conflict-package } - { - \xeCJK_if_package_loaded:nTF { xltxtra } - { xltxtra } { realscripts } - } + \cs_if_exist:NTF \@defaultfamilyhook + { \exp_not:N \@defaultfamilyhook } + { \exp_not:c { normalfont ~ } } } + { \xeCJK@family { \CJKfamilydefault } } } { - \cs_new_eq:NN \__xeCJK_dim_max:nn \dim_max:nn - \cs_new_eq:NN \__xeCJK_dim_min:nn \dim_min:nn - \__xeCJK_at_end_preamble:n + \RenewDocumentCommand \fontfamily { m } { - \xeCJK_if_package_loaded:nT { realscripts } - { - \@ifpackagelater { realscripts } { 2010/10/10 } { } - { - \cs_gset_eq:NN \dim_max:nn \__xeCJK_dim_max:nn - \cs_gset_eq:NN \dim_min:nn \__xeCJK_dim_min:nn - } - } - \cs_undefine:N \__xeCJK_dim_max:nn - \cs_undefine:N \__xeCJK_dim_min:nn + \tl_set:Nx \f@family {#1} + \xeCJK@fontfamily {#1} } - } -\RenewDocumentCommand \fontfamily { m } - { - \tl_set:Nx \f@family {#1} - \xeCJK@fontfamily {#1} - } -\cs_new_protected_nopar:Npn \xeCJK@fontfamily #1 - { - \str_if_eq:nnTF {#1} { \familydefault } - { \xeCJK_switch_family:x { \CJKfamilydefault } } - { \__xeCJK_update_family_aux: } - } -\cs_new_protected_nopar:Npn \__xeCJK_update_family_aux: - { - \str_case_e:nn { \f@family } + \cs_new_protected_nopar:Npn \xeCJK@fontfamily #1 { - { \rmdefault } { \xeCJK_switch_family:x { \CJKrmdefault } } - { \sfdefault } { \xeCJK_switch_family:x { \CJKsfdefault } } - { \ttdefault } { \xeCJK_switch_family:x { \CJKttdefault } } - { \familydefault } { \xeCJK_switch_family:x { \CJKfamilydefault } } + \str_if_eq:nnTF {#1} { \familydefault } + { \xeCJK_switch_family:x { \CJKfamilydefault } } + { \__xeCJK_update_family_aux: } + } + \cs_new_protected_nopar:Npn \__xeCJK_update_family_aux: + { + \str_case_e:nn { \f@family } + { + { \rmdefault } { \xeCJK_switch_family:x { \CJKrmdefault } } + { \sfdefault } { \xeCJK_switch_family:x { \CJKsfdefault } } + { \ttdefault } { \xeCJK_switch_family:x { \CJKttdefault } } + { \familydefault } { \xeCJK_switch_family:x { \CJKfamilydefault } } + } } } \cs_new_eq:NN \xeCJK@fix@penalty \fix@penalty @@ -4847,22 +4813,6 @@ { \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 - { \AtEndOfPackage { \RequirePackage { xeCJKfntef } } } - { - \__xeCJK_at_end_preamble:n - { - \xeCJK_if_package_loaded:nF { xeCJKfntef } - { - \xeCJK_if_package_loaded:nTF { CJKfntef } - { \RequirePackage { xeCJKfntef } } - { - \xeCJK_if_package_loaded:nT { ulem } - { \RequirePackage { xeCJKfntef } } - } - } - } - } \__xeCJK_at_end_preamble:n { \xeCJK_if_package_loaded:nT { listings } diff --git a/Master/texmf-dist/tex/xelatex/xecjk/xeCJKfntef.sty b/Master/texmf-dist/tex/xelatex/xecjk/xeCJKfntef.sty index 25747f0db34..452882e159f 100644 --- a/Master/texmf-dist/tex/xelatex/xecjk/xeCJKfntef.sty +++ b/Master/texmf-dist/tex/xelatex/xecjk/xeCJKfntef.sty @@ -7,8 +7,8 @@ %% xeCJK.dtx (with options: `fntef') %% %% Copyright (C) 2007--2010 by Wenchang Sun <sunwch@nankai.edu.cn> -%% Copyright (C) 2009--2019 by Leo Liu <leoliu.pku@gmail.com> -%% Copyright (C) 2012--2019 by Qing Lee <sobenlee@gmail.com> +%% Copyright (C) 2009--2020 by Leo Liu <leoliu.pku@gmail.com> +%% Copyright (C) 2012--2020 by Qing Lee <sobenlee@gmail.com> %% ---------------------------------------------------------------------- %% %% This work may be distributed and/or modified under the @@ -29,17 +29,15 @@ %% \NeedsTeXFormat{LaTeX2e} \RequirePackage{expl3} -\GetIdInfo$Id: xeCJK.dtx 4449ab5 2019-06-02 23:02:31 +0800 Qing Lee <sobenlee@gmail.com> $ +\GetIdInfo$Id: xeCJK.dtx 06a6ce4 2020-02-10 22:37:50 +0800 Qing Lee <sobenlee@gmail.com> $ {xeCJK font effect} \ProvidesExplPackage{xeCJKfntef} - {\ExplFileDate}{3.7.4}{\ExplFileDescription} + {\ExplFileDate}{3.8.0}{\ExplFileDescription} \PassOptionsToPackage { normalem } { ulem } \DeclareOption* { \PassOptionsToPackage { \CurrentOption } { ulem } } \ProcessOptions \scan_stop: \RequirePackage { xeCJK } \RequirePackage { ulem } -\file_if_exist:nT { CJKfntef.sty } - { \RequirePackage { CJKfntef } } \addto@hook \UL@hook { \xeCJK_hook_for_ulem: } \cs_new_protected_nopar:Npn \xeCJK_hook_for_ulem: { @@ -648,7 +646,7 @@ \xeCJK_ulem_boot:NNNn #1#2#3 {#4} \xeCJK_ulem_on:n } -\DeclareDocumentCommand \CJKunderline { s t- s o } +\NewDocumentCommand \CJKunderline { s t- s o } { \xeCJK_ulem_group_begin: \xeCJK_fntef_boot:nnNNNn { underline } { uline } #1#2#3 {#4} @@ -664,9 +662,9 @@ } \xeCJK_ulem_on:n } -\DeclareDocumentCommand \varCJKunderline { } +\NewDocumentCommand \varCJKunderline { } { \CJKunderline - } -\DeclareDocumentCommand \CJKunderwave { s t- s o } +\NewDocumentCommand \CJKunderwave { s t- s o } { \xeCJK_ulem_group_begin: \xeCJK_fntef_boot:nnNNNn { underwave } { uwave } #1#2#3 {#4} @@ -676,7 +674,7 @@ { \l__xeCJK_uwave_format_tl \l__xeCJK_uwave_symbol_tl } \xeCJK_ulem_on:n } -\DeclareDocumentCommand \CJKunderdblline { s t- s o } +\NewDocumentCommand \CJKunderdblline { s t- s o } { \xeCJK_ulem_group_begin: \xeCJK_fntef_boot:nnNNNn { underdblline } { udbline } #1#2#3 {#4} @@ -700,7 +698,7 @@ } \xeCJK_ulem_on:n } -\DeclareDocumentCommand \CJKsout { s t- s o } +\NewDocumentCommand \CJKsout { s t- s o } { \xeCJK_ulem_group_begin: \xeCJK_fntef_boot:nnNNNn { sout } { sout } #1#2#3 {#4} @@ -719,7 +717,7 @@ } \xeCJK_ulem_on:n } -\DeclareDocumentCommand \CJKxout { s t- s o } +\NewDocumentCommand \CJKxout { s t- s o } { \xeCJK_ulem_group_begin: \xeCJK_fntef_boot:nnNNNn { xout } { xout } #1#2#3 {#4} @@ -736,7 +734,7 @@ } \xeCJK_ulem_on:n } -\DeclareDocumentCommand \CJKunderanyline { s t- s o m m } +\NewDocumentCommand \CJKunderanyline { s t- s o m m } { \xeCJK_ulem_group_begin: \xeCJK_ulem_boot:NNNn #1#2#3 {#4} @@ -926,12 +924,12 @@ xout / format = \color { blue } } } -\DeclareDocumentCommand \CJKunderanysymbol { o m m m } +\NewDocumentCommand \CJKunderanysymbol { o m m m } { \xeCJK_under_symbol:nnnnnn { symbol } { symbol } {#1} {#2} {#3} {#4} \tex_ignorespaces:D } -\DeclareDocumentCommand \CJKunderdot { o m } +\NewDocumentCommand \CJKunderdot { o m } { \xeCJK_under_symbol:nnnnnn { underdot } { udot } {#1} @@ -1035,7 +1033,7 @@ \box_use:N \l__xeCJK_under_symbol_box \xeCJK_no_break: \__xeCJK_under_CJKsymbol:N } -\DeclareDocumentEnvironment { CJKfilltwosides } { O { c } m } +\NewDocumentEnvironment { CJKfilltwosides } { O { c } m } { \use:x { \exp_not:N \minipage [#1] { \dim_eval:n {#2} } } \cs_set_eq:NN \CJKglue \xeCJK_fntef_hfilll: @@ -1044,7 +1042,7 @@ \endminipage \ignorespacesafterend } -\DeclareDocumentEnvironment { CJKfilltwosides* } { O { c } m +b } +\NewDocumentEnvironment { CJKfilltwosides* } { O { c } m +b } { \mode_leave_vertical: \cs_set_eq:NN \CJKglue \xeCJK_fntef_hfilll: diff --git a/Master/texmf-dist/tex/xelatex/xecjk/xunicode-addon.sty b/Master/texmf-dist/tex/xelatex/xecjk/xunicode-addon.sty index 18c020c819b..fbbce52055d 100644 --- a/Master/texmf-dist/tex/xelatex/xecjk/xunicode-addon.sty +++ b/Master/texmf-dist/tex/xelatex/xecjk/xunicode-addon.sty @@ -7,8 +7,8 @@ %% xeCJK.dtx (with options: `xunicode') %% %% Copyright (C) 2007--2010 by Wenchang Sun <sunwch@nankai.edu.cn> -%% Copyright (C) 2009--2019 by Leo Liu <leoliu.pku@gmail.com> -%% Copyright (C) 2012--2019 by Qing Lee <sobenlee@gmail.com> +%% Copyright (C) 2009--2020 by Leo Liu <leoliu.pku@gmail.com> +%% Copyright (C) 2012--2020 by Qing Lee <sobenlee@gmail.com> %% ---------------------------------------------------------------------- %% %% This work may be distributed and/or modified under the @@ -29,10 +29,10 @@ %% \NeedsTeXFormat{LaTeX2e} \RequirePackage{expl3} -\GetIdInfo$Id: xeCJK.dtx 4449ab5 2019-06-02 23:02:31 +0800 Qing Lee <sobenlee@gmail.com> $ +\GetIdInfo$Id: xeCJK.dtx 06a6ce4 2020-02-10 22:37:50 +0800 Qing Lee <sobenlee@gmail.com> $ {addon file for xunicode} \ProvidesExplPackage{xunicode-addon} - {\ExplFileDate}{3.7.4}{\ExplFileDescription} + {\ExplFileDate}{3.8.0}{\ExplFileDescription} \bool_lazy_or:nnF { \sys_if_engine_xetex_p: } { \sys_if_engine_luatex_p: } diff --git a/Master/texmf-dist/tex/xelatex/xecjk/xunicode-extra.def b/Master/texmf-dist/tex/xelatex/xecjk/xunicode-extra.def index 796a9a9e5fb..4867ea7a4ef 100644 --- a/Master/texmf-dist/tex/xelatex/xecjk/xunicode-extra.def +++ b/Master/texmf-dist/tex/xelatex/xecjk/xunicode-extra.def @@ -7,8 +7,8 @@ %% xeCJK.dtx (with options: `xunextra') %% %% Copyright (C) 2007--2010 by Wenchang Sun <sunwch@nankai.edu.cn> -%% Copyright (C) 2009--2019 by Leo Liu <leoliu.pku@gmail.com> -%% Copyright (C) 2012--2019 by Qing Lee <sobenlee@gmail.com> +%% Copyright (C) 2009--2020 by Leo Liu <leoliu.pku@gmail.com> +%% Copyright (C) 2012--2020 by Qing Lee <sobenlee@gmail.com> %% ---------------------------------------------------------------------- %% %% This work may be distributed and/or modified under the @@ -27,10 +27,10 @@ %% %% ---------------------------------------------------------------------- %% -\GetIdInfo$Id: xeCJK.dtx 4449ab5 2019-06-02 23:02:31 +0800 Qing Lee <sobenlee@gmail.com> $ +\GetIdInfo$Id: xeCJK.dtx 06a6ce4 2020-02-10 22:37:50 +0800 Qing Lee <sobenlee@gmail.com> $ {extra definition for xunicode} \ProvidesExplFile{xunicode-extra.def} - {\ExplFileDate}{3.7.4}{\ExplFileDescription} + {\ExplFileDate}{3.8.0}{\ExplFileDescription} \DeclareUTFSymbol\texthyphenationpoint{"2027} \DeclareUTFSymbol\texttwoemdash{"2E3A} \DeclareUTFComposite\textsuperscript |