[latex3-commits] [git/LaTeX3-latex3-latex3] main: Uppercasing Greek: drop accents after diacritic (75f0ce817)
Joseph Wright
joseph.wright at morningstar2.co.uk
Thu Feb 2 09:48:39 CET 2023
Repository : https://github.com/latex3/latex3
On branch : main
Link : https://github.com/latex3/latex3/commit/75f0ce8177c783b172132c00af336cc53f97c05e
>---------------------------------------------------------------
commit 75f0ce8177c783b172132c00af336cc53f97c05e
Author: Joseph Wright <joseph.wright at morningstar2.co.uk>
Date: Thu Feb 2 07:24:57 2023 +0000
Uppercasing Greek: drop accents after diacritic
https://github.com/latex3/latex2e/issues/987.
>---------------------------------------------------------------
75f0ce8177c783b172132c00af336cc53f97c05e
l3kernel/CHANGELOG.md | 4 ++++
l3kernel/l3text-case.dtx | 2 +-
l3kernel/testfiles/m3text002.luatex.tlg | 14 ++++++++++++++
l3kernel/testfiles/m3text002.lvt | 10 +++++++++-
l3kernel/testfiles/m3text002.tlg | 14 ++++++++++++++
l3kernel/testfiles/m3text002.xetex.tlg | 14 ++++++++++++++
6 files changed, 56 insertions(+), 2 deletions(-)
diff --git a/l3kernel/CHANGELOG.md b/l3kernel/CHANGELOG.md
index 8add0a64e..bad61a725 100644
--- a/l3kernel/CHANGELOG.md
+++ b/l3kernel/CHANGELOG.md
@@ -7,6 +7,10 @@ this project uses date-based 'snapshot' version identifiers.
## [Unreleased]
+### Fixed
+- Handling of multiple accents when uppercasing Greek
+ (see https://github.com/latex3/latex2e/issues/987)
+
## [2023-02-01]
### Fixed
diff --git a/l3kernel/l3text-case.dtx b/l3kernel/l3text-case.dtx
index ea790d487..41ea3c6b1 100644
--- a/l3kernel/l3text-case.dtx
+++ b/l3kernel/l3text-case.dtx
@@ -1036,7 +1036,7 @@
{
\@@_change_case_store:e
{ \@@_change_case_codepoint:nn { upper } {#1} }
- \@@_change_case_loop:nnw {#2} {#3}
+ \@@_change_case_upper_el_gobble:nnw {#2} {#3}
}
{
\@@_codepoint_compare:nNnTF {#4} = { "0345 }
diff --git a/l3kernel/testfiles/m3text002.luatex.tlg b/l3kernel/testfiles/m3text002.luatex.tlg
index c555db7a7..b9356aa07 100644
--- a/l3kernel/testfiles/m3text002.luatex.tlg
+++ b/l3kernel/testfiles/m3text002.luatex.tlg
@@ -197,6 +197,20 @@ TEST 17: Greek
ΗΊ
ΗΙ
ῌ
+ἈἉἊἋἌἍἎἏ
+ΑΑΑΑΑΑΑΑ
+ἘἙἚἛἜἝ
+ΕΕΕΕΕΕ
+ἨἩἪἫἬἭἮἯ
+ΗΗΗΗΗΗΗΗ
+ἸἹἺἻἼἽἾἿ
+ΙΙΙΙΙΙΙΙ
+ὈὉὊὋὌὍ
+ΟΟΟΟΟΟ
+Υ̓ὙΥ̓̀ὛΥ̓́ὝΥ̓͂Ὗ
+ΥΥΥΥΥΥΥΥ
+ὨὩὪὫὬὭὮὯ
+ΩΩΩΩΩΩΩΩ
============================================================
============================================================
TEST 18: Turkish/Azeri
diff --git a/l3kernel/testfiles/m3text002.lvt b/l3kernel/testfiles/m3text002.lvt
index 85384f515..ee9a712c6 100644
--- a/l3kernel/testfiles/m3text002.lvt
+++ b/l3kernel/testfiles/m3text002.lvt
@@ -1,5 +1,5 @@
%
-% Copyright (C) 2020-2022 The LaTeX Project
+% Copyright (C) 2020-2023 The LaTeX Project
%
\input{regression-test}
@@ -205,6 +205,14 @@
\text_uppercase:nn { el-x-iota } { ῄ } \NEWLINE
\greektest:n { ῄ } \NEWLINE
\text_uppercase:nn { el-x-iota } { ῄ } \NEWLINE
+ % Taken from https://github.com/latex3/latex2e/issues/987
+ \greektest:n { ἀἁἂἃἄἅἆἇ } \NEWLINE
+ \greektest:n { ἐἑἒἓἔἕ } \NEWLINE
+ \greektest:n { ἠἡἢἣἤἥἦἧ } \NEWLINE
+ \greektest:n { ἰἱἲἳἴἵἶἷ } \NEWLINE
+ \greektest:n { ὀὁὂὃὄὅ } \NEWLINE
+ \greektest:n { ὐὑὒὓὔὕὖὗ } \NEWLINE
+ \greektest:n { ὠὡὢὣὤὥὦὧ } \NEWLINE
}
\TESTEXP { Turkish/Azeri }
diff --git a/l3kernel/testfiles/m3text002.tlg b/l3kernel/testfiles/m3text002.tlg
index 0d4d08e65..4caa73387 100644
--- a/l3kernel/testfiles/m3text002.tlg
+++ b/l3kernel/testfiles/m3text002.tlg
@@ -197,6 +197,20 @@ TEST 17: Greek
^^ce^^97^^ce^^99^^cc^^81
^^ce^^97^^ce^^99
^^ce^^97^^cd^^85
+^^e1^^bc^^88^^e1^^bc^^89^^e1^^bc^^8a^^e1^^bc^^8b^^e1^^bc^^8c^^e1^^bc^^8d^^e1^^bc^^8e^^e1^^bc^^8f
+^^ce^^91^^ce^^91^^ce^^91^^ce^^91^^ce^^91^^ce^^91^^ce^^91^^ce^^91
+^^e1^^bc^^98^^e1^^bc^^99^^e1^^bc^^9a^^e1^^bc^^9b^^e1^^bc^^9c^^e1^^bc^^9d
+^^ce^^95^^ce^^95^^ce^^95^^ce^^95^^ce^^95^^ce^^95
+^^e1^^bc^^a8^^e1^^bc^^a9^^e1^^bc^^aa^^e1^^bc^^ab^^e1^^bc^^ac^^e1^^bc^^ad^^e1^^bc^^ae^^e1^^bc^^af
+^^ce^^97^^ce^^97^^ce^^97^^ce^^97^^ce^^97^^ce^^97^^ce^^97^^ce^^97
+^^e1^^bc^^b8^^e1^^bc^^b9^^e1^^bc^^ba^^e1^^bc^^bb^^e1^^bc^^bc^^e1^^bc^^bd^^e1^^bc^^be^^e1^^bc^^bf
+^^ce^^99^^ce^^99^^ce^^99^^ce^^99^^ce^^99^^ce^^99^^ce^^99^^ce^^99
+^^e1^^bd^^88^^e1^^bd^^89^^e1^^bd^^8a^^e1^^bd^^8b^^e1^^bd^^8c^^e1^^bd^^8d
+^^ce^^9f^^ce^^9f^^ce^^9f^^ce^^9f^^ce^^9f^^ce^^9f
+^^ce^^a5^^cc^^93^^e1^^bd^^99^^ce^^a5^^cc^^93^^cc^^80^^e1^^bd^^9b^^ce^^a5^^cc^^93^^cc^^81^^e1^^bd^^9d^^ce^^a5^^cc^^93^^cd^^82^^e1^^bd^^9f
+^^ce^^a5^^ce^^a5^^ce^^a5^^ce^^a5^^ce^^a5^^ce^^a5^^ce^^a5^^ce^^a5
+^^e1^^bd^^a8^^e1^^bd^^a9^^e1^^bd^^aa^^e1^^bd^^ab^^e1^^bd^^ac^^e1^^bd^^ad^^e1^^bd^^ae^^e1^^bd^^af
+^^ce^^a9^^ce^^a9^^ce^^a9^^ce^^a9^^ce^^a9^^ce^^a9^^ce^^a9^^ce^^a9
============================================================
============================================================
TEST 18: Turkish/Azeri
diff --git a/l3kernel/testfiles/m3text002.xetex.tlg b/l3kernel/testfiles/m3text002.xetex.tlg
index c555db7a7..b9356aa07 100644
--- a/l3kernel/testfiles/m3text002.xetex.tlg
+++ b/l3kernel/testfiles/m3text002.xetex.tlg
@@ -197,6 +197,20 @@ TEST 17: Greek
ΗΊ
ΗΙ
ῌ
+ἈἉἊἋἌἍἎἏ
+ΑΑΑΑΑΑΑΑ
+ἘἙἚἛἜἝ
+ΕΕΕΕΕΕ
+ἨἩἪἫἬἭἮἯ
+ΗΗΗΗΗΗΗΗ
+ἸἹἺἻἼἽἾἿ
+ΙΙΙΙΙΙΙΙ
+ὈὉὊὋὌὍ
+ΟΟΟΟΟΟ
+Υ̓ὙΥ̓̀ὛΥ̓́ὝΥ̓͂Ὗ
+ΥΥΥΥΥΥΥΥ
+ὨὩὪὫὬὭὮὯ
+ΩΩΩΩΩΩΩΩ
============================================================
============================================================
TEST 18: Turkish/Azeri
More information about the latex3-commits
mailing list.