[latex3-commits] [git/LaTeX3-latex3-latex2e] develop: Update l3kernel and l3backend to 2020-02-21 (a04cf535)

Joseph Wright joseph.wright at morningstar2.co.uk
Fri Feb 21 19:42:28 CET 2020


Repository : https://github.com/latex3/latex2e
On branch  : develop
Link       : https://github.com/latex3/latex2e/commit/a04cf535c7ec7a2dbb81d390c051f997ab1571e3

>---------------------------------------------------------------

commit a04cf535c7ec7a2dbb81d390c051f997ab1571e3
Author: Joseph Wright <joseph.wright at morningstar2.co.uk>
Date:   Fri Feb 21 18:33:31 2020 +0000

    Update l3kernel and l3backend to 2020-02-21


>---------------------------------------------------------------

a04cf535c7ec7a2dbb81d390c051f997ab1571e3
 texmf/tex/latex/l3backend/l3backend-dvipdfmx.def  |  2 +-
 texmf/tex/latex/l3backend/l3backend-dvips.def     | 11 ++-
 texmf/tex/latex/l3backend/l3backend-dvisvgm.def   |  2 +-
 texmf/tex/latex/l3backend/l3backend-pdfmode.def   |  2 +-
 texmf/tex/latex/l3backend/l3backend-xdvipdfmx.def |  2 +-
 texmf/tex/latex/l3kernel/expl3-code.tex           | 84 ++++++++++++++++-------
 texmf/tex/latex/l3kernel/expl3-generic.tex        |  2 +-
 texmf/tex/latex/l3kernel/expl3.ltx                |  7 +-
 texmf/tex/latex/l3kernel/expl3.sty                | 10 ++-
 texmf/tex/latex/l3kernel/l3deprecation.def        |  2 +-
 10 files changed, 84 insertions(+), 40 deletions(-)

diff --git a/texmf/tex/latex/l3backend/l3backend-dvipdfmx.def b/texmf/tex/latex/l3backend/l3backend-dvipdfmx.def
index 0f9c0988..ced4853f 100644
--- a/texmf/tex/latex/l3backend/l3backend-dvipdfmx.def
+++ b/texmf/tex/latex/l3backend/l3backend-dvipdfmx.def
@@ -25,7 +25,7 @@
 %% 
 %% File: l3backend-basics.dtx
 \ProvidesExplFile
-  {l3backend-dvipdfmx.def}{2020-02-03}{}
+  {l3backend-dvipdfmx.def}{2020-02-21}{}
   {L3 backend support: dvipdfmx}
 \cs_new_eq:NN \__kernel_backend_literal:e \tex_special:D
 \cs_new_protected:Npn \__kernel_backend_literal:n #1
diff --git a/texmf/tex/latex/l3backend/l3backend-dvips.def b/texmf/tex/latex/l3backend/l3backend-dvips.def
index 04c0f4fb..87c370c6 100644
--- a/texmf/tex/latex/l3backend/l3backend-dvips.def
+++ b/texmf/tex/latex/l3backend/l3backend-dvips.def
@@ -25,7 +25,7 @@
 %% 
 %% File: l3backend-basics.dtx
 \ProvidesExplFile
-  {l3backend-dvips.def}{2020-02-03}{}
+  {l3backend-dvips.def}{2020-02-21}{}
   {L3 backend support: dvips}
 \cs_new_eq:NN \__kernel_backend_literal:e \tex_special:D
 \cs_new_protected:Npn \__kernel_backend_literal:n #1
@@ -38,9 +38,14 @@
   { \__kernel_backend_literal:n { ps: SDict ~ begin ~ #1 ~ end } }
 \cs_generate_variant:Nn \__kernel_backend_postscript:n { x }
 \cs_if_exist:NTF \AtBeginDvi
-  { \exp_not:N \AtBeginDvi }
+  { \AtBeginDvi }
   { \use:n }
-    { \__kernel_backend_literal:n { header = l3backend-dvips.pro } }
+    {
+      \bool_lazy_and:nnT
+        { \cs_if_exist_p:N \g__kernel_backend_header_bool }
+        { \g__kernel_backend_header_bool }
+        { \__kernel_backend_literal:n { header = l3backend-dvips.pro } }
+    }
 \cs_new_protected:Npn \__kernel_backend_align_begin:
   {
     \__kernel_backend_literal:n { ps::[begin] }
diff --git a/texmf/tex/latex/l3backend/l3backend-dvisvgm.def b/texmf/tex/latex/l3backend/l3backend-dvisvgm.def
index 0e02610d..70a00d17 100644
--- a/texmf/tex/latex/l3backend/l3backend-dvisvgm.def
+++ b/texmf/tex/latex/l3backend/l3backend-dvisvgm.def
@@ -25,7 +25,7 @@
 %% 
 %% File: l3backend-basics.dtx
 \ProvidesExplFile
-  {l3backend-dvisvgm.def}{2020-02-03}{}
+  {l3backend-dvisvgm.def}{2020-02-21}{}
   {L3 backend support: dvisvgm}
 \cs_new_eq:NN \__kernel_backend_literal:e \tex_special:D
 \cs_new_protected:Npn \__kernel_backend_literal:n #1
diff --git a/texmf/tex/latex/l3backend/l3backend-pdfmode.def b/texmf/tex/latex/l3backend/l3backend-pdfmode.def
index 80a9e44a..6183ad7c 100644
--- a/texmf/tex/latex/l3backend/l3backend-pdfmode.def
+++ b/texmf/tex/latex/l3backend/l3backend-pdfmode.def
@@ -25,7 +25,7 @@
 %% 
 %% File: l3backend-basics.dtx
 \ProvidesExplFile
-  {l3backend-pdfmode.def}{2020-02-03}{}
+  {l3backend-pdfmode.def}{2020-02-21}{}
   {L3 backend support: PDF mode}
 \cs_new_eq:NN \__kernel_backend_literal:e \tex_special:D
 \cs_new_protected:Npn \__kernel_backend_literal:n #1
diff --git a/texmf/tex/latex/l3backend/l3backend-xdvipdfmx.def b/texmf/tex/latex/l3backend/l3backend-xdvipdfmx.def
index 5b4f76cc..dfc51159 100644
--- a/texmf/tex/latex/l3backend/l3backend-xdvipdfmx.def
+++ b/texmf/tex/latex/l3backend/l3backend-xdvipdfmx.def
@@ -25,7 +25,7 @@
 %% 
 %% File: l3backend-basics.dtx
 \ProvidesExplFile
-  {l3backend-xdvipdfmx.def}{2020-02-03}{}
+  {l3backend-xdvipdfmx.def}{2020-02-21}{}
   {L3 backend support: xdvipdfmx}
 \cs_new_eq:NN \__kernel_backend_literal:e \tex_special:D
 \cs_new_protected:Npn \__kernel_backend_literal:n #1
diff --git a/texmf/tex/latex/l3kernel/expl3-code.tex b/texmf/tex/latex/l3kernel/expl3-code.tex
index e5cf8f23..9977e739 100644
--- a/texmf/tex/latex/l3kernel/expl3-code.tex
+++ b/texmf/tex/latex/l3kernel/expl3-code.tex
@@ -67,7 +67,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: expl3.dtx
-\def\ExplFileDate{2020-02-11}%
+\def\ExplFileDate{2020-02-21}%
 \begingroup
   \def\next{\endgroup}%
   \expandafter\ifx\csname PackageError\endcsname\relax
@@ -7522,7 +7522,11 @@
   {
     \sys_if_engine_xetex:TF
       {
-        \str_if_eq:VnF #1 { xdvipdfmx }
+        \str_case:VnF #1
+          {
+            { dvisvgm }   { }
+            { xdvipdfmx } { }
+          }
           {
             \__kernel_msg_error:nnxx { sys } { wrong-backend }
               #1 { xdvipdfmx }
@@ -28025,7 +28029,7 @@
 \cs_new:Npn \__text_expand_math_search:NNN #1#2#3
   {
     \quark_if_recursion_tail_stop_do:Nn #2
-      { \__text_expand_implicit:N #1 }
+      { \__text_expand_explicit:N #1 }
     \token_if_eq_meaning:NNTF #1 #2
       {
         \use_i_delimit_by_q_recursion_stop:nw
@@ -28067,11 +28071,6 @@
     \__text_expand_store:n { ~ }
     \__text_expand_math_loop:Nw #1
   }
-\cs_new:Npn \__text_expand_implicit:N #1
-  {
-    \exp_args:NNe \use:nn \__text_expand_explicit:N
-      { \__text_token_to_explicit:N #1 }
-  }
 \cs_new:Npn \__text_expand_explicit:N #1
   {
     \token_if_cs:NTF #1
@@ -28590,7 +28589,7 @@
   \__text_change_case_char_next_lower:nn
 \cs_new:Npn \__text_change_case_char_next_end:nn #1#2
   { \__text_change_case_break:w }
-\bool_lazy_or:nnT
+\bool_lazy_or:nnTF
   { \sys_if_engine_luatex_p: }
   { \sys_if_engine_xetex_p: }
   {
@@ -28599,13 +28598,33 @@
         \int_compare:nNnTF { `#4 } = { "00DF }
           {
             \__text_change_case_store:e
-              { \char_generate:nn { "1E9E } { \__text_char_catcode:N #4 } }
+             { \char_generate:nn { "1E9E } { \__text_char_catcode:N #4 } }
             \use:c { __text_change_case_char_next_ #2 :nn }
               {#2} {#3}
           }
           { \__text_change_case_char:nnnN {#1} {#2} {#3} #4 }
       }
   }
+  {
+    \cs_new:cpx { __text_change_case_upper_de-alt:nnnN } #1#2#3#4
+      {
+        \exp_not:N \int_compare:nNnTF { `#4 } = { "00C3 }
+          {
+            \exp_not:c { __text_change_case_upper_de-alt:nnnNN }
+              {#1} {#2} {#3} #4
+          }
+          { \exp_not:N \__text_change_case_char:nnnN {#1} {#2} {#3} #4 }
+      }
+    \cs_new:cpn { __text_change_case_upper_de-alt:nnnNN } #1#2#3#4#5
+      {
+        \int_compare:nNnTF { `#5 } = { "009F }
+          {
+            \__text_change_case_store:V \c__text_grosses_Eszett_tl
+            \use:c { __text_change_case_char_next_ #2 :nn } {#2} {#3}
+          }
+          { \__text_change_case_char:nnnN {#1} {#2} {#3} #4#5 }
+      }
+  }
 \bool_lazy_or:nnT
   { \sys_if_engine_luatex_p: }
   { \sys_if_engine_xetex_p: }
@@ -28979,16 +28998,22 @@
                       \exp_not:N \char_generate:nn {##1} { 13 }
                     \exp_after:wN \exp_after:wN \exp_after:wN
                       \exp_not:N \char_generate:nn {##2} { 13 }
+                    \tl_if_blank:nF {##3}
+                      {
+                        \exp_after:wN \exp_after:wN \exp_after:wN
+                          \exp_not:N \char_generate:nn {##3} { 13 }
+                      }
                   }
               }
             \use:x
               { \__text_tmp:w \char_to_utfviii_bytes:n { "#2 } }
           \group_end:
         }
-      \__text_tmp:w \c__text_dotless_i_tl { 0131 }
-      \__text_tmp:w \c__text_dotted_I_tl  { 0130 }
-      \__text_tmp:w \c__text_i_ogonek_tl  { 012F }
-      \__text_tmp:w \c__text_I_ogonek_tl  { 012E }
+      \__text_tmp:w \c__text_dotless_i_tl      { 0131 }
+      \__text_tmp:w \c__text_dotted_I_tl       { 0130 }
+      \__text_tmp:w \c__text_i_ogonek_tl       { 012F }
+      \__text_tmp:w \c__text_I_ogonek_tl       { 012E }
+      \__text_tmp:w \c__text_grosses_Eszett_tl { 1E9E }
     }
 \group_end:
 \group_begin:
@@ -29199,22 +29224,29 @@
     \AtBeginDocument
       {
         \group_begin:
-          \cs_set_protected:Npn \__text_change_case_setup:NN #1#2
+          \cs_set_protected:Npn \__text_change_case_setup:Nn #1#2
             {
               \quark_if_recursion_tail_stop:N #1
-              \cs_if_exist:cF { c__text_uppercase_ \token_to_str:N #1 _tl }
+              \tl_if_single_token:nT {#2}
                 {
-                  \tl_const:cn { c__text_uppercase_ \token_to_str:N #1 _tl }
-                    { #2 }
-                }
-              \cs_if_exist:cF { c__text_lowercase_ \token_to_str:N #2 _tl }
-                {
-                  \tl_const:cn { c__text_lowercase_ \token_to_str:N #2 _tl }
-                    { #1 }
+                  \cs_if_exist:cF
+                    { c__text_uppercase_ \token_to_str:N #1 _tl }
+                    {
+                      \tl_const:cn
+                        { c__text_uppercase_ \token_to_str:N #1 _tl }
+                        { #2 }
+                    }
+                  \cs_if_exist:cF
+                    { c__text_lowercase_ \token_to_str:N #2 _tl }
+                    {
+                      \tl_const:cn
+                        { c__text_lowercase_ \token_to_str:N #2 _tl }
+                        { #1 }
+                    }
                 }
-              \__text_change_case_setup:NN
+              \__text_change_case_setup:Nn
             }
-          \exp_after:wN \__text_change_case_setup:NN \@uclclist
+          \exp_after:wN \__text_change_case_setup:Nn \@uclclist
           \q_recursion_tail ?
           \q_recursion_stop
         \group_end:
@@ -30108,7 +30140,7 @@
   }
 \cs_gset_protected:Npn \__kernel_sys_configuration_load:n #1
   { \file_input:n { #1 .def } }
-\sys_load_deprecation:
+\__kernel_sys_configuration_load:n { l3deprecation }
 %% 
 %%
 %% End of file `expl3-code.tex'.
diff --git a/texmf/tex/latex/l3kernel/expl3-generic.tex b/texmf/tex/latex/l3kernel/expl3-generic.tex
index 7e0773ef..77df0d01 100644
--- a/texmf/tex/latex/l3kernel/expl3-generic.tex
+++ b/texmf/tex/latex/l3kernel/expl3-generic.tex
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: expl3.dtx
-\def\ExplFileDate{2020-02-11}%
+\def\ExplFileDate{2020-02-21}%
 \let\ExplLoaderFileDate\ExplFileDate
 \begingroup
   \def\tempa{LaTeX2e}%
diff --git a/texmf/tex/latex/l3kernel/expl3.ltx b/texmf/tex/latex/l3kernel/expl3.ltx
index f5559810..75d59f0d 100644
--- a/texmf/tex/latex/l3kernel/expl3.ltx
+++ b/texmf/tex/latex/l3kernel/expl3.ltx
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: expl3.dtx
-\def\ExplFileDate{2020-02-11}%
+\def\ExplFileDate{2020-02-21}%
 \let\ExplLoaderFileDate\ExplFileDate
 \everyjob\expandafter{\the\everyjob
   \message{L3 programming layer <\ExplFileDate>}%
@@ -76,10 +76,13 @@
         \sys_load_debug:
         \debug_on:n { log-functions }
       } ,
+    suppress-backend-headers .bool_set_inverse:N
+      = \g__kernel_backend_header_bool ,
+    suppress-backend-headers .initial:n = false ,
     undo-recent-deprecations .code:n =
       {
-        \sys_load_deprecation:
         \bool_gset_true:N \g__kernel_deprecation_undo_recent_bool
+        \sys_load_deprecation:
       }
   }
 \tl_put_left:Nn \document
diff --git a/texmf/tex/latex/l3kernel/expl3.sty b/texmf/tex/latex/l3kernel/expl3.sty
index b468305c..cbf324ca 100644
--- a/texmf/tex/latex/l3kernel/expl3.sty
+++ b/texmf/tex/latex/l3kernel/expl3.sty
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: expl3.dtx
-\def\ExplFileDate{2020-02-11}%
+\def\ExplFileDate{2020-02-21}%
 \let\ExplLoaderFileDate\ExplFileDate
 \ProvidesPackage{expl3}
   [%
@@ -71,7 +71,8 @@
     \@onefilewithoptions {#1} [ ] [ ]
       \c__expl_def_ext_tl
   }
-\clist_new:N \l__expl_options_clist
+\cs_if_exist:NF \l__expl_options_clist
+  { \clist_new:N \l__expl_options_clist }
 \DeclareOption*
   { \clist_put_right:NV \l__expl_options_clist \CurrentOption }
 \ProcessOptions \relax
@@ -93,10 +94,13 @@
         \sys_load_debug:
         \debug_on:n { log-functions }
       } ,
+    suppress-backend-headers .bool_set_inverse:N
+      = \g__kernel_backend_header_bool ,
+    suppress-backend-headers .initial:n = false ,
     undo-recent-deprecations .code:n =
       {
-        \sys_load_deprecation:
         \bool_gset_true:N \g__kernel_deprecation_undo_recent_bool
+        \sys_load_deprecation:
       }
   }
 \keys_set:nV { sys } \l__expl_options_clist
diff --git a/texmf/tex/latex/l3kernel/l3deprecation.def b/texmf/tex/latex/l3kernel/l3deprecation.def
index 46d71c85..2eb91079 100644
--- a/texmf/tex/latex/l3kernel/l3deprecation.def
+++ b/texmf/tex/latex/l3kernel/l3deprecation.def
@@ -286,7 +286,7 @@
 \__kernel_patch_deprecation:nnNNpn { 2022-01-01 } { \char_str_foldcase:N }
 \cs_gset:Npn \char_str_fold_case:N { \char_str_foldcase:N }
 \__kernel_patch_deprecation:nnNNpn { 2021-01-01 } { -1 }
-\cs_new_protected:Npn \c_term_ior { -1 \scan_stop: }
+\cs_gset_protected:Npn \c_term_ior { -1 \scan_stop: }
 %% 
 %%
 %% End of file `l3deprecation.def'.





More information about the latex3-commits mailing list.