[latex3-commits] [git/LaTeX3-latex3-latex2e] develop: Update l3backend and l3kernel to 2022-10-26 (04782624)
Joseph Wright
joseph.wright at morningstar2.co.uk
Wed Oct 26 22:05:49 CEST 2022
Repository : https://github.com/latex3/latex2e
On branch : develop
Link : https://github.com/latex3/latex2e/commit/04782624c081933ba8c0f83a67b05c359b1d4529
>---------------------------------------------------------------
commit 04782624c081933ba8c0f83a67b05c359b1d4529
Author: Joseph Wright <joseph.wright at morningstar2.co.uk>
Date: Wed Oct 26 21:05:49 2022 +0100
Update l3backend and l3kernel to 2022-10-26
>---------------------------------------------------------------
04782624c081933ba8c0f83a67b05c359b1d4529
texmf/tex/latex/l3backend/l3backend-dvipdfmx.def | 8 +-
texmf/tex/latex/l3backend/l3backend-dvips.def | 8 +-
texmf/tex/latex/l3backend/l3backend-dvisvgm.def | 2 +-
texmf/tex/latex/l3backend/l3backend-luatex.def | 2 +-
texmf/tex/latex/l3backend/l3backend-pdftex.def | 2 +-
texmf/tex/latex/l3backend/l3backend-xetex.def | 2 +-
texmf/tex/latex/l3kernel/expl3-code.tex | 186 ++++++++++++++---------
texmf/tex/latex/l3kernel/expl3-generic.tex | 2 +-
texmf/tex/latex/l3kernel/expl3.ltx | 2 +-
texmf/tex/latex/l3kernel/expl3.sty | 2 +-
10 files changed, 127 insertions(+), 89 deletions(-)
diff --git a/texmf/tex/latex/l3backend/l3backend-dvipdfmx.def b/texmf/tex/latex/l3backend/l3backend-dvipdfmx.def
index 992a5da4..4abeab38 100644
--- a/texmf/tex/latex/l3backend/l3backend-dvipdfmx.def
+++ b/texmf/tex/latex/l3backend/l3backend-dvipdfmx.def
@@ -26,7 +26,7 @@
%%
%% File: l3backend-basics.dtx
\ProvidesExplFile
- {l3backend-dvipdfmx.def}{2022-09-28}{}
+ {l3backend-dvipdfmx.def}{2022-10-26}{}
{L3 backend support: dvipdfmx}
\cs_if_exist:NTF \__kernel_dependency_version_check:nn
{
@@ -806,13 +806,11 @@
\__kernel_backend_literal:e
{
pdf:pagesize ~
- width ~ \__pdf_backend_pagesize_set:n {#1} ~
- height ~ \__pdf_backend_pagesize_set:n {#2}
+ width ~ \dim_eval:n {#1} ~
+ height ~ \dim_eval:n {#2}
}
}
}
-\cs_new:Npn \__pdf_backend_pagesize_set:n #1
- { \fp_to_dim:n { \tex_mag:D / 1000 * (#1) } }
%% File: l3backend-opacity.dtx
\bool_lazy_and:nnT
{ \cs_if_exist_p:N \pdfmanagement_if_active_p: }
diff --git a/texmf/tex/latex/l3backend/l3backend-dvips.def b/texmf/tex/latex/l3backend/l3backend-dvips.def
index a84536ec..656d07d0 100644
--- a/texmf/tex/latex/l3backend/l3backend-dvips.def
+++ b/texmf/tex/latex/l3backend/l3backend-dvips.def
@@ -26,7 +26,7 @@
%%
%% File: l3backend-basics.dtx
\ProvidesExplFile
- {l3backend-dvips.def}{2022-09-28}{}
+ {l3backend-dvips.def}{2022-10-26}{}
{L3 backend support: dvips}
\cs_if_exist:NTF \__kernel_dependency_version_check:nn
{
@@ -1034,14 +1034,10 @@
{
\__kernel_backend_literal:e
{
- papersize =
- \__pdf_backend_pagesize_set:n {#1} ,
- \__pdf_backend_pagesize_set:n {#2}
+ papersize = \dim_eval:n {#1} , \dim_eval:n {#2}
}
}
}
-\cs_new:Npn \__pdf_backend_pagesize_set:n #1
- { \fp_to_dim:n { \tex_mag:D / 1000 * (#1) } }
%% File: l3backend-opacity.dtx
\cs_new_protected:Npn \__opacity_backend_select:n #1
{
diff --git a/texmf/tex/latex/l3backend/l3backend-dvisvgm.def b/texmf/tex/latex/l3backend/l3backend-dvisvgm.def
index c34ba5b6..7fcb631b 100644
--- a/texmf/tex/latex/l3backend/l3backend-dvisvgm.def
+++ b/texmf/tex/latex/l3backend/l3backend-dvisvgm.def
@@ -26,7 +26,7 @@
%%
%% File: l3backend-basics.dtx
\ProvidesExplFile
- {l3backend-dvisvgm.def}{2022-09-28}{}
+ {l3backend-dvisvgm.def}{2022-10-26}{}
{L3 backend support: dvisvgm}
\cs_if_exist:NTF \__kernel_dependency_version_check:nn
{
diff --git a/texmf/tex/latex/l3backend/l3backend-luatex.def b/texmf/tex/latex/l3backend/l3backend-luatex.def
index ec2560fb..71ddaedd 100644
--- a/texmf/tex/latex/l3backend/l3backend-luatex.def
+++ b/texmf/tex/latex/l3backend/l3backend-luatex.def
@@ -26,7 +26,7 @@
%%
%% File: l3backend-basics.dtx
\ProvidesExplFile
- {l3backend-luatex.def}{2022-09-28}{}
+ {l3backend-luatex.def}{2022-10-26}{}
{L3 backend support: PDF output (LuaTeX)}
\cs_if_exist:NTF \__kernel_dependency_version_check:nn
{
diff --git a/texmf/tex/latex/l3backend/l3backend-pdftex.def b/texmf/tex/latex/l3backend/l3backend-pdftex.def
index b92249d3..c87dd528 100644
--- a/texmf/tex/latex/l3backend/l3backend-pdftex.def
+++ b/texmf/tex/latex/l3backend/l3backend-pdftex.def
@@ -26,7 +26,7 @@
%%
%% File: l3backend-basics.dtx
\ProvidesExplFile
- {l3backend-pdftex.def}{2022-09-28}{}
+ {l3backend-pdftex.def}{2022-10-26}{}
{L3 backend support: PDF output (pdfTeX)}
\cs_if_exist:NTF \__kernel_dependency_version_check:nn
{
diff --git a/texmf/tex/latex/l3backend/l3backend-xetex.def b/texmf/tex/latex/l3backend/l3backend-xetex.def
index e6005f61..346b6650 100644
--- a/texmf/tex/latex/l3backend/l3backend-xetex.def
+++ b/texmf/tex/latex/l3backend/l3backend-xetex.def
@@ -26,7 +26,7 @@
%%
%% File: l3backend-basics.dtx
\ProvidesExplFile
- {l3backend-xetex.def}{2022-09-28}{}
+ {l3backend-xetex.def}{2022-10-26}{}
{L3 backend support: XeTeX}
\cs_if_exist:NTF \__kernel_dependency_version_check:nn
{
diff --git a/texmf/tex/latex/l3kernel/expl3-code.tex b/texmf/tex/latex/l3kernel/expl3-code.tex
index d49f9dc8..258d0476 100644
--- a/texmf/tex/latex/l3kernel/expl3-code.tex
+++ b/texmf/tex/latex/l3kernel/expl3-code.tex
@@ -71,7 +71,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: expl3.dtx
-\def\ExplFileDate{2022-09-28}%
+\def\ExplFileDate{2022-10-26}%
\begingroup
\def\next{\endgroup}%
\expandafter\ifx\csname PackageError\endcsname\relax
@@ -248,24 +248,16 @@ Type H <return> for immediate help}\def~{\errmessage{%
\protected\def\noexpand\ExplSyntaxOff{}%
\catcode 9 = \the\catcode 9\relax
\catcode 32 = \the\catcode 32\relax
- \catcode 34 = \the\catcode 34\relax
- \catcode 38 = \the\catcode 38\relax
\catcode 58 = \the\catcode 58\relax
- \catcode 94 = \the\catcode 94\relax
\catcode 95 = \the\catcode 95\relax
- \catcode 124 = \the\catcode 124\relax
\catcode 126 = \the\catcode 126\relax
\endlinechar = \the\endlinechar\relax
\chardef\csname\detokenize{l__kernel_expl_bool}\endcsname = 0\relax
}%
-\catcode 9 = 9\relax
-\catcode 32 = 9\relax
-\catcode 34 = 12\relax
-\catcode 38 = 4\relax
-\catcode 58 = 11\relax
-\catcode 94 = 7\relax
-\catcode 95 = 11\relax
-\catcode 124 = 12\relax
+\catcode 9 = 9\relax
+\catcode 32 = 9\relax
+\catcode 58 = 11\relax
+\catcode 95 = 11\relax
\catcode 126 = 10\relax
\endlinechar = 32\relax
\chardef\l__kernel_expl_bool = 1\relax
@@ -275,14 +267,10 @@ Type H <return> for immediate help}\def~{\errmessage{%
{
\cs_set_protected:Npx \ExplSyntaxOff
{
- \char_set_catcode:nn { 9 } { \char_value_catcode:n { 9 } }
- \char_set_catcode:nn { 32 } { \char_value_catcode:n { 32 } }
- \char_set_catcode:nn { 34 } { \char_value_catcode:n { 34 } }
- \char_set_catcode:nn { 38 } { \char_value_catcode:n { 38 } }
- \char_set_catcode:nn { 58 } { \char_value_catcode:n { 58 } }
- \char_set_catcode:nn { 94 } { \char_value_catcode:n { 94 } }
- \char_set_catcode:nn { 95 } { \char_value_catcode:n { 95 } }
- \char_set_catcode:nn { 124 } { \char_value_catcode:n { 124 } }
+ \char_set_catcode:nn { 9 } { \char_value_catcode:n { 9 } }
+ \char_set_catcode:nn { 32 } { \char_value_catcode:n { 32 } }
+ \char_set_catcode:nn { 58 } { \char_value_catcode:n { 58 } }
+ \char_set_catcode:nn { 95 } { \char_value_catcode:n { 95 } }
\char_set_catcode:nn { 126 } { \char_value_catcode:n { 126 } }
\tex_endlinechar:D =
\tex_the:D \tex_endlinechar:D \scan_stop:
@@ -290,14 +278,10 @@ Type H <return> for immediate help}\def~{\errmessage{%
\cs_set_protected:Npn \ExplSyntaxOff { }
}
}
- \char_set_catcode_ignore:n { 9 } % tab
- \char_set_catcode_ignore:n { 32 } % space
- \char_set_catcode_other:n { 34 } % double quote
- \char_set_catcode_alignment:n { 38 } % ampersand
- \char_set_catcode_letter:n { 58 } % colon
- \char_set_catcode_math_superscript:n { 94 } % circumflex
- \char_set_catcode_letter:n { 95 } % underscore
- \char_set_catcode_other:n { 124 } % pipe
+ \char_set_catcode_ignore:n { 9 } % tab
+ \char_set_catcode_ignore:n { 32 } % space
+ \char_set_catcode_letter:n { 58 } % colon
+ \char_set_catcode_letter:n { 95 } % underscore
\char_set_catcode_space:n { 126 } % tilde
\tex_endlinechar:D = 32 \scan_stop:
\bool_set_true:N \l__kernel_expl_bool
@@ -7785,9 +7769,6 @@ Type H <return> for immediate help}\def~{\errmessage{%
{ \int_value:w \tex_elapsedtime:D }
}
{
- \msg_new:nnnn { kernel } { no-elapsed-time }
- { No~clock~detected~for~#1. }
- { The~current~engine~provides~no~way~to~access~the~system~time. }
\cs_new:Npn \sys_timer:
{
\int_value:w
@@ -10617,6 +10598,12 @@ Type H <return> for immediate help}\def~{\errmessage{%
LaTeX~has~been~asked~to~replace~an~empty~pattern~by~'#1':~that~
would~lead~to~an~infinite~loop!
}
+\cs_if_exist:NF \tex_elapsedtime:D
+ {
+ \msg_new:nnnn { kernel } { no-elapsed-time }
+ { No~clock~detected~for~#1. }
+ { The~current~engine~provides~no~way~to~access~the~system~time. }
+ }
\msg_new:nnnn { kernel } { non-base-function }
{ Function~'#1'~is~not~a~base~function }
{
@@ -23221,7 +23208,6 @@ Type H <return> for immediate help}\def~{\errmessage{%
{
\char_generate:nn { 32 } { 3 } 3
\char_generate:nn { 32 } { 4 } 4
- # \char_generate:nn { 32 } { 6 } 6
\char_generate:nn { 32 } { 7 } 7
\char_generate:nn { 32 } { 8 } 8
\c_space_tl \token_to_str:N A
@@ -23451,35 +23437,40 @@ Type H <return> for immediate help}\def~{\errmessage{%
\scan_stop:
\exp_after:wN \use_none:n \token_to_str:N #3 \prg_do_nothing:
\scan_stop:
- \exp_after:wN \__tl_analysis_b_char:Nww
+ \exp_after:wN \__tl_analysis_b_char:Nn
+ \exp_after:wN \__tl_analysis_b_char_aux:nww
\else:
\exp_after:wN \__tl_analysis_b_cs:Nww
\fi:
#3 #1; #2;
}
-\cs_new:Npx \__tl_analysis_b_char:Nww #1
+\cs_new:Npx \__tl_analysis_b_char:Nn #1#2
{
- \exp_not:N \if_meaning:w #1 \exp_not:N \tex_undefined:D
+ \exp_not:N \if_meaning:w #2 \exp_not:N \tex_undefined:D
\token_to_str:N D \exp_not:N \else:
- \exp_not:N \if_catcode:w #1 \c_catcode_other_token
+ \exp_not:N \if_catcode:w #2 \c_catcode_other_token
\token_to_str:N C \exp_not:N \else:
- \exp_not:N \if_catcode:w #1 \c_catcode_letter_token
+ \exp_not:N \if_catcode:w #2 \c_catcode_letter_token
\token_to_str:N B \exp_not:N \else:
- \exp_not:N \if_catcode:w #1 \c_math_toggle_token 3
+ \exp_not:N \if_catcode:w #2 \c_math_toggle_token 3
\exp_not:N \else:
- \exp_not:N \if_catcode:w #1 \c_alignment_token 4
+ \exp_not:N \if_catcode:w #2 \c_alignment_token 4
\exp_not:N \else:
- \exp_not:N \if_catcode:w #1 \c_math_superscript_token 7
+ \exp_not:N \if_catcode:w #2 \c_math_superscript_token 7
\exp_not:N \else:
- \exp_not:N \if_catcode:w #1 \c_math_subscript_token 8
+ \exp_not:N \if_catcode:w #2 \c_math_subscript_token 8
\exp_not:N \else:
- \exp_not:N \if_catcode:w #1 \c_space_token
+ \exp_not:N \if_catcode:w #2 \c_space_token
\token_to_str:N A \exp_not:N \else:
6
\exp_not:n { \fi: \fi: \fi: \fi: \fi: \fi: \fi: \fi: }
- \exp_not:N \int_value:w `#1 \s__tl
- \exp_not:N \exp_after:wN \exp_not:N \__tl_analysis_b_normals:ww
- \exp_not:N \int_value:w \exp_not:N \int_eval:w - 1 +
+ #1 {#2}
+ }
+\cs_new:Npn \__tl_analysis_b_char_aux:nww #1
+ {
+ \int_value:w `#1 \s__tl
+ \exp_after:wN \__tl_analysis_b_normals:ww
+ \int_value:w \int_eval:w - 1 +
}
\cs_new:Npn \__tl_analysis_b_cs:Nww #1
{
@@ -23693,49 +23684,96 @@ Type H <return> for immediate help}\def~{\errmessage{%
}
\cs_new_protected:Npn \__tl_peek_analysis_test:
{
- \if_int_odd:w
- \if_catcode:w \exp_not:N \l_peek_token { \c_zero_int \fi:
- \if_catcode:w \exp_not:N \l_peek_token } \c_zero_int \fi:
- \if_meaning:w \l_peek_token \c_space_token \c_zero_int \fi:
- \c_one_int
+ \if_case:w
+ \if_catcode:w \exp_not:N \l_peek_token { \c_max_int \fi:
+ \if_catcode:w \exp_not:N \l_peek_token } \c_max_int \fi:
+ \if_meaning:w \l_peek_token \c_space_token \c_max_int \fi:
+ \exp_after:wN \if_meaning:w \exp_not:N \l_peek_token \l_peek_token
+ \c_one_int
+ \fi:
+ \c_zero_int
\exp_after:wN \exp_after:wN
- \exp_after:wN \__tl_peek_analysis_normal:N
+ \exp_after:wN \__tl_peek_analysis_exp:N
\exp_after:wN \exp_not:N
+ \or:
+ \exp_after:wN \__tl_peek_analysis_nonexp:N
\else:
\exp_after:wN \__tl_peek_analysis_special:
\fi:
}
-\cs_new_protected:Npn \__tl_peek_analysis_normal:N #1
+\cs_new_protected:Npn \__tl_peek_analysis_exp:N #1
+ {
+ \cs_set_nopar:Npx \l__tl_peek_code_tl
+ {
+ \tex_let:D \exp_not:N #1 \scan_stop:
+ \exp_not:o \l__tl_peek_code_tl
+ {
+ \exp_not:n { \__kernel_exp_not:w \exp_after:wN }
+ { \exp_not:N \exp_not:N \exp_not:N #1 }
+ }
+ \if:w \scan_stop:
+ \exp_after:wN \use_none:n \token_to_str:N #1 \prg_do_nothing:
+ \scan_stop:
+ \exp_after:wN \exp_after:wN
+ \exp_after:wN \__tl_peek_analysis_exp_active:N
+ \else:
+ { -1 } 0
+ \exp_after:wN \exp_after:wN
+ \exp_after:wN \use_none:n
+ \fi:
+ \exp_not:N #1
+ }
+ \l__tl_peek_code_tl
+ }
+\cs_new:Npx \__tl_peek_analysis_exp_active:N #1
+ { { \exp_not:N \int_value:w `#1 } \token_to_str:N D }
+\cs_new_protected:Npn \__tl_peek_analysis_nonexp:N #1
{
- \exp_after:wN \reverse_if:N \exp_after:wN \if_meaning:w
- \exp_not:N #1 #1
- \tex_let:D #1 \scan_stop:
- \tl_put_right:Nn \l__tl_peek_code_tl { { \exp_not:N #1 } }
- \else:
- \tl_put_right:Nn \l__tl_peek_code_tl { { \exp_not:n {#1} } }
- \fi:
\if_charcode:w
\scan_stop:
\exp_after:wN \use_none:n \token_to_str:N #1 \prg_do_nothing:
\scan_stop:
\exp_after:wN \__tl_peek_analysis_char:N
- \exp_after:wN #1
\else:
- \exp_after:wN \__tl_peek_analysis_cs:
+ \exp_after:wN \__tl_peek_analysis_cs:N
\fi:
+ #1
}
-\cs_new_protected:Npn \__tl_peek_analysis_cs:
- { \l__tl_peek_code_tl { -1 } 0 }
-\cs_new_protected:Npn \__tl_peek_analysis_char:N #1
+\cs_new_protected:Npn \__tl_peek_analysis_cs:N #1
+ { \l__tl_peek_code_tl { \exp_not:n {#1} } { -1 } 0 }
+\group_begin:
+\char_set_active_eq:NN \ \scan_stop:
+\cs_new_protected:Npx \__tl_peek_analysis_char:N #1
{
- \char_set_lccode:nn { `#1 } { 32 }
- \tex_lowercase:D { \__tl_peek_analysis_char:nN {#1} } #1
+ \cs_set_eq:NN
+ \char_generate:nn { 32 } { 13 }
+ \exp_not:N \tex_undefined:D
+ \tex_lccode:D `#1 = 32 \exp_stop_f:
+ \tex_lowercase:D
+ {
+ \tl_put_right:Nx \exp_not:N \l__tl_peek_code_tl
+ { \exp_not:n { \__tl_analysis_b_char:Nn \use_none:n } {#1} }
+ }
+ \exp_not:n
+ {
+ \exp_after:wN \__tl_peek_analysis_char:w
+ \int_value:w
+ }
+ `#1
+ \exp_not:n { \exp_after:wN \s__tl \l__tl_peek_code_tl }
+ #1
}
-\cs_new_protected:Npn \__tl_peek_analysis_char:nN #1#2
+\group_end:
+\cs_new_protected:Npn \__tl_peek_analysis_char:w #1 \s__tl #2#3#4
{
- \cs_set_protected:Npn \__tl_tmp:w ##1 #1 ##2 ##3 \scan_stop:
- { \exp_args:No \l__tl_peek_code_tl { \int_value:w `#2 } ##2 }
- \exp_after:wN \__tl_tmp:w \c__tl_peek_catcodes_tl \scan_stop:
+ \if_charcode:w 6 #3
+ \else:
+ \if_charcode:w D #3
+ \else:
+ \exp_args:NNNo
+ \fi:
+ \fi:
+ #2 { \exp_not:n {#4} } {#1} #3
}
\cs_new_protected:Npn \__tl_peek_analysis_special:
{
@@ -23763,6 +23801,11 @@ Type H <return> for immediate help}\def~{\errmessage{%
{
\tl_if_empty:oT { \tex_the:D \tex_everyeof:D }
{ \tex_everyeof:D { \scan_stop: } }
+ \tex_afterassignment:D \__tl_peek_analysis_nextii:
+ \tex_futurelet:D \l__tl_analysis_next_token
+ }
+\cs_new_protected:Npn \__tl_peek_analysis_nextii:
+ {
\tex_afterassignment:D \__tl_peek_analysis_str:
\tex_futurelet:D \l__tl_analysis_next_token
}
@@ -30398,6 +30441,7 @@ Type H <return> for immediate help}\def~{\errmessage{%
{ \cs_if_exist_p:N \stockwidth }
{ \cs_if_exist_p:N \IfDocumentMetadataTF }
{ \IfDocumentMetadataTF { \c_true_bool } { \c_false_bool } }
+ { \int_compare_p:nNn \tex_mag:D = { 1000 } }
}
{
\bool_lazy_and:nnTF
diff --git a/texmf/tex/latex/l3kernel/expl3-generic.tex b/texmf/tex/latex/l3kernel/expl3-generic.tex
index 80a27677..e8f06e68 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{2022-09-28}%
+\def\ExplFileDate{2022-10-26}%
\let\ExplLoaderFileDate\ExplFileDate
\begingroup
\catcode`\_=11
diff --git a/texmf/tex/latex/l3kernel/expl3.ltx b/texmf/tex/latex/l3kernel/expl3.ltx
index 915b8c10..0d2454e4 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{2022-09-28}%
+\def\ExplFileDate{2022-10-26}%
\let\ExplLoaderFileDate\ExplFileDate
\begingroup
\catcode`\_=11
diff --git a/texmf/tex/latex/l3kernel/expl3.sty b/texmf/tex/latex/l3kernel/expl3.sty
index 3a5c3d76..8518152b 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{2022-09-28}%
+\def\ExplFileDate{2022-10-26}%
\let\ExplLoaderFileDate\ExplFileDate
\ProvidesPackage{expl3}
[%
More information about the latex3-commits
mailing list.