[latex3-commits] [latex3/latex3] main: Allow for NFD into >3 codepoints (fixes #1236) (ebff6bde8)
github at latex-project.org
github at latex-project.org
Wed Jun 21 14:12:23 CEST 2023
Repository : https://github.com/latex3/latex3
On branch : main
Link : https://github.com/latex3/latex3/commit/ebff6bde8026908f1ddaf657d43e030a31f59e36
>---------------------------------------------------------------
commit ebff6bde8026908f1ddaf657d43e030a31f59e36
Author: Joseph Wright <joseph.wright at morningstar2.co.uk>
Date: Wed Jun 21 13:00:16 2023 +0100
Allow for NFD into >3 codepoints (fixes #1236)
>---------------------------------------------------------------
ebff6bde8026908f1ddaf657d43e030a31f59e36
l3kernel/CHANGELOG.md | 3 +++
l3kernel/l3text-case.dtx | 5 +++--
l3kernel/testfiles/m3text002.luatex.tlg | 2 ++
l3kernel/testfiles/m3text002.lvt | 1 +
l3kernel/testfiles/m3text002.ptex.tlg | 2 ++
l3kernel/testfiles/m3text002.tlg | 2 ++
l3kernel/testfiles/m3text002.uptex.tlg | 2 ++
l3kernel/testfiles/m3text002.xetex.tlg | 2 ++
8 files changed, 17 insertions(+), 2 deletions(-)
diff --git a/l3kernel/CHANGELOG.md b/l3kernel/CHANGELOG.md
index 34bbeb527..21ede6a58 100644
--- a/l3kernel/CHANGELOG.md
+++ b/l3kernel/CHANGELOG.md
@@ -14,6 +14,9 @@ this project uses date-based 'snapshot' version identifiers.
- Drop notes about slow `\expanded` emulation. `\expanded` is required since
release 2023-05-15
+### Fixed
+- Case changing of Greek characters with complex NFD representation (issue \#1236)
+
## [2023-06-16]
### Changed
diff --git a/l3kernel/l3text-case.dtx b/l3kernel/l3text-case.dtx
index f761831a6..bd1690d56 100644
--- a/l3kernel/l3text-case.dtx
+++ b/l3kernel/l3text-case.dtx
@@ -1717,8 +1717,9 @@
{#1} {#2} {#3} {#4} {#5}
}
{
- \@@_change_case_breathing_aux:nnnnn
- {#1} {#2} {#3} {#4} {#6}
+ \@@_codepoint_process:nN
+ { \@@_change_case_breathing:nnnnnw {#1} {#2} {#3} {#4} }
+ #6 \q_mark
}
}
\cs_new:Npn \@@_change_case_breathing_aux:nnnnn #1#2#3#4#5
diff --git a/l3kernel/testfiles/m3text002.luatex.tlg b/l3kernel/testfiles/m3text002.luatex.tlg
index bf84b1996..3732ab100 100644
--- a/l3kernel/testfiles/m3text002.luatex.tlg
+++ b/l3kernel/testfiles/m3text002.luatex.tlg
@@ -233,6 +233,8 @@ TEST 17: Greek
ΑΫΠΝΙΑ
ᾸᾹῘῙῨῩ
ᾸᾹῘῙῨῩ
+ἊΙ
+ᾼ
============================================================
============================================================
TEST 18: Turkish/Azeri
diff --git a/l3kernel/testfiles/m3text002.lvt b/l3kernel/testfiles/m3text002.lvt
index b932985df..2c04e2f8d 100644
--- a/l3kernel/testfiles/m3text002.lvt
+++ b/l3kernel/testfiles/m3text002.lvt
@@ -226,6 +226,7 @@
\greektest:n { ; } \NEWLINE
\greektest:n { ἀυπνία } \NEWLINE
\greektest:n { ᾰᾱ ῐῑ ῠῡ } \NEWLINE
+ \greektest:n { ᾂ } \NEWLINE
}
\TESTEXP { Turkish/Azeri }
diff --git a/l3kernel/testfiles/m3text002.ptex.tlg b/l3kernel/testfiles/m3text002.ptex.tlg
index 5ec6dc401..1d3bfd338 100644
--- a/l3kernel/testfiles/m3text002.ptex.tlg
+++ b/l3kernel/testfiles/m3text002.ptex.tlg
@@ -233,6 +233,8 @@ TEST 17: Greek
^^ce^^91υπν^^ce^^99α
^^e1^^be^^b8^^e1^^be^^b9^^e1^^bf^^98^^e1^^bf^^99^^e1^^bf^^a8^^e1^^bf^^a9
^^e1^^be^^b8^^e1^^be^^b9^^e1^^bf^^98^^e1^^bf^^99^^e1^^bf^^a8^^e1^^bf^^a9
+^^e1^^bc^^8a^^ce^^99
+^^e1^^be^^bc
============================================================
============================================================
TEST 18: Turkish/Azeri
diff --git a/l3kernel/testfiles/m3text002.tlg b/l3kernel/testfiles/m3text002.tlg
index 87cc6719b..ac2311cf5 100644
--- a/l3kernel/testfiles/m3text002.tlg
+++ b/l3kernel/testfiles/m3text002.tlg
@@ -233,6 +233,8 @@ TEST 17: Greek
^^ce^^91^^ce^^ab^^ce^^a0^^ce^^9d^^ce^^99^^ce^^91
^^e1^^be^^b8^^e1^^be^^b9^^e1^^bf^^98^^e1^^bf^^99^^e1^^bf^^a8^^e1^^bf^^a9
^^e1^^be^^b8^^e1^^be^^b9^^e1^^bf^^98^^e1^^bf^^99^^e1^^bf^^a8^^e1^^bf^^a9
+^^e1^^bc^^8a^^ce^^99
+^^e1^^be^^bc
============================================================
============================================================
TEST 18: Turkish/Azeri
diff --git a/l3kernel/testfiles/m3text002.uptex.tlg b/l3kernel/testfiles/m3text002.uptex.tlg
index 9d59f0f6f..79fd9170d 100644
--- a/l3kernel/testfiles/m3text002.uptex.tlg
+++ b/l3kernel/testfiles/m3text002.uptex.tlg
@@ -233,6 +233,8 @@ TEST 17: Greek
^^ce^^91^^ce^^ab^^ce^^a0^^ce^^9d^^ce^^99^^ce^^91
^^e1^^be^^b8^^e1^^be^^b9^^e1^^bf^^98^^e1^^bf^^99^^e1^^bf^^a8^^e1^^bf^^a9
^^e1^^be^^b8^^e1^^be^^b9^^e1^^bf^^98^^e1^^bf^^99^^e1^^bf^^a8^^e1^^bf^^a9
+^^e1^^bc^^8a^^ce^^99
+^^e1^^be^^bc
============================================================
============================================================
TEST 18: Turkish/Azeri
diff --git a/l3kernel/testfiles/m3text002.xetex.tlg b/l3kernel/testfiles/m3text002.xetex.tlg
index bf84b1996..3732ab100 100644
--- a/l3kernel/testfiles/m3text002.xetex.tlg
+++ b/l3kernel/testfiles/m3text002.xetex.tlg
@@ -233,6 +233,8 @@ TEST 17: Greek
ΑΫΠΝΙΑ
ᾸᾹῘῙῨῩ
ᾸᾹῘῙῨῩ
+ἊΙ
+ᾼ
============================================================
============================================================
TEST 18: Turkish/Azeri
More information about the latex3-commits
mailing list.