diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/l3kernel/expl3.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/l3kernel/expl3.sty | 81 |
1 files changed, 58 insertions, 23 deletions
diff --git a/Master/texmf-dist/tex/latex/l3kernel/expl3.sty b/Master/texmf-dist/tex/latex/l3kernel/expl3.sty index 4ded77abe6b..17df13adb3f 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/expl3.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/expl3.sty @@ -19,28 +19,36 @@ %% and all files in that bundle must be distributed together. %% %% File: expl3.dtx -\def\ExplFileDate{2020-06-03}% +\def\ExplFileDate{2020-06-18}% \let\ExplLoaderFileDate\ExplFileDate \ProvidesPackage{expl3} [% \ExplFileDate\space L3 programming layer (loader) ]% -\protected\def\ProvidesExplPackage#1#2#3#4% +\protected\def\ProvidesExplPackage + {\@expl@provides@file@@Nnnnnn\ProvidesPackage{Package}} +\protected\def\ProvidesExplClass + {\@expl@provides@file@@Nnnnnn\ProvidesClass{Document Class}} +\protected\def\ProvidesExplFile + {\@expl@provides@file@@Nnnnnn\ProvidesFile{File}} +\protected\long\def\@expl@provides@file@@Nnnnnn#1#2#3#4#5#6% {% - \ProvidesPackage{#1}[#2 \ifx\relax#3\relax\else v#3\space\fi #4]% + \ifnum0% + \ifdefined#11\fi + \ifx\relax#1\else1\fi + =11 + \expandafter#1% + \else + \@expl@provides@generic@@wnnw{#2}% + \fi + {#3}[{#4 \ifx\relax#5\relax\else v#5\space\fi #6}]% \ExplSyntaxOn - }% -\protected\def\ProvidesExplClass#1#2#3#4% - {% - \ProvidesClass{#1}[#2 \ifx\relax#3\relax\else v#3\space\fi #4]% - \ExplSyntaxOn - }% -\protected\def\ProvidesExplFile#1#2#3#4% + } +\protected\long\def\@expl@provides@generic@@wnnw#1\fi#2[#3]% {% - \ProvidesFile{#1}[#2 \ifx\relax#3\relax\else v#3\space\fi #4]% - \ExplSyntaxOn - }% + \immediate\write-1{#1: #2 #3}% + } \begingroup\expandafter\expandafter\expandafter\endgroup \expandafter\ifx\csname tex\string _let:D\endcsname\relax \expandafter\@firstofone @@ -52,10 +60,13 @@ \expandafter\ifx\csname tex\string _let:D\endcsname\relax \expandafter\endinput \fi -\ifdefined\@pushfilenameaux +\ifcsname\detokenize{g__expl_reload_bool}\endcsname \ExplSyntaxOn + \bool_gset_true:N \g__expl_reload_bool +\else + \bool_new:N \g__expl_reload_bool \fi -\cs_if_exist:NF \c__expl_def_ext_tl +\tl_if_exist:NF \c__expl_def_ext_tl { \tl_const:Nn \c__expl_def_ext_tl { def } } \cs_gset_protected:Npn \__kernel_sys_configuration_load:n #1 { @@ -71,7 +82,7 @@ \@onefilewithoptions {#1} [ ] [ ] \c__expl_def_ext_tl } -\cs_if_exist:NF \l__expl_options_clist +\clist_if_exist:NF \l__expl_options_clist { \clist_new:N \l__expl_options_clist } \DeclareOption* { \clist_put_right:NV \l__expl_options_clist \CurrentOption } @@ -103,14 +114,29 @@ \sys_load_deprecation: } } +\cs_if_exist:NF \@expl@sys@load@backend@@ + { + \tl_put_left:Nn \document + { + \endgroup + \@expl@sys@load@backend@@ + \begingroup + } + } +\cs_gset_protected:Npn \@expl@sys@load@backend@@ + { + \str_if_exist:NF \c_sys_backend_str + { \sys_load_backend:n { } } + } \keys_set:nV { sys } \l__expl_options_clist \str_if_exist:NF \c_sys_backend_str { \sys_load_backend:n { } } -\cs_if_exist:NT \@pushfilenameaux +\bool_if:NT \g__expl_reload_bool { \cs_gset_eq:NN \__kernel_sys_configuration_load:n \__kernel_sys_configuration_load_std:n - \endinput + \ExplSyntaxOff + \file_input_stop: } \cs_if_free:cTF { ver@expl3.sty } { @@ -124,11 +150,16 @@ \reverse_if:N \if_cs_exist:N \s__expl_stop \scan_new:N \s__expl_stop \fi: -\tl_put_left:Nn \@pushfilename +\cs_if_exist:NF \@expl@push@filename@@ + { + \tl_put_left:Nn \@pushfilename { \@expl@push@filename@@ } + \tl_put_right:Nn \@pushfilename { \@expl@push@filename@aux@@ } + } +\cs_gset_protected:Npn \@expl@push@filename@@ { \exp_args:Nx \__kernel_file_input_push:n { - \tl_to_str:N \@currname + \tl_to_str:N \@currname . \tl_to_str:N \@currext } \tl_put_left:Nx \l__expl_status_stack_tl @@ -139,13 +170,17 @@ } \ExplSyntaxOff } -\tl_put_right:Nn \@pushfilename { \@pushfilenameaux } -\cs_set_protected:Npn \@pushfilenameaux #1#2#3 +\cs_gset_protected:Npn \@expl@push@filename@aux@@ #1#2#3 { \str_gset:Nn \g_file_curr_name_str {#3} #1 #2 {#3} } -\tl_put_right:Nn \@popfilename +\cs_if_exist:NF \@expl@pop@filename@@ + { + \tl_put_right:Nn \@popfilename + { \@expl@pop@filename@@ } + } +\cs_gset_protected:Npn \@expl@pop@filename@@ { \__kernel_file_input_pop: \tl_if_empty:NTF \l__expl_status_stack_tl |