[latex3-commits] [git/LaTeX3-latex3-latex3] main: Correct support for ypogegrammeni in Greek (fixes #1088) (cc8a6603e)
Joseph Wright
joseph.wright at morningstar2.co.uk
Fri Apr 29 00:36:49 CEST 2022
Repository : https://github.com/latex3/latex3
On branch : main
Link : https://github.com/latex3/latex3/commit/cc8a6603efb3c001136cbfbb628c0a0fad95e1a5
>---------------------------------------------------------------
commit cc8a6603efb3c001136cbfbb628c0a0fad95e1a5
Author: Joseph Wright <joseph.wright at morningstar2.co.uk>
Date: Thu Apr 28 23:36:49 2022 +0100
Correct support for ypogegrammeni in Greek (fixes #1088)
The el-xiota option to add in a second commit tomorrow.
>---------------------------------------------------------------
cc8a6603efb3c001136cbfbb628c0a0fad95e1a5
l3kernel/CHANGELOG.md | 3 +++
l3kernel/l3text-case.dtx | 9 ++++++++-
l3kernel/testfiles/m3text002.luatex.tlg | 4 ++++
l3kernel/testfiles/m3text002.lvt | 2 +-
l3kernel/testfiles/m3text002.tlg | 3 ++-
l3kernel/testfiles/m3text002.uptex.tlg | 4 ++++
l3kernel/testfiles/m3text002.xetex.tlg | 4 ++++
7 files changed, 26 insertions(+), 3 deletions(-)
diff --git a/l3kernel/CHANGELOG.md b/l3kernel/CHANGELOG.md
index 53e01867e..21341a087 100644
--- a/l3kernel/CHANGELOG.md
+++ b/l3kernel/CHANGELOG.md
@@ -12,6 +12,9 @@ this project uses date-based 'snapshot' version identifiers.
`luaotfload`
- Allow for `\lccode`/`\uccode` changes in `\char_...case:n` functions
+### Fixed
+- Support for ypogegrammeni in case changing Greek (see issue \#1088)
+
## [2022-04-20]
### Changed
diff --git a/l3kernel/l3text-case.dtx b/l3kernel/l3text-case.dtx
index 10825f0c2..507819a27 100644
--- a/l3kernel/l3text-case.dtx
+++ b/l3kernel/l3text-case.dtx
@@ -820,7 +820,14 @@
}
{
\int_compare:nNnTF { `#4 } = { "0345 }
- { \@@_change_case_loop:nnw {#2} {#3} }
+ {
+ \@@_change_case_store:e
+ {
+ \char_generate:nn { "0399 }
+ { \char_value_catcode:n { "0399 } }
+ }
+ \@@_change_case_loop:nnw {#2} {#3}
+ }
{ \@@_change_case_char:nnnN {#1} {#2} {#3} #4 }
}
}
diff --git a/l3kernel/testfiles/m3text002.luatex.tlg b/l3kernel/testfiles/m3text002.luatex.tlg
index 1c325329e..95717433c 100644
--- a/l3kernel/testfiles/m3text002.luatex.tlg
+++ b/l3kernel/testfiles/m3text002.luatex.tlg
@@ -176,6 +176,10 @@ TEST 15: Greek
ΡΩΜΕΪΚΑ
Ὀδυσσεύς
Ὀδυσσεύς
+ΉΙ
+ΗΙ
+ΗΊ
+ΗΙ
============================================================
============================================================
TEST 16: Turkish/Azeri
diff --git a/l3kernel/testfiles/m3text002.lvt b/l3kernel/testfiles/m3text002.lvt
index ad013cbcc..a5ef007af 100644
--- a/l3kernel/testfiles/m3text002.lvt
+++ b/l3kernel/testfiles/m3text002.lvt
@@ -184,7 +184,7 @@
\greektest:n { Το~ένα~ή~το~άλλο. } \NEWLINE
\greektest:n { ρωμέικα } \NEWLINE
\text_titlecase:n { ὈΔΥΣΣΕΎΣ } \NEWLINE
- \text_titlecase:nn { el } { ὈΔΥΣΣΕΎΣ }
+ \text_titlecase:nn { el } { ὈΔΥΣΣΕΎΣ } \NEWLINE
% Taken from luaotfload tests
\greektest:n { ῄ } \NEWLINE
\greektest:n { ῄ } \NEWLINE
diff --git a/l3kernel/testfiles/m3text002.tlg b/l3kernel/testfiles/m3text002.tlg
index da2d11576..d0b3bf81b 100644
--- a/l3kernel/testfiles/m3text002.tlg
+++ b/l3kernel/testfiles/m3text002.tlg
@@ -175,7 +175,8 @@ TEST 15: Greek
^^ce^^a1^^ce^^a9^^ce^^9c^^ce^^88^^ce^^99^^ce^^9a^^ce^^91
^^ce^^a1^^ce^^a9^^ce^^9c^^ce^^88^^ce^^99^^ce^^9a^^ce^^91
^^e1^^bd^^88^^ce^^b4^^cf^^85^^cf^^83^^cf^^83^^ce^^b5^^cf^^8d^^cf^^82
-^^e1^^bd^^88^^ce^^b4^^cf^^85^^cf^^83^^cf^^83^^ce^^b5^^cf^^8d^^cf^^82^^e1^^bf^^84
+^^e1^^bd^^88^^ce^^b4^^cf^^85^^cf^^83^^cf^^83^^ce^^b5^^cf^^8d^^cf^^82
+^^e1^^bf^^84
^^e1^^bf^^84
^^e1^^bf^^8c^^cc^^81
^^e1^^bf^^8c^^cc^^81
diff --git a/l3kernel/testfiles/m3text002.uptex.tlg b/l3kernel/testfiles/m3text002.uptex.tlg
index 16a51a873..96997cabc 100644
--- a/l3kernel/testfiles/m3text002.uptex.tlg
+++ b/l3kernel/testfiles/m3text002.uptex.tlg
@@ -176,6 +176,10 @@ TEST 15: Greek
^^ce^^a1^^ce^^a9^^ce^^9c^^ce^^88^^ce^^99^^ce^^9a^^ce^^91
^^e1^^bd^^88^^ce^^b4^^cf^^85^^cf^^83^^cf^^83^^ce^^b5^^cf^^8d^^cf^^82
^^e1^^bd^^88^^ce^^b4^^cf^^85^^cf^^83^^cf^^83^^ce^^b5^^cf^^8d^^cf^^82
+^^e1^^bf^^84
+^^e1^^bf^^84
+^^e1^^bf^^83^^cc^^81
+^^e1^^bf^^83^^cc^^81
============================================================
============================================================
TEST 16: Turkish/Azeri
diff --git a/l3kernel/testfiles/m3text002.xetex.tlg b/l3kernel/testfiles/m3text002.xetex.tlg
index 1c325329e..95717433c 100644
--- a/l3kernel/testfiles/m3text002.xetex.tlg
+++ b/l3kernel/testfiles/m3text002.xetex.tlg
@@ -176,6 +176,10 @@ TEST 15: Greek
ΡΩΜΕΪΚΑ
Ὀδυσσεύς
Ὀδυσσεύς
+ΉΙ
+ΗΙ
+ΗΊ
+ΗΙ
============================================================
============================================================
TEST 16: Turkish/Azeri
More information about the latex3-commits
mailing list.