From b893c0b81be7cc13062e7f6257084a1765bc91e6 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Thu, 23 Jan 2020 21:57:42 +0000 Subject: l3kernel (23jan20) git-svn-id: svn://tug.org/texlive/trunk@53518 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/source/latex/l3kernel/expl3.dtx | 4 +- .../texmf-dist/source/latex/l3kernel/l3alloc.dtx | 2 +- .../texmf-dist/source/latex/l3kernel/l3basics.dtx | 2 +- .../source/latex/l3kernel/l3bootstrap.dtx | 2 +- Master/texmf-dist/source/latex/l3kernel/l3box.dtx | 2 +- .../source/latex/l3kernel/l3candidates.dtx | 2 +- .../texmf-dist/source/latex/l3kernel/l3clist.dtx | 2 +- .../texmf-dist/source/latex/l3kernel/l3coffins.dtx | 2 +- .../source/latex/l3kernel/l3color-base.dtx | 2 +- .../texmf-dist/source/latex/l3kernel/l3debug.dtx | 2 +- .../source/latex/l3kernel/l3deprecation.dtx | 34 ++++---- Master/texmf-dist/source/latex/l3kernel/l3doc.dtx | 2 +- .../source/latex/l3kernel/l3docstrip.dtx | 2 +- .../texmf-dist/source/latex/l3kernel/l3expan.dtx | 2 +- Master/texmf-dist/source/latex/l3kernel/l3file.dtx | 2 +- .../texmf-dist/source/latex/l3kernel/l3final.dtx | 2 +- Master/texmf-dist/source/latex/l3kernel/l3flag.dtx | 2 +- .../source/latex/l3kernel/l3fp-assign.dtx | 2 +- .../texmf-dist/source/latex/l3kernel/l3fp-aux.dtx | 2 +- .../source/latex/l3kernel/l3fp-basics.dtx | 2 +- .../source/latex/l3kernel/l3fp-convert.dtx | 2 +- .../texmf-dist/source/latex/l3kernel/l3fp-expo.dtx | 2 +- .../source/latex/l3kernel/l3fp-extended.dtx | 2 +- .../source/latex/l3kernel/l3fp-logic.dtx | 2 +- .../source/latex/l3kernel/l3fp-parse.dtx | 2 +- .../source/latex/l3kernel/l3fp-random.dtx | 2 +- .../source/latex/l3kernel/l3fp-round.dtx | 2 +- .../source/latex/l3kernel/l3fp-traps.dtx | 2 +- .../texmf-dist/source/latex/l3kernel/l3fp-trig.dtx | 2 +- Master/texmf-dist/source/latex/l3kernel/l3fp.dtx | 2 +- .../texmf-dist/source/latex/l3kernel/l3fparray.dtx | 2 +- Master/texmf-dist/source/latex/l3kernel/l3int.dtx | 2 +- .../source/latex/l3kernel/l3intarray.dtx | 2 +- .../source/latex/l3kernel/l3kernel-functions.dtx | 2 +- Master/texmf-dist/source/latex/l3kernel/l3keys.dtx | 84 ++++++++++++-------- .../texmf-dist/source/latex/l3kernel/l3legacy.dtx | 2 +- .../texmf-dist/source/latex/l3kernel/l3luatex.dtx | 2 +- Master/texmf-dist/source/latex/l3kernel/l3msg.dtx | 2 +- .../texmf-dist/source/latex/l3kernel/l3names.dtx | 4 +- Master/texmf-dist/source/latex/l3kernel/l3prg.dtx | 2 +- Master/texmf-dist/source/latex/l3kernel/l3prop.dtx | 2 +- .../texmf-dist/source/latex/l3kernel/l3quark.dtx | 2 +- .../texmf-dist/source/latex/l3kernel/l3regex.dtx | 2 +- Master/texmf-dist/source/latex/l3kernel/l3seq.dtx | 2 +- Master/texmf-dist/source/latex/l3kernel/l3skip.dtx | 2 +- Master/texmf-dist/source/latex/l3kernel/l3sort.dtx | 2 +- .../source/latex/l3kernel/l3str-convert.dtx | 2 +- Master/texmf-dist/source/latex/l3kernel/l3str.dtx | 2 +- Master/texmf-dist/source/latex/l3kernel/l3sys.dtx | 2 +- .../source/latex/l3kernel/l3text-case.dtx | 2 +- Master/texmf-dist/source/latex/l3kernel/l3text.dtx | 92 ++++++++++++++++++++-- .../source/latex/l3kernel/l3tl-analysis.dtx | 2 +- Master/texmf-dist/source/latex/l3kernel/l3tl.dtx | 2 +- .../texmf-dist/source/latex/l3kernel/l3token.dtx | 2 +- .../texmf-dist/source/latex/l3kernel/l3unicode.dtx | 2 +- 55 files changed, 206 insertions(+), 112 deletions(-) (limited to 'Master/texmf-dist/source') diff --git a/Master/texmf-dist/source/latex/l3kernel/expl3.dtx b/Master/texmf-dist/source/latex/l3kernel/expl3.dtx index 7295b770db3..5f2037485e9 100644 --- a/Master/texmf-dist/source/latex/l3kernel/expl3.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/expl3.dtx @@ -24,7 +24,7 @@ % %<*driver|generic|package|2ekernel> % -\def\ExplFileDate{2020-01-12}% +\def\ExplFileDate{2020-01-22}% %<*driver> \documentclass[full]{l3doc} \usepackage{graphicx} @@ -51,7 +51,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3alloc.dtx b/Master/texmf-dist/source/latex/l3kernel/l3alloc.dtx index e3f88dfc947..158b56887f7 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3alloc.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3alloc.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx b/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx index 7814fd30898..51f183ce332 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx b/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx index c503774a49a..fa7c56b27da 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3box.dtx b/Master/texmf-dist/source/latex/l3kernel/l3box.dtx index 16f74edd990..d055974c3b3 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3box.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3box.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx b/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx index adb399f9da1..072b1f0be85 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx b/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx index ab7cc6cca48..2639575a654 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx b/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx index 0b27eddfdbd..3e068842569 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3color-base.dtx b/Master/texmf-dist/source/latex/l3kernel/l3color-base.dtx index f4fc3498f46..da0d56fddee 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3color-base.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3color-base.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3debug.dtx b/Master/texmf-dist/source/latex/l3kernel/l3debug.dtx index 337fddffd7b..25273f5c075 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3debug.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3debug.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx b/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx index 32c5050d87e..4cce22b2410 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % @@ -873,24 +873,24 @@ % % \subsection{Deprecated \pkg{l3str} functions} % -% \begin{macro}[EXP, deprecated = 2021-07-01] +% \begin{macro}[EXP, deprecated = 2022-07-01] % { % \str_lower_case:n, \str_lower_case:f, % \str_upper_case:n, \str_upper_case:f, % \str_fold_case:n, \str_fold_case:V % } % \begin{macrocode} -\__kernel_patch_deprecation:nnNNpn { 2021-01-01 } { \str_lower_case:n } +\__kernel_patch_deprecation:nnNNpn { 2022-01-01 } { \str_lowercase:n } \cs_gset:Npn \str_lower_case:n { \str_lowercase:n } -\__kernel_patch_deprecation:nnNNpn { 2021-01-01 } { \str_lower_case:f } +\__kernel_patch_deprecation:nnNNpn { 2022-01-01 } { \str_lowercase:f } \cs_gset:Npn \str_lower_case:f { \str_lowercase:f } -\__kernel_patch_deprecation:nnNNpn { 2021-01-01 } { \str_upper_case:n } +\__kernel_patch_deprecation:nnNNpn { 2022-01-01 } { \str_uppercase:n } \cs_gset:Npn \str_upper_case:n { \str_uppercase:n } -\__kernel_patch_deprecation:nnNNpn { 2021-01-01 } { \str_upper_case:f } +\__kernel_patch_deprecation:nnNNpn { 2022-01-01 } { \str_uppercase:f } \cs_gset:Npn \str_upper_case:f { \str_uppercase:f } -\__kernel_patch_deprecation:nnNNpn { 2021-01-01 } { \str_fold_case:n } +\__kernel_patch_deprecation:nnNNpn { 2022-01-01 } { \str_foldcase:n } \cs_gset:Npn \str_fold_case:n { \str_foldcase:n } -\__kernel_patch_deprecation:nnNNpn { 2021-01-01 } { \str_fold_case:V } +\__kernel_patch_deprecation:nnNNpn { 2022-01-01 } { \str_foldcase:V } \cs_gset:Npn \str_fold_case:V { \str_foldcase:V } % \end{macrocode} % \end{macro} @@ -1028,7 +1028,7 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}[EXP, deprecated = 2021-07-01] +% \begin{macro}[EXP, deprecated = 2022-07-01] % { % \char_lower_case:N, \char_upper_case:N, % \char_mixed_case:Nn, \char_fold_case:N, @@ -1036,21 +1036,21 @@ % \char_str_mixed_case:Nn, \char_str_fold_case:N, % } % \begin{macrocode} -\__kernel_patch_deprecation:nnNNpn { 2021-01-01 } { \char_lower_case:N } +\__kernel_patch_deprecation:nnNNpn { 2022-01-01 } { \char_lowercase:N } \cs_gset:Npn \char_lower_case:N { \char_lowercase:N } -\__kernel_patch_deprecation:nnNNpn { 2021-01-01 } { \char_upper_case:N } +\__kernel_patch_deprecation:nnNNpn { 2022-01-01 } { \char_uppercase:N } \cs_gset:Npn \char_upper_case:N { \char_uppercase:N } -\__kernel_patch_deprecation:nnNNpn { 2021-01-01 } { \char_mixed_case:N } +\__kernel_patch_deprecation:nnNNpn { 2022-01-01 } { \char_titlecase:N } \cs_gset:Npn \char_mixed_case:N { \char_titlecase:N } -\__kernel_patch_deprecation:nnNNpn { 2021-01-01 } { \char_fold_case:N } +\__kernel_patch_deprecation:nnNNpn { 2022-01-01 } { \char_foldcase:N } \cs_gset:Npn \char_fold_case:N { \char_foldcase:N } -\__kernel_patch_deprecation:nnNNpn { 2021-01-01 } { \char_str_lower_case:N } +\__kernel_patch_deprecation:nnNNpn { 2022-01-01 } { \char_str_lowercase:N } \cs_gset:Npn \char_str_lower_case:N { \char_str_lowercase:N } -\__kernel_patch_deprecation:nnNNpn { 2021-01-01 } { \char_str_upper_case:N } +\__kernel_patch_deprecation:nnNNpn { 2022-01-01 } { \char_str_uppercase:N } \cs_gset:Npn \char_str_upper_case:N { \char_str_uppercase:N } -\__kernel_patch_deprecation:nnNNpn { 2021-01-01 } { \char_str_mixed_case:N } +\__kernel_patch_deprecation:nnNNpn { 2022-01-01 } { \char_str_titlecase:N } \cs_gset:Npn \char_str_mixed_case:N { \char_str_titlecase:N } -\__kernel_patch_deprecation:nnNNpn { 2021-01-01 } { \char_str_fold_case:N } +\__kernel_patch_deprecation:nnNNpn { 2022-01-01 } { \char_str_foldcase:N } \cs_gset:Npn \char_str_fold_case:N { \char_str_foldcase:N } % \end{macrocode} % \end{macro} diff --git a/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx b/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx index c2949444822..c2333adb50a 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx @@ -79,7 +79,7 @@ and all files in that bundle must be distributed together. % % \title{The \cls{l3doc} class} % \author{\Team} -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % \maketitle % \tableofcontents % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx b/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx index 3f64b98edf6..bc7bd712ed3 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx @@ -63,7 +63,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx b/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx index a2767d96921..2adec11ca75 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3file.dtx b/Master/texmf-dist/source/latex/l3kernel/l3file.dtx index 274d5da8ecc..65a4d8e2479 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3file.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3file.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3final.dtx b/Master/texmf-dist/source/latex/l3kernel/l3final.dtx index a8677aeb684..14b8affe917 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3final.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3final.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx b/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx index 2f8b6dcc770..e0ce156f1e2 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx index ee6abd5f551..529f5e966b1 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx @@ -40,7 +40,7 @@ % {latex-team@latex-project.org}^^A % }^^A % } -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % \maketitle % % \begin{documentation} diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx index f306cc12c1d..6b430746180 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx index bf0afbf7c4b..89ee175a518 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx @@ -40,7 +40,7 @@ % {latex-team@latex-project.org}^^A % }^^A % } -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx index b6b9e0d7c9a..f596ece141e 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx index d830b74036d..a8fb4bc9294 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx @@ -40,7 +40,7 @@ % {latex-team@latex-project.org}^^A % }^^A % } -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx index 961655d05ad..3134edee748 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx @@ -40,7 +40,7 @@ % {latex-team@latex-project.org}^^A % }^^A % } -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx index e6aab8c3945..fd841bf44e3 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx @@ -40,7 +40,7 @@ % {latex-team@latex-project.org}^^A % }^^A % } -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx index 4c4c31c95e1..6c9228aa92b 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx @@ -40,7 +40,7 @@ % {latex-team@latex-project.org}^^A % }^^A % } -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx index e56642bd6d2..8ed7387fd2d 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx @@ -40,7 +40,7 @@ % {latex-team@latex-project.org}^^A % }^^A % } -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx index 672bfd9c8a4..545a67194fa 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx index 74809e63859..d47a70452af 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx @@ -40,7 +40,7 @@ % {latex-team@latex-project.org}^^A % }^^A % } -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % \maketitle % % \begin{documentation} diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx index fced52d7593..61ef2f4250c 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx @@ -40,7 +40,7 @@ % {latex-team@latex-project.org}^^A % }^^A % } -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx index 44530a1518b..56a9238cc2f 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx @@ -49,7 +49,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx index e7f0675fc95..748a705b3dc 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3int.dtx b/Master/texmf-dist/source/latex/l3kernel/l3int.dtx index bc68230b3f2..c0d70864a5b 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3int.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3int.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx b/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx index 6fc43aad658..9a957da913f 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx b/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx index 98f588a53e5..0aa6beaab81 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx b/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx index 54167b15c25..8045b98036a 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % @@ -270,22 +270,26 @@ % does not trigger an error. % \end{function} % -% \begin{function}{.dim_set:N, .dim_set:c, .dim_gset:N, .dim_gset:c} +% \begin{function}[updated = 2020-01-17] +% {.dim_set:N, .dim_set:c, .dim_gset:N, .dim_gset:c} % \begin{syntax} % \meta{key} .dim_set:N = \meta{dimension} % \end{syntax} % Defines \meta{key} to set \meta{dimension} to \meta{value} (which % must a dimension expression). If the variable does not exist, it -% is created globally at the point that the key is set up. +% is created globally at the point that the key is set up. The key will +% require a value at point-of-use unless a default is set. % \end{function} % -% \begin{function}{.fp_set:N, .fp_set:c, .fp_gset:N, .fp_gset:c} +% \begin{function}[updated = 2020-01-17] +% {.fp_set:N, .fp_set:c, .fp_gset:N, .fp_gset:c} % \begin{syntax} % \meta{key} .fp_set:N = \meta{floating point} % \end{syntax} % Defines \meta{key} to set \meta{floating point} to \meta{value} % (which must a floating point expression). If the variable does not exist, -% it is created globally at the point that the key is set up. +% it is created globally at the point that the key is set up. The key will +% require a value at point-of-use unless a default is set. % \end{function} % % \begin{function}[added = 2013-07-14] @@ -329,13 +333,15 @@ % \end{quote} % \end{function} % -% \begin{function}{.int_set:N, .int_set:c, .int_gset:N, .int_gset:c} +% \begin{function}[updated = 2020-01-17] +% {.int_set:N, .int_set:c, .int_gset:N, .int_gset:c} % \begin{syntax} % \meta{key} .int_set:N = \meta{integer} % \end{syntax} % Defines \meta{key} to set \meta{integer} to \meta{value} (which % must be an integer expression). If the variable does not exist, it -% is created globally at the point that the key is set up. +% is created globally at the point that the key is set up. The key will +% require a value at point-of-use unless a default is set. % \end{function} % % \begin{function}[updated = 2013-07-10]{.meta:n} @@ -382,14 +388,15 @@ % Choices are discussed in detail in section~\ref{sec:l3keys:choice}. % \end{function} % -% \begin{function}[added = 2019-05-05] +% \begin{function}[added = 2019-05-05, updated = 2020-01-17] % {.muskip_set:N, .muskip_set:c, .muskip_gset:N, .muskip_gset:c} % \begin{syntax} % \meta{key} .muskip_set:N = \meta{muskip} % \end{syntax} % Defines \meta{key} to set \meta{muskip} to \meta{value} (which % must be a muskip expression). If the variable does not exist, it -% is created globally at the point that the key is set up. +% is created globally at the point that the key is set up. The key will +% require a value at point-of-use unless a default is set. % \end{function} % % \begin{function}[added = 2019-01-31] @@ -403,13 +410,15 @@ % is created globally at the point that the key is set up. % \end{function} % -% \begin{function}{.skip_set:N, .skip_set:c, .skip_gset:N, .skip_gset:c} +% \begin{function}[updated = 2020-01-17] +% {.skip_set:N, .skip_set:c, .skip_gset:N, .skip_gset:c} % \begin{syntax} % \meta{key} .skip_set:N = \meta{skip} % \end{syntax} % Defines \meta{key} to set \meta{skip} to \meta{value} (which % must be a skip expression). If the variable does not exist, it -% is created globally at the point that the key is set up. +% is created globally at the point that the key is set up. The key will +% require a value at point-of-use unless a default is set. % \end{function} % % \begin{function}{.tl_set:N, .tl_set:c, .tl_gset:N, .tl_gset:c} @@ -1145,7 +1154,7 @@ % One message for the low level parsing system. % \begin{macrocode} \__kernel_msg_new:nnnn { kernel } { misplaced-equals-sign } - { Misplaced~equals~sign~in~key-value~input~\msg_line_number: } + { Misplaced~equals~sign~in~key-value~input~\msg_line_context: } { LaTeX~is~attempting~to~parse~some~key-value~input~but~found~ two~equals~signs~not~separated~by~a~comma. @@ -1591,6 +1600,7 @@ \cs_set_nopar:cpx { \c_@@_default_root_tl \l_keys_path_tl } { \exp_not:n {#1} } + \@@_value_requirement:nn { required } { false } } } % \end{macrocode} @@ -1766,6 +1776,7 @@ % \end{macro} % % \begin{macro}{\@@_variable_set:NnnN, \@@_variable_set:cnnN} +% \begin{macro}{\@@_variable_set_required:NnnN, \@@_variable_set_required:cnnN} % Setting a variable takes the type and scope separately so that % it is easy to make a new variable if needed. % \begin{macrocode} @@ -1780,8 +1791,15 @@ } } \cs_generate_variant:Nn \@@_variable_set:NnnN { c } +\cs_new_protected:Npn \@@_variable_set_required:NnnN #1#2#3#4 + { + \@@_variable_set:NnnN #1 {#2} {#3} #4 + \@@_value_requirement:nn { required } { true } + } +\cs_generate_variant:Nn \@@_variable_set_required:NnnN { c } % \end{macrocode} % \end{macro} +% \end{macro} % % \subsection{Creating key properties} % @@ -1895,13 +1913,13 @@ % Setting a variable is very easy: just pass the data along. % \begin{macrocode} \cs_new_protected:cpn { \c_@@_props_root_tl .dim_set:N } #1 - { \@@_variable_set:NnnN #1 { dim } { } n } + { \@@_variable_set_required:NnnN #1 { dim } { } n } \cs_new_protected:cpn { \c_@@_props_root_tl .dim_set:c } #1 - { \@@_variable_set:cnnN {#1} { dim } { } n } + { \@@_variable_set_required:cnnN {#1} { dim } { } n } \cs_new_protected:cpn { \c_@@_props_root_tl .dim_gset:N } #1 - { \@@_variable_set:NnnN #1 { dim } { g } n } + { \@@_variable_set_required:NnnN #1 { dim } { g } n } \cs_new_protected:cpn { \c_@@_props_root_tl .dim_gset:c } #1 - { \@@_variable_set:cnnN {#1} { dim } { g } n } + { \@@_variable_set_required:cnnN {#1} { dim } { g } n } % \end{macrocode} % \end{macro} % \end{macro} @@ -1911,13 +1929,13 @@ % Setting a variable is very easy: just pass the data along. % \begin{macrocode} \cs_new_protected:cpn { \c_@@_props_root_tl .fp_set:N } #1 - { \@@_variable_set:NnnN #1 { fp } { } n } + { \@@_variable_set_required:NnnN #1 { fp } { } n } \cs_new_protected:cpn { \c_@@_props_root_tl .fp_set:c } #1 - { \@@_variable_set:cnnN {#1} { fp } { } n } + { \@@_variable_set_required:cnnN {#1} { fp } { } n } \cs_new_protected:cpn { \c_@@_props_root_tl .fp_gset:N } #1 - { \@@_variable_set:NnnN #1 { fp } { g } n } + { \@@_variable_set_required:NnnN #1 { fp } { g } n } \cs_new_protected:cpn { \c_@@_props_root_tl .fp_gset:c } #1 - { \@@_variable_set:cnnN {#1} { fp } { g } n } + { \@@_variable_set_required:cnnN {#1} { fp } { g } n } % \end{macrocode} % \end{macro} % \end{macro} @@ -1957,13 +1975,13 @@ % Setting a variable is very easy: just pass the data along. % \begin{macrocode} \cs_new_protected:cpn { \c_@@_props_root_tl .int_set:N } #1 - { \@@_variable_set:NnnN #1 { int } { } n } + { \@@_variable_set_required:NnnN #1 { int } { } n } \cs_new_protected:cpn { \c_@@_props_root_tl .int_set:c } #1 - { \@@_variable_set:cnnN {#1} { int } { } n } + { \@@_variable_set_required:cnnN {#1} { int } { } n } \cs_new_protected:cpn { \c_@@_props_root_tl .int_gset:N } #1 - { \@@_variable_set:NnnN #1 { int } { g } n } + { \@@_variable_set_required:NnnN #1 { int } { g } n } \cs_new_protected:cpn { \c_@@_props_root_tl .int_gset:c } #1 - { \@@_variable_set:cnnN {#1} { int } { g } n } + { \@@_variable_set_required:cnnN {#1} { int } { g } n } % \end{macrocode} % \end{macro} % \end{macro} @@ -2012,13 +2030,13 @@ % Setting a variable is very easy: just pass the data along. % \begin{macrocode} \cs_new_protected:cpn { \c_@@_props_root_tl .muskip_set:N } #1 - { \@@_variable_set:NnnN #1 { muskip } { } n } + { \@@_variable_set_required:NnnN #1 { muskip } { } n } \cs_new_protected:cpn { \c_@@_props_root_tl .muskip_set:c } #1 - { \@@_variable_set:cnnN {#1} { muskip } { } n } + { \@@_variable_set_required:cnnN {#1} { muskip } { } n } \cs_new_protected:cpn { \c_@@_props_root_tl .muskip_gset:N } #1 - { \@@_variable_set:NnnN #1 { muskip } { g } n } + { \@@_variable_set_required:NnnN #1 { muskip } { g } n } \cs_new_protected:cpn { \c_@@_props_root_tl .muskip_gset:c } #1 - { \@@_variable_set:cnnN {#1} { muskip } { g } n } + { \@@_variable_set_required:cnnN {#1} { muskip } { g } n } % \end{macrocode} % \end{macro} % @@ -2041,13 +2059,13 @@ % Setting a variable is very easy: just pass the data along. % \begin{macrocode} \cs_new_protected:cpn { \c_@@_props_root_tl .skip_set:N } #1 - { \@@_variable_set:NnnN #1 { skip } { } n } + { \@@_variable_set_required:NnnN #1 { skip } { } n } \cs_new_protected:cpn { \c_@@_props_root_tl .skip_set:c } #1 - { \@@_variable_set:cnnN {#1} { skip } { } n } + { \@@_variable_set_required:cnnN {#1} { skip } { } n } \cs_new_protected:cpn { \c_@@_props_root_tl .skip_gset:N } #1 - { \@@_variable_set:NnnN #1 { skip } { g } n } + { \@@_variable_set_required:NnnN #1 { skip } { g } n } \cs_new_protected:cpn { \c_@@_props_root_tl .skip_gset:c } #1 - { \@@_variable_set:cnnN {#1} { skip } { g } n } + { \@@_variable_set_required:cnnN {#1} { skip } { g } n } % \end{macrocode} % \end{macro} % \end{macro} @@ -2711,7 +2729,7 @@ \cs_set:Npn \@@_trim_spaces_auxiii:w #1 / { \quark_if_recursion_tail_stop:n {#1} - \tl_trim_spaces:n { / #1 } + / \tl_trim_spaces:n { #1 } \@@_trim_spaces_auxiii:w } % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/l3kernel/l3legacy.dtx b/Master/texmf-dist/source/latex/l3kernel/l3legacy.dtx index 21d6fe5146b..5fe0f559cac 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3legacy.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3legacy.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx b/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx index a9f1f0c0a3d..76e8fbf1065 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx b/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx index 3b52246c27d..508b11101f1 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3names.dtx b/Master/texmf-dist/source/latex/l3kernel/l3names.dtx index cce95b98661..b5794158df4 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3names.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3names.dtx @@ -2,7 +2,7 @@ % %% File: l3names.dtx % -% Copyright (C) 1990-2019 The LaTeX3 project +% Copyright (C) 1990-2020 The LaTeX3 Project % % It may be distributed and/or modified under the conditions of the % LaTeX Project Public License (LPPL), either version 1.3c of this @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx b/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx index 6a503a97f6c..00d03322d6d 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx b/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx index 445695ac0f8..5149bccfc23 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx b/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx index d3ee404a2f8..b299651b81e 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx b/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx index f096c3e65de..a52cc40cbb6 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx b/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx index bc21d02688a..915f118057d 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx b/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx index cbb2345e78f..28606e8c4cd 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx b/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx index 1cb084742bb..b16baf2834b 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3str-convert.dtx b/Master/texmf-dist/source/latex/l3kernel/l3str-convert.dtx index 07343492cd0..78216f73590 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3str-convert.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3str-convert.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3str.dtx b/Master/texmf-dist/source/latex/l3kernel/l3str.dtx index 9947592862c..ddcffc9a0a6 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3str.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3str.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx b/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx index 12ebc542a50..df4921bdf69 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3text-case.dtx b/Master/texmf-dist/source/latex/l3kernel/l3text-case.dtx index 3c608eacb9e..06d6e541352 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3text-case.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3text-case.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3text.dtx b/Master/texmf-dist/source/latex/l3kernel/l3text.dtx index 0efc072cf89..ba97945154a 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3text.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3text.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % @@ -77,6 +77,19 @@ % expansion % \end{function} % +% \begin{function}[added = 2020-01-22] +% { +% \text_declare_expand_equivalent:Nn , +% \text_declare_expand_equivalent:cn +% } +% \begin{syntax} +% \cs{text_declare_expand_equivalent:Nn} \meta{cmd} \Arg{replacement} +% \end{syntax} +% Declares that the \meta{replacement} tokens should be used whenever the +% \meta{cmd} (a single token) is encountered. The \meta{replacement} tokens +% should be expandable. +% \end{function} +% % \subsection{Case changing} % % \begin{function}[EXP, added = 2019-11-20] @@ -189,8 +202,7 @@ % \end{variable} % % \begin{variable}{\l_text_expand_exclude_tl} -% Lists commands which are excluded from expansion. (Defined only for the -% \LaTeXe{} package.) +% Lists commands which are excluded from expansion. % \end{variable} % % \end{documentation} @@ -426,7 +438,7 @@ % Non-text arguments. % \begin{macrocode} \tl_new:N \l_text_case_exclude_arg_tl -\tl_set:Nn \l_text_case_exclude_arg_tl { \cite \label \ref } +\tl_set:Nn \l_text_case_exclude_arg_tl { \begin \cite \end \label \ref } % \end{macrocode} % \end{variable} % @@ -449,8 +461,8 @@ % \begin{variable}{\l_text_expand_exclude_tl} % Commands which need not to expand. % \begin{macrocode} -%<*package> \tl_new:N \l_text_expand_exclude_tl +%<*package> \tl_set:Nn \l_text_expand_exclude_tl { \cite \label \ref } % @@ -523,7 +535,10 @@ % } % \begin{macro}[EXP]{\@@_expand_protect:nN} % \begin{macro}[EXP]{\@@_expand_protect:Nw} +% \begin{macro}[EXP]{\@@_expand_replace:N} +% \begin{macro}[EXP]{\@@_expand_replace:n} % \begin{macro}[EXP]{\@@_expand_cs_expand:N} +% \begin{macro}[EXP]{\@@_expand_noexpand:n} % After precautions against |&| tokens, start a simple loop: that of % course means that \enquote{text} cannot contain the two recursion % quarks. The loop here must be \texttt{f}-type expandable; we have @@ -835,7 +850,7 @@ { \str_if_eq:nnTF {#1} { \protect } { \@@_expand_protect:N } - { \@@_expand_cs_expand:N #1 } + { \@@_expand_replace:N #1 } } \cs_new:Npn \@@_expand_protect:N #1 { @@ -856,18 +871,47 @@ \@@_expand_loop:w } % \end{macrocode} +% See if there is a dedicated replacement, and if there is, insert it. +% \begin{macrocode} +\cs_new:Npn \@@_expand_replace:N #1 + { + \bool_lazy_and:nnTF + { \cs_if_exist_p:c { l_@@_expand_ \token_to_str:N #1 _tl } } + { + \bool_lazy_or_p:nn + { \token_if_cs_p:N #1 } + { \token_if_active_p:N #1 } + } + { + \exp_args:Nv \@@_expand_replace:n + { l_@@_expand_ \token_to_str:N #1 _tl } + } + { \@@_expand_cs_expand:N #1 } + } +\cs_new:Npn \@@_expand_replace:n #1 { \@@_expand_loop:w #1 } +% \end{macrocode} % Finally, expand any macros which can be: this then loops back around to -% deal with what they produce. +% deal with what they produce. The only issue is if the token is +% \cs{exp_not:n}, as that must apply to the following balanced text. % \begin{macrocode} \cs_new:Npn \@@_expand_cs_expand:N #1 { \@@_if_expandable:NTF #1 - { \exp_after:wN \@@_expand_loop:w #1 } + { + \str_if_eq:nnTF {#1} { \exp_not:n } + { \@@_expand_noexpand:n } + { \exp_after:wN \@@_expand_loop:w #1 } + } { \@@_expand_store:n {#1} \@@_expand_loop:w } } +\cs_new:Npn \@@_expand_noexpand:n #1 + { + \@@_expand_store:n {#1} + \@@_expand_loop:w + } % \end{macrocode} % \end{macro} % \end{macro} @@ -893,6 +937,38 @@ % \end{macro} % \end{macro} % \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro} +% { +% \text_declare_expand_equivalent:Nn , +% \text_declare_expand_equivalent:cn +% } +% Create equivalents to allow replacement. +% \begin{macrocode} +\cs_new_protected:Npn \text_declare_expand_equivalent:Nn #1#2 + { + \tl_clear_new:c { l_@@_expand_ \token_to_str:N #1 _tl } + \tl_set:cn { l_@@_expand_ \token_to_str:N #1 _tl } {#2} + } +\cs_generate_variant:Nn \text_declare_expand_equivalent:Nn { c } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}[EXP]{\@@_expand_textcomp:NN} +% Filter out \pkg{textcomp}-like commands. +% \begin{macrocode} +%<*package> +\cs_new:Npn \@@_expand_textcomp:NN #1#2 { \exp_not:n {#1} } +\text_declare_expand_equivalent:cn { ?-cmd } { \@@_expand_textcomp:NN } +\text_declare_expand_equivalent:cn { T1-cmd } { \@@_expand_textcomp:NN } +\text_declare_expand_equivalent:cn { TS1-cmd } { \@@_expand_textcomp:NN } +\text_declare_expand_equivalent:cn { TU-cmd } { \@@_expand_textcomp:NN } +% +% \end{macrocode} +% \end{macro} % % \begin{macrocode} % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx b/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx index e9f36e03b8f..f744c4be17d 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx b/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx index a564e6eca3e..21998dae31f 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3token.dtx b/Master/texmf-dist/source/latex/l3kernel/l3token.dtx index 93b1e6ffc55..68f849ae54c 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3token.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3token.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx b/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx index 383826eaeb4..c02f0d5592b 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-12} +% \date{Released 2020-01-22} % % \maketitle % -- cgit v1.2.3