texlive[63815] Master/texmf-dist: l3kernel (5jul22)

commits+karl at tug.org commits+karl at tug.org
Tue Jul 5 21:47:59 CEST 2022


Revision: 63815
          http://tug.org/svn/texlive?view=revision&revision=63815
Author:   karl
Date:     2022-07-05 21:47:58 +0200 (Tue, 05 Jul 2022)
Log Message:
-----------
l3kernel (5jul22)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/l3kernel/CHANGELOG.md
    trunk/Master/texmf-dist/doc/latex/l3kernel/README.md
    trunk/Master/texmf-dist/doc/latex/l3kernel/expl3.pdf
    trunk/Master/texmf-dist/doc/latex/l3kernel/interface3.pdf
    trunk/Master/texmf-dist/doc/latex/l3kernel/interface3.tex
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3doc.pdf
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3docstrip.pdf
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3news.pdf
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3news01.pdf
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3news02.pdf
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3news03.pdf
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3news04.pdf
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3news05.pdf
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3news06.pdf
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3news07.pdf
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3news08.pdf
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3news09.pdf
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3news10.pdf
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3news11.pdf
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3news12.pdf
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3prefixes.pdf
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.pdf
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.tex
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.pdf
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.tex
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.pdf
    trunk/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.tex
    trunk/Master/texmf-dist/doc/latex/l3kernel/source3.pdf
    trunk/Master/texmf-dist/doc/latex/l3kernel/source3.tex
    trunk/Master/texmf-dist/source/latex/l3kernel/expl3.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3box.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3cctab.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3color.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3debug.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3file.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3int.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3legacy.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3names.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3pdf.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3str-convert.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3str.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3text-case.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3text-purify.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3text.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3token.dtx
    trunk/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx
    trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex
    trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex
    trunk/Master/texmf-dist/tex/latex/l3kernel/expl3.ltx
    trunk/Master/texmf-dist/tex/latex/l3kernel/expl3.sty

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/CHANGELOG.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3kernel/CHANGELOG.md	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/CHANGELOG.md	2022-07-05 19:47:58 UTC (rev 63815)
@@ -7,6 +7,13 @@
 
 ## [Unreleased]
 
+## [2022-07-04]
+
+### Added
+- `\text_declare_case_equivalent:Nn`, `\text_case_switch:nnnn` and
+  related mechanism to allow specialisation of case changing output
+  for selected commands
+
 ## [2022-07-01]
 
 ### Added
@@ -1140,7 +1147,8 @@
 - Step functions have been added for dim variables,
   e.g. `\dim_step_inline:nnnn`
 
-[Unreleased]: https://github.com/latex3/latex3/compare/2022-07-01...HEAD
+[Unreleased]: https://github.com/latex3/latex3/compare/2022-07-04...HEAD
+[2022-07-04]: https://github.com/latex3/latex3/compare/2022-07-01...2022-07-04
 [2022-07-01]: https://github.com/latex3/latex3/compare/2022-06-16...2022-07-01
 [2022-06-16]: https://github.com/latex3/latex3/compare/2022-06-02...2022-06-16
 [2022-06-02]: https://github.com/latex3/latex3/compare/2022-05-30...2022-06-02

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3kernel/README.md	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/README.md	2022-07-05 19:47:58 UTC (rev 63815)
@@ -1,7 +1,7 @@
 LaTeX3 Programming Conventions
 ==============================
 
-Release 2022-07-01
+Release 2022-07-04
 
 Overview
 --------

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/expl3.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/interface3.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/interface3.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3kernel/interface3.tex	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/interface3.tex	2022-07-05 19:47:58 UTC (rev 63815)
@@ -54,7 +54,7 @@
          {latex-team at latex-project.org}%
    }%
 }
-\date{Released 2022-07-01}
+\date{Released 2022-07-04}
 
 \pagenumbering{roman}
 \maketitle

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3doc.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3docstrip.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3news.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3news01.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3news02.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3news03.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3news04.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3news05.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3news06.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3news07.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3news08.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3news09.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3news10.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3news11.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3news12.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3prefixes.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.tex	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.tex	2022-07-05 19:47:58 UTC (rev 63815)
@@ -32,7 +32,7 @@
         {latex-team at latex-project.org}%
     }%
 }
-\date{Released 2022-07-01}
+\date{Released 2022-07-04}
 
 \begin{document}
 

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.tex	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.tex	2022-07-05 19:47:58 UTC (rev 63815)
@@ -32,7 +32,7 @@
         {latex-team at latex-project.org}%
     }%
 }
-\date{Released 2022-07-01}
+\date{Released 2022-07-04}
 
 \newcommand{\TF}{\textit{(TF)}}
 

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.tex	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.tex	2022-07-05 19:47:58 UTC (rev 63815)
@@ -32,7 +32,7 @@
         {latex-team at latex-project.org}%
     }%
 }
-\date{Released 2022-07-01}
+\date{Released 2022-07-04}
 
 \newcommand{\TF}{\textit{(TF)}}
 
@@ -125,7 +125,7 @@
 \meta{argument} describes parameters that the macro expects, such as
 |#1#2#3|, and \meta{replacement} describes how the parameters are
 manipulated, such as~|\int_eval:n{#2+#1*#3}|.  This information can be
-accessed by \cs{cs_prefix_spec:N}, \cs{cs_argument_spec:N},
+accessed by \cs{cs_prefix_spec:N}, \cs{cs_parameter_spec:N},
 \cs{cs_replacement_spec:N}.
 
 When a macro takes an undelimited argument, explicit space characters

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/source3.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/source3.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3kernel/source3.tex	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/source3.tex	2022-07-05 19:47:58 UTC (rev 63815)
@@ -53,7 +53,7 @@
          {latex-team at latex-project.org}%
    }%
 }
-\date{Released 2022-07-01}
+\date{Released 2022-07-04}
 
 \pagenumbering{roman}
 \maketitle

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/expl3.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/expl3.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/expl3.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -24,7 +24,7 @@
 %
 %<*driver|generic|package|2ekernel>
 %</driver|generic|package|2ekernel>
-\def\ExplFileDate{2022-07-01}%
+\def\ExplFileDate{2022-07-04}%
 %<*driver>
 \documentclass[full]{l3doc}
 \usepackage{graphicx}
@@ -51,7 +51,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3box.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3box.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3box.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -44,7 +44,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3cctab.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3cctab.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3cctab.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -44,7 +44,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3color.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3color.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3color.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3debug.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3debug.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3debug.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -85,7 +85,7 @@
 %    require you to do updates, if the class changes.}}
 %
 % \author{\Team}
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 % \maketitle
 % \tableofcontents
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -63,7 +63,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3file.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3file.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3file.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -44,7 +44,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -40,7 +40,7 @@
 %          {latex-team at latex-project.org}^^A
 %    }^^A
 % }
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 % \maketitle
 %
 % \begin{documentation}

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -40,7 +40,7 @@
 %          {latex-team at latex-project.org}^^A
 %    }^^A
 % }
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -40,7 +40,7 @@
 %          {latex-team at latex-project.org}^^A
 %    }^^A
 % }
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -40,7 +40,7 @@
 %          {latex-team at latex-project.org}^^A
 %    }^^A
 % }
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -40,7 +40,7 @@
 %          {latex-team at latex-project.org}^^A
 %    }^^A
 % }
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -40,7 +40,7 @@
 %          {latex-team at latex-project.org}^^A
 %    }^^A
 % }
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -40,7 +40,7 @@
 %          {latex-team at latex-project.org}^^A
 %    }^^A
 % }
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -40,7 +40,7 @@
 %          {latex-team at latex-project.org}^^A
 %    }^^A
 % }
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 % \maketitle
 %
 % \begin{documentation}

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -40,7 +40,7 @@
 %          {latex-team at latex-project.org}^^A
 %    }^^A
 % }
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -49,7 +49,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -44,7 +44,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3int.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3int.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3int.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -44,7 +44,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3legacy.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3legacy.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3legacy.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3names.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3names.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3names.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3pdf.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3pdf.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3pdf.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -44,7 +44,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3str-convert.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3str-convert.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3str-convert.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -44,7 +44,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3str.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3str.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3str.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3text-case.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3text-case.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3text-case.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %
@@ -151,8 +151,17 @@
 % \begin{macro}[EXP]{\@@_change_case_exclude:nnNN}
 % \begin{macro}[EXP]{\@@_change_case_exclude:nnNw}
 % \begin{macro}[EXP]{\@@_change_case_exclude:nnNnn}
+% \begin{macro}[EXP]{\@@_change_case_replace:nnN}
+% \begin{macro}[EXP]{\@@_change_case_replace:nnn}
+% \begin{macro}[EXP]{\@@_change_case_switch:nnN}
 % \begin{macro}[EXP]
 %   {
+%     \@@_change_case_switch_lower:nnNnnnn ,
+%     \@@_change_case_switch_upper:nnNnnnn ,
+%     \@@_change_case_switch_title:nnNnnnn
+%   }
+% \begin{macro}[EXP]
+%   {
 %     \@@_change_case_letterlike_lower:nnN ,
 %     \@@_change_case_letterlike_upper:nnN ,
 %     \@@_change_case_letterlike_title:nnN ,
@@ -446,7 +455,7 @@
 \cs_new:Npn \@@_change_case_exclude:nnNN #1#2#3#4
   {
     \@@_if_recursion_tail_stop_do:Nn #4
-      { \use:c { @@_change_case_letterlike_ #1 :nnN } {#1} {#2} #3 }
+      { \@@_change_case_replace:nnN {#1} {#2} #3 }
     \str_if_eq:nnTF {#3} {#4}
       {
         \@@_use_i_delimit_by_q_recursion_stop:nw
@@ -471,6 +480,45 @@
     \@@_change_case_loop:nnw {#1} {#2}
   }
 %    \end{macrocode}
+%   Deal with any specialist replacement for case changing.
+%    \begin{macrocode}
+\cs_new:Npn \@@_change_case_replace:nnN #1#2#3
+  {
+    \cs_if_exist:cTF { l_@@_case_ \token_to_str:N #3 _tl }
+      {
+        \exp_args:Nv \@@_change_case_replace:nnn
+          { l_@@_case_ \token_to_str:N #3 _tl } {#1} {#2}
+      }
+      { \@@_change_case_switch:nnN {#1} {#2} #3 }
+  }
+\cs_new:Npn \@@_change_case_replace:nnn #1#2#3
+  { \@@_change_case_loop:nnw {#2} {#3} #1 }
+%    \end{macrocode}
+%   Allow for manually-controlled case switching.
+%    \begin{macrocode}
+\cs_new:Npn \@@_change_case_switch:nnN #1#2#3
+  {
+    \cs_if_eq:NNTF #3 \text_case_switch:nnnn
+      { \use:c { @@_change_case_switch_ #1 :nnNnnnn  } }
+      { \use:c { @@_change_case_letterlike_ #1 :nnN } }
+        {#1} {#2} #3
+  }
+\cs_new:Npn \@@_change_case_switch_lower:nnNnnnn #1#2#3#4#5#6#7
+  {
+    \@@_change_case_store:n {#5}
+    \@@_change_case_loop:nnw {#1} {#2}
+  }
+\cs_new:Npn \@@_change_case_switch_upper:nnNnnnn #1#2#3#4#5#6#7
+  {
+    \@@_change_case_store:n {#6}
+    \@@_change_case_loop:nnw {#1} {#2}
+  }
+\cs_new:Npn \@@_change_case_switch_title:nnNnnnn #1#2#3#4#5#6#7
+  {
+    \@@_change_case_store:n {#7}
+    \@@_change_case_loop:nnw {#1} {#2}
+  }
+%    \end{macrocode}
 %  Letter-like commands may still be present: they are set up using a simple
 %  lookup approach, so can easily be handled with no loop. If there is no
 %  hit, we are at the end of the process: we loop around. Letter-like chars
@@ -771,7 +819,36 @@
 % \end{macro}
 % \end{macro}
 % \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
 %
+% \begin{macro}{\text_declare_case_equivalent:Nn}
+%  Create equivalents to allow replacement.
+%    \begin{macrocode}
+\cs_new_protected:Npn \text_declare_case_equivalent:Nn #1#2
+  {
+    \tl_clear_new:c { l_@@_case_ \token_to_str:N #1 _tl }
+    \tl_set:cn { l_@@_case_ \token_to_str:N #1 _tl } {#2}
+  }
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\text_case_switch:nnnn}
+% \begin{macro}{\@@_case_switch_marker:}
+%   Set up the mechanism for manual case switching.
+%    \begin{macrocode}
+\cs_new:Npn \text_case_switch:nnnn #1#2#3#4
+  {
+    \@@_case_switch_marker:
+    #1
+  }
+\cs_new:Npn \@@_case_switch_marker: { }
+%    \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
 % \begin{macro}[EXP]{\@@_change_case_upper_de-x-eszett:nnnN, \@@_change_case_upper_de-alt:nnnN}
 % \begin{macro}[EXP]{\@@_change_case_upper_de-x-eszett:nnnNN}
 %   A simple alternative version for German.

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3text-purify.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3text-purify.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3text-purify.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3text.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3text.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3text.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %
@@ -205,6 +205,29 @@
 %  character is uppercased, and the rest lowercased, irrespective of the nature
 %  of the character.
 %
+% \begin{function}[added = 2022-07-04]
+%   {
+%     \text_declare_case_equivalent:Nn ,
+%     \text_declare_case_equivalent:cn
+%   }
+%   \begin{syntax}
+%     \cs{text_declare_case_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 during case changing.
+% \end{function}
+%
+% \begin{function}[EXP, added = 2022-07-04]{\text_case_switch:nnnn}
+%   \begin{syntax}
+%     \cs{text_case_switch:nnnn} \Arg{normal} \Arg{upper} \Arg{lower} \Arg{title}
+%   \end{syntax}
+%   Context-sensitive function which will expand to one of the \meta{normal},
+%   \meta{upper}, \meta{lower} or \meta{title} tokens depending on the current
+%   case changing operation. Outside of case changing, the \meta{normal} tokens
+%   are produced. Within case changing, the appropriate mapping tokens are
+%   inserted.
+% \end{function}
+%
 % \section{Removing formatting from text}
 %
 % \begin{function}[EXP, added = 2020-03-05, updated = 2020-05-14]{\text_purify:n}
@@ -945,6 +968,7 @@
       {
         \exp_not:V \l_text_math_arg_tl
         \exp_not:V \l_text_expand_exclude_tl
+        \exp_not:N \text_case_switch:nnnn
       }
     #1
   }

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -44,7 +44,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3token.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3token.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3token.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -43,7 +43,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2022-07-01}
+% \date{Released 2022-07-04}
 %
 % \maketitle
 %

Modified: trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex	2022-07-05 19:47:58 UTC (rev 63815)
@@ -70,7 +70,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: expl3.dtx
-\def\ExplFileDate{2022-07-01}%
+\def\ExplFileDate{2022-07-04}%
 \begingroup
   \def\next{\endgroup}%
   \expandafter\ifx\csname PackageError\endcsname\relax
@@ -32121,6 +32121,7 @@
       {
         \exp_not:V \l_text_math_arg_tl
         \exp_not:V \l_text_expand_exclude_tl
+        \exp_not:N \text_case_switch:nnnn
       }
     #1
   }
@@ -32534,7 +32535,7 @@
 \cs_new:Npn \__text_change_case_exclude:nnNN #1#2#3#4
   {
     \__text_if_recursion_tail_stop_do:Nn #4
-      { \use:c { __text_change_case_letterlike_ #1 :nnN } {#1} {#2} #3 }
+      { \__text_change_case_replace:nnN {#1} {#2} #3 }
     \str_if_eq:nnTF {#3} {#4}
       {
         \__text_use_i_delimit_by_q_recursion_stop:nw
@@ -32558,6 +32559,39 @@
       }
     \__text_change_case_loop:nnw {#1} {#2}
   }
+\cs_new:Npn \__text_change_case_replace:nnN #1#2#3
+  {
+    \cs_if_exist:cTF { l__text_case_ \token_to_str:N #3 _tl }
+      {
+        \exp_args:Nv \__text_change_case_replace:nnn
+          { l__text_case_ \token_to_str:N #3 _tl } {#1} {#2}
+      }
+      { \__text_change_case_switch:nnN {#1} {#2} #3 }
+  }
+\cs_new:Npn \__text_change_case_replace:nnn #1#2#3
+  { \__text_change_case_loop:nnw {#2} {#3} #1 }
+\cs_new:Npn \__text_change_case_switch:nnN #1#2#3
+  {
+    \cs_if_eq:NNTF #3 \text_case_switch:nnnn
+      { \use:c { __text_change_case_switch_ #1 :nnNnnnn  } }
+      { \use:c { __text_change_case_letterlike_ #1 :nnN } }
+        {#1} {#2} #3
+  }
+\cs_new:Npn \__text_change_case_switch_lower:nnNnnnn #1#2#3#4#5#6#7
+  {
+    \__text_change_case_store:n {#5}
+    \__text_change_case_loop:nnw {#1} {#2}
+  }
+\cs_new:Npn \__text_change_case_switch_upper:nnNnnnn #1#2#3#4#5#6#7
+  {
+    \__text_change_case_store:n {#6}
+    \__text_change_case_loop:nnw {#1} {#2}
+  }
+\cs_new:Npn \__text_change_case_switch_title:nnNnnnn #1#2#3#4#5#6#7
+  {
+    \__text_change_case_store:n {#7}
+    \__text_change_case_loop:nnw {#1} {#2}
+  }
 \cs_new:Npn \__text_change_case_letterlike_lower:nnN #1#2#3
   { \__text_change_case_letterlike:nnnnN {#1} {#1} {#1} {#2} #3 }
 \cs_new_eq:NN \__text_change_case_letterlike_upper:nnN
@@ -32773,6 +32807,17 @@
   \__text_change_case_char_next_lower:nn
 \cs_new:Npn \__text_change_case_char_next_end:nn #1#2
   { \__text_change_case_break:w }
+\cs_new_protected:Npn \text_declare_case_equivalent:Nn #1#2
+  {
+    \tl_clear_new:c { l__text_case_ \token_to_str:N #1 _tl }
+    \tl_set:cn { l__text_case_ \token_to_str:N #1 _tl } {#2}
+  }
+\cs_new:Npn \text_case_switch:nnnn #1#2#3#4
+  {
+    \__text_case_switch_marker:
+    #1
+  }
+\cs_new:Npn \__text_case_switch_marker: { }
 \bool_lazy_or:nnTF
   { \sys_if_engine_luatex_p: }
   { \sys_if_engine_xetex_p: }

Modified: trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex	2022-07-05 19:47:58 UTC (rev 63815)
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: expl3.dtx
-\def\ExplFileDate{2022-07-01}%
+\def\ExplFileDate{2022-07-04}%
 \let\ExplLoaderFileDate\ExplFileDate
 \begingroup
   \catcode`\_=11

Modified: trunk/Master/texmf-dist/tex/latex/l3kernel/expl3.ltx
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/expl3.ltx	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/expl3.ltx	2022-07-05 19:47:58 UTC (rev 63815)
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: expl3.dtx
-\def\ExplFileDate{2022-07-01}%
+\def\ExplFileDate{2022-07-04}%
 \let\ExplLoaderFileDate\ExplFileDate
 \begingroup
   \catcode`\_=11

Modified: trunk/Master/texmf-dist/tex/latex/l3kernel/expl3.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/expl3.sty	2022-07-05 19:47:07 UTC (rev 63814)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/expl3.sty	2022-07-05 19:47:58 UTC (rev 63815)
@@ -19,7 +19,7 @@
 %% and all files in that bundle must be distributed together.
 %% 
 %% File: expl3.dtx
-\def\ExplFileDate{2022-07-01}%
+\def\ExplFileDate{2022-07-04}%
 \let\ExplLoaderFileDate\ExplFileDate
 \ProvidesPackage{expl3}
   [%



More information about the tex-live-commits mailing list.