texlive[67394] Master/texmf-dist: l3kernel (17jun23)
commits+karl at tug.org
commits+karl at tug.org
Sat Jun 17 21:59:40 CEST 2023
Revision: 67394
http://tug.org/svn/texlive?view=revision&revision=67394
Author: karl
Date: 2023-06-17 21:59:40 +0200 (Sat, 17 Jun 2023)
Log Message:
-----------
l3kernel (17jun23)
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-map.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 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/CHANGELOG.md 2023-06-17 19:59:40 UTC (rev 67394)
@@ -7,6 +7,18 @@
## [Unreleased]
+## [2023-06-16]
+
+### Changed
+- Exclude entries in `\l_text_case_exclude_arg_tl` from expansion in `\text_expand:n`
+ (latex3/latex2e\#904)
+- Generate _dialytika_ if appropriate when uppercasing Greek words starting with a
+ vowel taking a breathing mark (issue \#1228)
+- Retain stress diacritics when uppercasing Greek (issue \#1230)
+- Expand (partial) paths in `\l_file_search_path_seq` and `\input at path`
+ (see latex3/latex2e\#1086)
+
+
## [2023-06-05]
### Added
@@ -1451,7 +1463,8 @@
- Step functions have been added for dim variables,
e.g. `\dim_step_inline:nnnn`
-[Unreleased]: https://github.com/latex3/latex3/compare/2023-06-05...HEAD
+[Unreleased]: https://github.com/latex3/latex3/compare/2023-06-16...HEAD
+[2023-06-16]: https://github.com/latex3/latex3/compare/2023-06-05...2023-06-16
[2023-06-05]: https://github.com/latex3/latex3/compare/2023-05-22...2023-06-05
[2023-05-22]: https://github.com/latex3/latex3/compare/2023-05-15...2023-05-22
[2023-05-15]: https://github.com/latex3/latex3/compare/2023-05-11...2023-05-15
Modified: trunk/Master/texmf-dist/doc/latex/l3kernel/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3kernel/README.md 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/README.md 2023-06-17 19:59:40 UTC (rev 67394)
@@ -1,7 +1,7 @@
LaTeX3 Programming Conventions
==============================
-Release 2023-06-05
+Release 2023-06-16
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 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/interface3.tex 2023-06-17 19:59:40 UTC (rev 67394)
@@ -62,7 +62,7 @@
{latex-team at latex-project.org}%
}%
}
-\date{Released 2023-06-05}
+\date{Released 2023-06-16}
\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 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.tex 2023-06-17 19:59:40 UTC (rev 67394)
@@ -32,7 +32,7 @@
{latex-team at latex-project.org}%
}%
}
-\date{Released 2023-06-05}
+\date{Released 2023-06-16}
\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 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.tex 2023-06-17 19:59:40 UTC (rev 67394)
@@ -32,7 +32,7 @@
{latex-team at latex-project.org}%
}%
}
-\date{Released 2023-06-05}
+\date{Released 2023-06-16}
\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 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.tex 2023-06-17 19:59:40 UTC (rev 67394)
@@ -32,7 +32,7 @@
{latex-team at latex-project.org}%
}%
}
-\date{Released 2023-06-05}
+\date{Released 2023-06-16}
\newcommand{\TF}{\textit{(TF)}}
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 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/doc/latex/l3kernel/source3.tex 2023-06-17 19:59:40 UTC (rev 67394)
@@ -53,7 +53,7 @@
{latex-team at latex-project.org}%
}%
}
-\date{Released 2023-06-05}
+\date{Released 2023-06-16}
\pagenumbering{roman}
\maketitle
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/expl3.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/expl3.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/expl3.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -24,7 +24,7 @@
%
%<*driver|generic|package|2ekernel>
%</driver|generic|package|2ekernel>
-\def\ExplFileDate{2023-06-05}%
+\def\ExplFileDate{2023-06-16}%
%<*driver>
\documentclass[full]{l3doc}
\usepackage{graphicx}
@@ -51,7 +51,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3box.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3box.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3box.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3cctab.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3cctab.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3cctab.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3color.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3color.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3color.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3debug.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3debug.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3debug.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -85,7 +85,7 @@
% require you to do updates, if the class changes.}}
%
% \author{\Team}
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
% \maketitle
% \tableofcontents
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -63,7 +63,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3file.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3file.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3file.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
@@ -690,12 +690,11 @@
% |--jobname|, for example).
% \end{variable}
%
-% \begin{variable}[added = 2017-06-18]{\l_file_search_path_seq}
+% \begin{variable}[added = 2017-06-18, updated = 2023-06-15]
+% {\l_file_search_path_seq}
% Each entry is the path to a directory which should be searched when
-% seeking a file. Each path can be relative or absolute, and should
-% not include the trailing slash. The entries are not expanded when
-% used so may contain active characters but should not feature any
-% variable content. Spaces need not be quoted.
+% seeking a file. Each path can be relative or absolute, and need
+% not include the trailing slash. Spaces need not be quoted.
%
% \begin{texnote}
% When working as a package in \LaTeXe{}, \pkg{expl3} will
@@ -2962,10 +2961,7 @@
\cs_new:Npn \@@_full_name_aux:Nnn #1#2#3
{
\exp_args:Ne \@@_full_name_aux:nN
- {
- \exp_args:Ne \@@_full_name_slash:n
- { \tl_to_str:n {#3} } #2
- }
+ { \@@_full_name_slash:n {#3} #2 }
#1
}
\cs_new:Npn \@@_full_name_slash:n #1
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -40,7 +40,7 @@
% {latex-team at latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
% \maketitle
%
% \begin{documentation}
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -40,7 +40,7 @@
% {latex-team at latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -40,7 +40,7 @@
% {latex-team at latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -40,7 +40,7 @@
% {latex-team at latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -40,7 +40,7 @@
% {latex-team at latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -40,7 +40,7 @@
% {latex-team at latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -40,7 +40,7 @@
% {latex-team at latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -40,7 +40,7 @@
% {latex-team at latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
% \maketitle
%
% \begin{documentation}
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -40,7 +40,7 @@
% {latex-team at latex-project.org}^^A
% }^^A
% }
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -49,7 +49,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3int.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3int.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3int.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3legacy.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3legacy.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3legacy.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3names.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3names.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3names.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3pdf.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3pdf.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3pdf.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3str-convert.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3str-convert.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3str-convert.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3str.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3str.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3str.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3text-case.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3text-case.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3text-case.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
@@ -935,6 +935,14 @@
% \end{macro}
% \end{macro}
%
+% \begin{macro}[EXP]{\@@_change_case_generate:n}
+% A utility.
+% \begin{macrocode}
+\cs_new:Npn \@@_change_case_generate:n #1
+ { \codepoint_generate:nn {#1} { \char_value_catcode:n {#1} } }
+% \end{macrocode}
+% \end{macro}
+%
% \begin{macro}[EXP]
% {\@@_change_case_upper_de-x-eszett:nnnn, \@@_change_case_upper_de-alt:nnnn}
% A simple alternative version for German.
@@ -979,25 +987,22 @@
% \begin{macro}[EXP]
% {
% \@@_change_case_upper_el_ypogegrammeni:n ,
-% \@@_change_case_upper_el-x-iota_ypogegrammeni:n ,
-% \@@_change_case_upper_el_ypogegrammeni_aux:n
+% \@@_change_case_upper_el-x-iota_ypogegrammeni:n
% }
+% \begin{macro}[EXP]{\@@_change_case_upper_el_stress:nn}
% \begin{macro}[EXP]{\@@_change_case_upper_el_gobble:nnw}
% \begin{macro}[EXP]{\@@_change_case_upper_el_gobble:nnN}
% \begin{macro}[EXP]{\@@_change_case_upper_el_gobble:nnn}
-% \begin{macro}[EXP,pTF]{\@@_change_case_if_greek:n}
-% \begin{macro}[EXP]{\@@_change_case_if_greek:n}
-% \begin{macro}[EXP,pTF]{\@@_change_case_if_greek:n}
-% \begin{macro}[EXP,pTF]{\@@_change_case_if_greek_spacing_diacritic:n}
-% \begin{macro}[EXP]{\@@_change_case_if_greek_spacing_diacritic:n}
-% \begin{macro}[EXP,pTF]{\@@_change_case_if_greek_accent:n}
-% \begin{macro}[EXP]{\@@_change_case_if_greek_accent:n}
-% \begin{macro}[EXP,pTF]{\@@_change_case_if_greek_diacritic:n}
-% \begin{macro}[EXP]{\@@_change_case_if_greek_diacritic:n}
-% \begin{macro}[EXP,TF]{\@@_change_case_if_takes_dialytika:n}
-% \begin{macro}[EXP]{\@@_change_case_if_takes_dialytika:n}
-% \begin{macro}[EXP,TF]{\@@_change_case_if_takes_ypogegrammeni:n}
-% \begin{macro}[EXP]{\@@_change_case_if_takes_ypogegrammeni:n}
+% \begin{macro}[EXP,noTF]
+% {
+% \@@_change_case_if_greek:n ,
+% \@@_change_case_if_greek_spacing_diacritic:n ,
+% \@@_change_case_if_greek_accent:n ,
+% \@@_change_case_if_greek_breathing:n ,
+% \@@_change_case_if_greek_stress:n ,
+% \@@_change_case_if_takes_dialytika:n ,
+% \@@_change_case_if_takes_ypogegrammeni:n
+% }
% For Greek uppercasing, we need to know if characters \emph{in the Greek
% range} have accents. That means doing a \textsc{nfd} conversion first, then
% starting a search. As described by the Unicode \textsc{cldr}, Greek accents
@@ -1131,7 +1136,7 @@
{
\bool_lazy_or:nnTF
{ \@@_change_case_if_greek_accent_p:n {#6} }
- { \@@_change_case_if_greek_diacritic_p:n {#6} }
+ { \@@_change_case_if_greek_breathing_p:n {#6} }
{
\@@_change_case_upper_el_ypogegrammeni:nnnnnw
{#1} {#2} {#3} {#4#6} {#5}
@@ -1152,7 +1157,7 @@
\@@_change_case_if_greek_accent:nTF {#4}
{ \@@_change_case_upper_el_hiatus:nnnw {#2} {#3} {#1} }
{
- \@@_change_case_if_greek_diacritic:nTF {#4}
+ \@@_change_case_if_greek_breathing:nTF {#4}
{ \@@_change_case_upper_el:nnn {#1} {#2} {#3} }
{
\@@_codepoint_compare:nNnTF {#4} = { "0345 }
@@ -1162,15 +1167,24 @@
\@@_change_case_loop:nnw {#2} {#3}
}
{
- \@@_change_case_store:e
- { \@@_change_case_codepoint:nn { upper } {#1} }
- \@@_change_case_loop:nnw {#2} {#3} #4
+ \@@_change_case_if_greek_stress:nTF {#4}
+ {
+ \@@_change_case_store:e
+ { \@@_change_case_upper_el_stress:nn {#1} {#4} }
+ \@@_change_case_loop:nnw {#2} {#3}
+
+ }
+ {
+ \@@_change_case_store:e
+ { \@@_change_case_codepoint:nn { upper } {#1} }
+ \@@_change_case_loop:nnw {#2} {#3} #4
+ }
}
}
}
}
}
-% \end{macrocode}
+% \end{macrocode}
% We handle \emph{dialytika} in parts as it's also needed for the hiatus.
% We know only two letters take it, so we can shortcut here on the second
% part of the tests.
@@ -1247,20 +1261,20 @@
% \begin{macrocode}
\cs_new:Npn \@@_change_case_upper_el_ypogegrammeni:n #1
{
- \int_case:nnF
- { \@@_codepoint_from_chars:Nw #1 }
+ \exp_args:Ne \@@_change_case_generate:n
{
- { "0391 } { \@@_change_case_upper_el_ypogegrammeni_aux:n { "1FBC } }
- { "03B1 } { \@@_change_case_upper_el_ypogegrammeni_aux:n { "1FBC } }
- { "0397 } { \@@_change_case_upper_el_ypogegrammeni_aux:n { "1FCC } }
- { "03B7 } { \@@_change_case_upper_el_ypogegrammeni_aux:n { "1FCC } }
- { "03A9 } { \@@_change_case_upper_el_ypogegrammeni_aux:n { "1FFC } }
- { "03C9 } { \@@_change_case_upper_el_ypogegrammeni_aux:n { "1FFC } }
+ \int_case:nn
+ { \@@_codepoint_from_chars:Nw #1 }
+ {
+ { "0391 } { "1FBC }
+ { "03B1 } { "1FBC }
+ { "0397 } { "1FCC }
+ { "03B7 } { "1FCC }
+ { "03A9 } { "1FFC }
+ { "03C9 } { "1FFC }
+ }
}
- { \@@_change_case_upper_el_ypogegrammeni:n {#1} }
}
-\cs_new:Npn \@@_change_case_upper_el_ypogegrammeni_aux:n #1
- { \codepoint_generate:nn {#1} { \char_value_catcode:n {#1} } }
\cs_new:cpn { @@_change_case_upper_el-x-iota_ypogegrammeni:n } #1
{
\@@_change_case_codepoint:nn { upper } {#1}
@@ -1268,6 +1282,44 @@
{ \char_value_catcode:n { "0399 } }
}
% \end{macrocode}
+% We choose to retain stress diacritics, but we also need to recombine
+% them for pdf\TeX{}. That is handled here.
+% \begin{macrocode}
+\cs_new:Npn \_@@_change_case_upper_el_stress:nn #1#2
+ {
+ \exp_args:Ne \@@_change_case_generate:n
+ {
+ \int_case:nn
+ { \@@_codepoint_from_chars:Nw #2 }
+ {
+ { "0304 }
+ {
+ \int_case:nn { \@@_codepoint_from_chars:Nw #1 }
+ {
+ { "0391 } { "1FB9 }
+ { "03B1 } { "1FB9 }
+ { "0399 } { "1FD9 }
+ { "03B9 } { "1FD9 }
+ { "03A5 } { "1FE9 }
+ { "03C5 } { "1FE9 }
+ }
+ }
+ { "0306 }
+ {
+ \int_case:nn { \@@_codepoint_from_chars:Nw #1 }
+ {
+ { "0391 } { "1FB8 }
+ { "03B1 } { "1FB8 }
+ { "0399 } { "1FD8 }
+ { "03B9 } { "1FD8 }
+ { "03A5 } { "1FE8 }
+ { "03C5 } { "1FE8 }
+ }
+ }
+ }
+ }
+ }
+% \end{macrocode}
% For clearing out trailing combining marks after we have dealt with
% the first one.
% \begin{macrocode}
@@ -1293,7 +1345,7 @@
{
\bool_lazy_or:nnTF
{ \@@_change_case_if_greek_accent_p:n {#3} }
- { \@@_change_case_if_greek_diacritic_p:n {#3} }
+ { \@@_change_case_if_greek_breathing_p:n {#3} }
{ \@@_change_case_upper_el_gobble:nnw {#1} {#2} }
{ \@@_change_case_loop:nnw {#1} {#2} #3 }
}
@@ -1443,14 +1495,32 @@
\fi:
\fi:
}
-\prg_new_conditional:Npnn \@@_change_case_if_greek_diacritic:n
+\prg_new_conditional:Npnn \@@_change_case_if_greek_breathing:n
#1 { TF , p }
{
- \exp_args:Nf \@@_change_case_if_greek_diacritic:n
+ \exp_args:Nf \@@_change_case_if_greek_breathing:n
{ \int_eval:n { \@@_codepoint_from_chars:Nw #1 } }
}
-\cs_new:Npn \@@_change_case_if_greek_diacritic:n #1
+\cs_new:Npn \@@_change_case_if_greek_breathing:n #1
{
+ \if_int_compare:w #1 = "0313 \exp_stop_f:
+ \prg_return_true:
+ \else:
+ \if_int_compare:w #1 = "0314 \exp_stop_f:
+ \prg_return_true:
+ \else:
+ \prg_return_false:
+ \fi:
+ \fi:
+ }
+\prg_new_conditional:Npnn \@@_change_case_if_greek_stress:n
+ #1 { TF , p }
+ {
+ \exp_args:Nf \@@_change_case_if_greek_stress:n
+ { \int_eval:n { \@@_codepoint_from_chars:Nw #1 } }
+ }
+\cs_new:Npn \@@_change_case_if_greek_stress:n #1
+ {
\if_int_compare:w #1 = "0304 \exp_stop_f:
\prg_return_true:
\else:
@@ -1457,15 +1527,7 @@
\if_int_compare:w #1 = "0306 \exp_stop_f:
\prg_return_true:
\else:
- \if_int_compare:w #1 = "0313 \exp_stop_f:
- \prg_return_true:
- \else:
- \if_int_compare:w #1 = "0314 \exp_stop_f:
- \prg_return_true:
- \else:
- \prg_return_false:
- \fi:
- \fi:
+ \prg_return_false:
\fi:
\fi:
}
@@ -1534,26 +1596,15 @@
% \end{macro}
% \end{macro}
% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
% \begin{macro}[EXP]
% {\@@_change_case_boundary_upper_el:Nnnw, \@@_change_case_boundary_upper_el-x-iota:Nnnw}
% \begin{macro}[EXP]{\@@_change_case_boundary_upper_el:nnN}
% \begin{macro}[EXP]{\@@_change_case_boundary_upper_el:nnn}
% \begin{macro}[EXP]{\@@_change_case_boundary_upper_el:nnnw}
-% \begin{macro}[EXP]{\@@_change_case_boundary_upper_el:nnnN}
-% There is one special case in Greek that needs to be picked up based on
-% being an isolated letter. We do that using a test similar to final sigma,
-% but it has to fire off from the space grabber.
+% There is one things that need special treatment at start start of
+% words in Greek. For an isolated accent \emph{eta},
+% which is handled by seeing if we have exactly one of the affected
+% codepoints followed by a space or brace group.
% \begin{macrocode}
\cs_new:Npn \@@_change_case_boundary_upper_el:Nnnw
#1#2#3#4 \q_@@_recursion_stop
@@ -1585,13 +1636,13 @@
{ \@@_codepoint_compare_p:nNn {#3} = { "1F2A } }
}
{ \@@_change_case_boundary_upper_el:nnnw {#1} {#2} {#3} }
- { \@@_change_case_loop:nnw {#1} {#2} #3 }
+ { \@@_change_case_breathing:nnn {#1} {#2} {#3} }
}
\cs_new:Npn \@@_change_case_boundary_upper_el:nnnw
#1#2#3#4 \q_@@_recursion_stop
{
\tl_if_head_is_N_type:nTF {#4}
- { \@@_change_case_boundary_upper_el:nnnN {#3} }
+ { \@@_change_case_loop:nnw {#1} {#2} #3 }
{
\@@_change_case_store:e
{
@@ -1598,35 +1649,125 @@
\codepoint_generate:nn { "0389 }
{ \@@_change_case_catcode:nn {#3} { "0389 } }
}
- \@@_change_case_loop:nnw
+ \@@_change_case_loop:nnw {#1} {#2}
}
- {#1} {#2} #4 \q_@@_recursion_stop
+ #4 \q_@@_recursion_stop
}
-\cs_new:Npn \@@_change_case_boundary_upper_el:nnnN #1#2#3#4
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \begin{macro}[EXP]{\@@_change_case_breathing:nnn}
+% \begin{macro}[EXP]{\@@_change_case_breathing:nnnn}
+% \begin{macro}[EXP]{\@@_change_case_breathing:nnnnw}
+% \begin{macro}[EXP]{\@@_change_case_breathing:nnnnnw}
+% \begin{macro}[EXP]{\@@_change_case_breathing_aux:nnnnn}
+% \begin{macro}[EXP]{\@@_change_case_breathing_aux:nnnw}
+% \begin{macro}[EXP]{\@@_change_case_breathing_aux:nnN}
+% \begin{macro}[EXP]{\@@_change_case_breathing_dialytika:nnn}
+% In Greek, breathing diacritics are normally dropped when uppercasing:
+% see the code for the general case. However, for the first character
+% of a word, if there is a breather \emph{and} the next character takes
+% a \emph{dialytika}, it needs to be added. We start by checking if
+% the current codepoint is in the Greek range, then decomposing.
+% \begin{macrocode}
+\cs_new:Npn \@@_change_case_breathing:nnn #1#2#3
{
- \bool_lazy_or:nnTF
- { \token_if_letter_p:N #4 }
+ \@@_change_case_if_greek:nTF {#3}
{
- \bool_lazy_and_p:nn
- { \token_if_active_p:N #4 }
- { ! \int_compare_p:nNn {`#4} < { "80 } }
- }
- { \@@_change_case_loop:nnw {#2} {#3} #1#4 }
- {
- \@@_change_case_store:e
+ \exp_args:Ne \@@_change_case_breathing:nnnn
{
- \codepoint_generate:nn { "0389 }
- { \@@_change_case_catcode:nn {#1} { "0389 } }
+ \codepoint_to_nfd:n
+ { \@@_codepoint_from_chars:Nw #3 }
}
- \@@_change_case_loop:nnw {#2} {#3} #4
+ {#1} {#2} {#3}
}
+ { \@@_change_case_loop:nnw {#1} {#2} #3 }
}
+\cs_new:Npn \@@_change_case_breathing:nnnn #1#2#3#4
+ {
+ \@@_codepoint_process:nN
+ { \@@_change_case_breathing:nnnnw {#2} {#3} {#4} }
+ #1 \q_mark
+ }
% \end{macrocode}
+% Normal form decomposition will always give between one and three
+% codepoints. Luckily, the two breathing marks (\emph{psili} and
+% \emph{dasia}) will be in a predictable position: last. So we can
+% quickly establish first that there was a change on decomposition,
+% and second if the final resulting codepoint is one of the two we
+% care about.
+% \begin{macrocode}
+\cs_new:Npn \@@_change_case_breathing:nnnnw #1#2#3#4#5 \q_mark
+ {
+ \tl_if_blank:nTF {#5}
+ { \@@_change_case_loop:nnw {#1} {#2} #3 }
+ {
+ \@@_codepoint_process:nN
+ { \@@_change_case_breathing:nnnnnw {#1} {#2} {#3} {#4} }
+ #5 \q_mark
+ }
+ }
+\cs_new:Npn \@@_change_case_breathing:nnnnnw #1#2#3#4#5#6 \q_mark
+ {
+ \tl_if_blank:nTF {#6}
+ {
+ \@@_change_case_breathing_aux:nnnnn
+ {#1} {#2} {#3} {#4} {#5}
+ }
+ {
+ \@@_change_case_breathing_aux:nnnnn
+ {#1} {#2} {#3} {#4} {#6}
+ }
+ }
+\cs_new:Npn \@@_change_case_breathing_aux:nnnnn #1#2#3#4#5
+ {
+ \bool_lazy_or:nnTF
+ { \@@_codepoint_compare_p:nNn {#5} = { "0313 } }
+ { \@@_codepoint_compare_p:nNn {#5} = { "0314 } }
+ { \@@_change_case_breathing_aux:nnnw {#1} {#2} {#4} }
+ { \@@_change_case_loop:nnw {#1} {#2} #3 }
+ }
+% \end{macrocode}
+% Now the lookahead can be fired: check the next codepoint and assess
+% whether it takes a \emph{dialytika}. Drop the
+% breathing mark or generate the \emph{dialytika}: the
+% latter is code shared with the general mechanism.
+% \begin{macrocode}
+\cs_new:Npn \@@_change_case_breathing_aux:nnnw #1#2#3#4
+ \q_@@_recursion_stop
+ {
+ \@@_change_case_store:e
+ { \@@_change_case_codepoint:nn { upper } {#3} }
+ \tl_if_head_is_N_type:nTF {#4}
+ { \@@_change_case_breathing_aux:nnN }
+ { \@@_change_case_loop:nnw }
+ {#1} {#2} #4 \q_@@_recursion_stop
+ }
+\cs_new:Npn \@@_change_case_breathing_aux:nnN #1#2#3
+ {
+ \@@_codepoint_process:nN
+ { \@@_change_case_breathing_dialytika:nnn {#1} {#2} } #3
+ }
+\cs_new:Npn \@@_change_case_breathing_dialytika:nnn #1#2#3
+ {
+ \@@_change_case_if_takes_dialytika:nTF {#3}
+ {
+ \@@_change_case_upper_el_dialytika:n {#3}
+ \@@_change_case_loop:nnw {#1} {#2}
+ }
+ { \@@_change_case_loop:nnw {#1} {#2} #3 }
+ }
+% \end{macrocode}
% \end{macro}
% \end{macro}
% \end{macro}
% \end{macro}
% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
% \begin{macro}[EXP]{\@@_change_case_title_el:nnnn}
% Titlecasing retains accents, but to prevent the uppercasing code
% from kicking in, there has to be an explicit function here.
@@ -1744,7 +1885,7 @@
% \end{macrocode}
% If there was a hit, output the result with the dot-above and move on.
% Otherwise, look for one of the three letters that can take a combining
-% accent: I, J and I-ogonek.
+% accent: I, J nd I-ogonek.
% \begin{macrocode}
\cs_new:Npn \@@_change_case_lower_lt_auxi:nnnn #1#2#3#4
{
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3text-map.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3text-map.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3text-map.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3text-purify.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3text-purify.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3text-purify.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3text.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3text.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3text.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
@@ -58,7 +58,7 @@
%
% \section{Expanding text}
%
-% \begin{function}[EXP, added = 2020-01-02, updated = 2023-02-07]
+% \begin{function}[EXP, added = 2020-01-02, updated = 2023-06-09]
% {\text_expand:n}
% \begin{syntax}
% \cs{text_expand:n} \Arg{text}
@@ -71,7 +71,8 @@
% in \cs{l_text_math_arg_tl}). Commands which are neither engine-
% nor \LaTeX{} protected are expanded exhaustively.
% Any commands listed in \cs{l_text_expand_exclude_tl} are excluded from
-% expansion.
+% expansion, as are those in \cs{l_text_case_exclude_arg_tl} and
+% \cs{l_text_math_arg_tl}.
% \end{function}
%
% \begin{function}[added = 2020-01-22]
@@ -1142,6 +1143,7 @@
{
\exp_not:V \l_text_math_arg_tl
\exp_not:V \l_text_expand_exclude_tl
+ \exp_not:V \l_text_case_exclude_arg_tl
}
#1
}
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -44,7 +44,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3token.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3token.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3token.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
Modified: trunk/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2023-06-05}
+% \date{Released 2023-06-16}
%
% \maketitle
%
@@ -479,8 +479,8 @@
% \end{macrocode}
% Parse the main Unicode data file and pull out the NFD and case changing
% data. The NFD data is stored on using the hash table approach and can yield
-% a predictable number of code points: one or two. We also need the case data,
-% which will be modified further below. To allow for finding rangs, the
+% a predictable number of codepoints: one or two. We also need the case data,
+% which will be modified further below. To allow for finding ranges, the
% description of the codepoint needs to be carried forward.
% \begin{macrocode}
\cs_set_protected:Npn \@@_data_auxi:w
@@ -601,7 +601,7 @@
% \end{macrocode}
% Here we want to do three things: add to and possibly complete the current
% block, add complete blocks quickly, then finish up the range in a final
-% open block. We need to avoid as far as possible avoid dealing with ever
+% open block. We need to avoid as far as possible avoid dealing with every
% single codepoint, so the middle step is optimised.
% \begin{macrocode}
\cs_set_protected:Npn \@@_range:nnnn #1#2#3#4
@@ -668,7 +668,7 @@
% \end{macrocode}
% Close out the final block, rename the first stage table, then combine all
% of the block comma-lists into one large second-stage table with offsets.
-% As we use an index not an offet, there is a little back-and-forward to do.
+% As we use an index not an offset, there is a little back-and-forward to do.
% \begin{macrocode}
\cs_set_protected:Npn \@@_finalise_blocks:
{
Modified: trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex 2023-06-17 19:59:40 UTC (rev 67394)
@@ -71,7 +71,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: expl3.dtx
-\def\ExplFileDate{2023-06-05}%
+\def\ExplFileDate{2023-06-16}%
\begingroup
\def\next{\endgroup}%
\expandafter\ifx\csname PackageError\endcsname\relax
@@ -11418,10 +11418,7 @@
\cs_new:Npn \__file_full_name_aux:Nnn #1#2#3
{
\exp_args:Ne \__file_full_name_aux:nN
- {
- \exp_args:Ne \__file_full_name_slash:n
- { \tl_to_str:n {#3} } #2
- }
+ { \__file_full_name_slash:n {#3} #2 }
#1
}
\cs_new:Npn \__file_full_name_slash:n #1
@@ -32543,6 +32540,7 @@
{
\exp_not:V \l_text_math_arg_tl
\exp_not:V \l_text_expand_exclude_tl
+ \exp_not:V \l_text_case_exclude_arg_tl
}
#1
}
@@ -33322,6 +33320,8 @@
#1
}
\cs_new:Npn \__text_case_switch_marker: { }
+\cs_new:Npn \__text_change_case_generate:n #1
+ { \codepoint_generate:nn {#1} { \char_value_catcode:n {#1} } }
\cs_new:cpn { __text_change_case_upper_de-x-eszett:nnnn } #1#2#3#4
{
\__text_codepoint_compare:nNnTF {#4} = { "00DF }
@@ -33444,7 +33444,7 @@
{
\bool_lazy_or:nnTF
{ \__text_change_case_if_greek_accent_p:n {#6} }
- { \__text_change_case_if_greek_diacritic_p:n {#6} }
+ { \__text_change_case_if_greek_breathing_p:n {#6} }
{
\__text_change_case_upper_el_ypogegrammeni:nnnnnw
{#1} {#2} {#3} {#4#6} {#5}
@@ -33465,7 +33465,7 @@
\__text_change_case_if_greek_accent:nTF {#4}
{ \__text_change_case_upper_el_hiatus:nnnw {#2} {#3} {#1} }
{
- \__text_change_case_if_greek_diacritic:nTF {#4}
+ \__text_change_case_if_greek_breathing:nTF {#4}
{ \__text_change_case_upper_el:nnn {#1} {#2} {#3} }
{
\__text_codepoint_compare:nNnTF {#4} = { "0345 }
@@ -33475,9 +33475,18 @@
\__text_change_case_loop:nnw {#2} {#3}
}
{
- \__text_change_case_store:e
- { \__text_change_case_codepoint:nn { upper } {#1} }
- \__text_change_case_loop:nnw {#2} {#3} #4
+ \__text_change_case_if_greek_stress:nTF {#4}
+ {
+ \__text_change_case_store:e
+ { \__text_change_case_upper_el_stress:nn {#1} {#4} }
+ \__text_change_case_loop:nnw {#2} {#3}
+
+ }
+ {
+ \__text_change_case_store:e
+ { \__text_change_case_codepoint:nn { upper } {#1} }
+ \__text_change_case_loop:nnw {#2} {#3} #4
+ }
}
}
}
@@ -33548,20 +33557,20 @@
}
\cs_new:Npn \__text_change_case_upper_el_ypogegrammeni:n #1
{
- \int_case:nnF
- { \__text_codepoint_from_chars:Nw #1 }
+ \exp_args:Ne \__text_change_case_generate:n
{
- { "0391 } { \__text_change_case_upper_el_ypogegrammeni_aux:n { "1FBC } }
- { "03B1 } { \__text_change_case_upper_el_ypogegrammeni_aux:n { "1FBC } }
- { "0397 } { \__text_change_case_upper_el_ypogegrammeni_aux:n { "1FCC } }
- { "03B7 } { \__text_change_case_upper_el_ypogegrammeni_aux:n { "1FCC } }
- { "03A9 } { \__text_change_case_upper_el_ypogegrammeni_aux:n { "1FFC } }
- { "03C9 } { \__text_change_case_upper_el_ypogegrammeni_aux:n { "1FFC } }
+ \int_case:nn
+ { \__text_codepoint_from_chars:Nw #1 }
+ {
+ { "0391 } { "1FBC }
+ { "03B1 } { "1FBC }
+ { "0397 } { "1FCC }
+ { "03B7 } { "1FCC }
+ { "03A9 } { "1FFC }
+ { "03C9 } { "1FFC }
+ }
}
- { \__text_change_case_upper_el_ypogegrammeni:n {#1} }
}
-\cs_new:Npn \__text_change_case_upper_el_ypogegrammeni_aux:n #1
- { \codepoint_generate:nn {#1} { \char_value_catcode:n {#1} } }
\cs_new:cpn { __text_change_case_upper_el-x-iota_ypogegrammeni:n } #1
{
\__text_change_case_codepoint:nn { upper } {#1}
@@ -33568,6 +33577,40 @@
\codepoint_generate:nn { "0399 }
{ \char_value_catcode:n { "0399 } }
}
+\cs_new:Npn \__text_change_case_upper_el_stress:nn #1#2
+ {
+ \exp_args:Ne \__text_change_case_generate:n
+ {
+ \int_case:nn
+ { \__text_codepoint_from_chars:Nw #2 }
+ {
+ { "0304 }
+ {
+ \int_case:nn { \__text_codepoint_from_chars:Nw #1 }
+ {
+ { "0391 } { "1FB9 }
+ { "03B1 } { "1FB9 }
+ { "0399 } { "1FD9 }
+ { "03B9 } { "1FD9 }
+ { "03A5 } { "1FE9 }
+ { "03C5 } { "1FE9 }
+ }
+ }
+ { "0306 }
+ {
+ \int_case:nn { \__text_codepoint_from_chars:Nw #1 }
+ {
+ { "0391 } { "1FB8 }
+ { "03B1 } { "1FB8 }
+ { "0399 } { "1FD8 }
+ { "03B9 } { "1FD8 }
+ { "03A5 } { "1FE8 }
+ { "03C5 } { "1FE8 }
+ }
+ }
+ }
+ }
+ }
\cs_new:Npn \__text_change_case_upper_el_gobble:nnw
#1#2#3 \q__text_recursion_stop
{
@@ -33590,7 +33633,7 @@
{
\bool_lazy_or:nnTF
{ \__text_change_case_if_greek_accent_p:n {#3} }
- { \__text_change_case_if_greek_diacritic_p:n {#3} }
+ { \__text_change_case_if_greek_breathing_p:n {#3} }
{ \__text_change_case_upper_el_gobble:nnw {#1} {#2} }
{ \__text_change_case_loop:nnw {#1} {#2} #3 }
}
@@ -33734,14 +33777,32 @@
\fi:
\fi:
}
-\prg_new_conditional:Npnn \__text_change_case_if_greek_diacritic:n
+\prg_new_conditional:Npnn \__text_change_case_if_greek_breathing:n
#1 { TF , p }
{
- \exp_args:Nf \__text_change_case_if_greek_diacritic:n
+ \exp_args:Nf \__text_change_case_if_greek_breathing:n
{ \int_eval:n { \__text_codepoint_from_chars:Nw #1 } }
}
-\cs_new:Npn \__text_change_case_if_greek_diacritic:n #1
+\cs_new:Npn \__text_change_case_if_greek_breathing:n #1
{
+ \if_int_compare:w #1 = "0313 \exp_stop_f:
+ \prg_return_true:
+ \else:
+ \if_int_compare:w #1 = "0314 \exp_stop_f:
+ \prg_return_true:
+ \else:
+ \prg_return_false:
+ \fi:
+ \fi:
+ }
+\prg_new_conditional:Npnn \__text_change_case_if_greek_stress:n
+ #1 { TF , p }
+ {
+ \exp_args:Nf \__text_change_case_if_greek_stress:n
+ { \int_eval:n { \__text_codepoint_from_chars:Nw #1 } }
+ }
+\cs_new:Npn \__text_change_case_if_greek_stress:n #1
+ {
\if_int_compare:w #1 = "0304 \exp_stop_f:
\prg_return_true:
\else:
@@ -33748,15 +33809,7 @@
\if_int_compare:w #1 = "0306 \exp_stop_f:
\prg_return_true:
\else:
- \if_int_compare:w #1 = "0313 \exp_stop_f:
- \prg_return_true:
- \else:
- \if_int_compare:w #1 = "0314 \exp_stop_f:
- \prg_return_true:
- \else:
- \prg_return_false:
- \fi:
- \fi:
+ \prg_return_false:
\fi:
\fi:
}
@@ -33836,13 +33889,13 @@
{ \__text_codepoint_compare_p:nNn {#3} = { "1F2A } }
}
{ \__text_change_case_boundary_upper_el:nnnw {#1} {#2} {#3} }
- { \__text_change_case_loop:nnw {#1} {#2} #3 }
+ { \__text_change_case_breathing:nnn {#1} {#2} {#3} }
}
\cs_new:Npn \__text_change_case_boundary_upper_el:nnnw
#1#2#3#4 \q__text_recursion_stop
{
\tl_if_head_is_N_type:nTF {#4}
- { \__text_change_case_boundary_upper_el:nnnN {#3} }
+ { \__text_change_case_loop:nnw {#1} {#2} #3 }
{
\__text_change_case_store:e
{
@@ -33849,29 +33902,83 @@
\codepoint_generate:nn { "0389 }
{ \__text_change_case_catcode:nn {#3} { "0389 } }
}
- \__text_change_case_loop:nnw
+ \__text_change_case_loop:nnw {#1} {#2}
}
- {#1} {#2} #4 \q__text_recursion_stop
+ #4 \q__text_recursion_stop
}
-\cs_new:Npn \__text_change_case_boundary_upper_el:nnnN #1#2#3#4
+\cs_new:Npn \__text_change_case_breathing:nnn #1#2#3
{
- \bool_lazy_or:nnTF
- { \token_if_letter_p:N #4 }
+ \__text_change_case_if_greek:nTF {#3}
{
- \bool_lazy_and_p:nn
- { \token_if_active_p:N #4 }
- { ! \int_compare_p:nNn {`#4} < { "80 } }
- }
- { \__text_change_case_loop:nnw {#2} {#3} #1#4 }
- {
- \__text_change_case_store:e
+ \exp_args:Ne \__text_change_case_breathing:nnnn
{
- \codepoint_generate:nn { "0389 }
- { \__text_change_case_catcode:nn {#1} { "0389 } }
+ \codepoint_to_nfd:n
+ { \__text_codepoint_from_chars:Nw #3 }
}
- \__text_change_case_loop:nnw {#2} {#3} #4
+ {#1} {#2} {#3}
}
+ { \__text_change_case_loop:nnw {#1} {#2} #3 }
}
+\cs_new:Npn \__text_change_case_breathing:nnnn #1#2#3#4
+ {
+ \__text_codepoint_process:nN
+ { \__text_change_case_breathing:nnnnw {#2} {#3} {#4} }
+ #1 \q_mark
+ }
+\cs_new:Npn \__text_change_case_breathing:nnnnw #1#2#3#4#5 \q_mark
+ {
+ \tl_if_blank:nTF {#5}
+ { \__text_change_case_loop:nnw {#1} {#2} #3 }
+ {
+ \__text_codepoint_process:nN
+ { \__text_change_case_breathing:nnnnnw {#1} {#2} {#3} {#4} }
+ #5 \q_mark
+ }
+ }
+\cs_new:Npn \__text_change_case_breathing:nnnnnw #1#2#3#4#5#6 \q_mark
+ {
+ \tl_if_blank:nTF {#6}
+ {
+ \__text_change_case_breathing_aux:nnnnn
+ {#1} {#2} {#3} {#4} {#5}
+ }
+ {
+ \__text_change_case_breathing_aux:nnnnn
+ {#1} {#2} {#3} {#4} {#6}
+ }
+ }
+\cs_new:Npn \__text_change_case_breathing_aux:nnnnn #1#2#3#4#5
+ {
+ \bool_lazy_or:nnTF
+ { \__text_codepoint_compare_p:nNn {#5} = { "0313 } }
+ { \__text_codepoint_compare_p:nNn {#5} = { "0314 } }
+ { \__text_change_case_breathing_aux:nnnw {#1} {#2} {#4} }
+ { \__text_change_case_loop:nnw {#1} {#2} #3 }
+ }
+\cs_new:Npn \__text_change_case_breathing_aux:nnnw #1#2#3#4
+ \q__text_recursion_stop
+ {
+ \__text_change_case_store:e
+ { \__text_change_case_codepoint:nn { upper } {#3} }
+ \tl_if_head_is_N_type:nTF {#4}
+ { \__text_change_case_breathing_aux:nnN }
+ { \__text_change_case_loop:nnw }
+ {#1} {#2} #4 \q__text_recursion_stop
+ }
+\cs_new:Npn \__text_change_case_breathing_aux:nnN #1#2#3
+ {
+ \__text_codepoint_process:nN
+ { \__text_change_case_breathing_dialytika:nnn {#1} {#2} } #3
+ }
+\cs_new:Npn \__text_change_case_breathing_dialytika:nnn #1#2#3
+ {
+ \__text_change_case_if_takes_dialytika:nTF {#3}
+ {
+ \__text_change_case_upper_el_dialytika:n {#3}
+ \__text_change_case_loop:nnw {#1} {#2}
+ }
+ { \__text_change_case_loop:nnw {#1} {#2} #3 }
+ }
\cs_new:Npn \__text_change_case_title_el:nnnn #1#2#3#4
{ \__text_change_case_codepoint:nnnn {#1} {#2} {#3} {#4} }
\cs_new:Npn \__text_change_case_upper_hy:nnnn #1#2#3#4
Modified: trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex
===================================================================
--- trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex 2023-06-17 19:59:40 UTC (rev 67394)
@@ -19,7 +19,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: expl3.dtx
-\def\ExplFileDate{2023-06-05}%
+\def\ExplFileDate{2023-06-16}%
\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 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/expl3.ltx 2023-06-17 19:59:40 UTC (rev 67394)
@@ -19,7 +19,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: expl3.dtx
-\def\ExplFileDate{2023-06-05}%
+\def\ExplFileDate{2023-06-16}%
\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 2023-06-17 19:59:17 UTC (rev 67393)
+++ trunk/Master/texmf-dist/tex/latex/l3kernel/expl3.sty 2023-06-17 19:59:40 UTC (rev 67394)
@@ -19,7 +19,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: expl3.dtx
-\def\ExplFileDate{2023-06-05}%
+\def\ExplFileDate{2023-06-16}%
\let\ExplLoaderFileDate\ExplFileDate
\ProvidesPackage{expl3}
[%
More information about the tex-live-commits
mailing list.