[latex3-commits] [git/LaTeX3-latex3-latex3] main: Use "hy" for Armenian "hy-x-yiwn" for the alternative (4ff893183)

Joseph Wright joseph.wright at morningstar2.co.uk
Tue May 3 12:02:22 CEST 2022


Repository : https://github.com/latex3/latex3
On branch  : main
Link       : https://github.com/latex3/latex3/commit/4ff89318325683da8db39f168ddbd48586c35408

>---------------------------------------------------------------

commit 4ff89318325683da8db39f168ddbd48586c35408
Author: Joseph Wright <joseph.wright at morningstar2.co.uk>
Date:   Tue May 3 11:02:22 2022 +0100

    Use "hy" for Armenian "hy-x-yiwn" for the alternative
    
    As Armenia uses the newer orthography, this seems the most
    reasonable approach.


>---------------------------------------------------------------

4ff89318325683da8db39f168ddbd48586c35408
 l3kernel/CHANGELOG.md                   |  2 +-
 l3kernel/l3text-case.dtx                | 15 ++++++++++++---
 l3kernel/l3text.dtx                     | 12 +++++++-----
 l3kernel/testfiles/m3text002.luatex.tlg |  4 ++++
 l3kernel/testfiles/m3text002.lvt        |  6 +++++-
 l3kernel/testfiles/m3text002.tlg        |  4 ++++
 l3kernel/testfiles/m3text002.uptex.tlg  |  4 ++++
 l3kernel/testfiles/m3text002.xetex.tlg  |  4 ++++
 8 files changed, 41 insertions(+), 10 deletions(-)

diff --git a/l3kernel/CHANGELOG.md b/l3kernel/CHANGELOG.md
index ee60c9432..497aefd64 100644
--- a/l3kernel/CHANGELOG.md
+++ b/l3kernel/CHANGELOG.md
@@ -8,7 +8,7 @@ this project uses date-based 'snapshot' version identifiers.
 ## [Unreleased]
 
 ### Added
-- Language setting "hy-x-yiwn" for handling of ech-yiwm ligature
+- Language settings `hy` and `hy-x-yiwn` for handling of ech-yiwm ligature
   uppercasing
 
 ### Fixed
diff --git a/l3kernel/l3text-case.dtx b/l3kernel/l3text-case.dtx
index 1048f0e12..94c22ae48 100644
--- a/l3kernel/l3text-case.dtx
+++ b/l3kernel/l3text-case.dtx
@@ -1227,14 +1227,19 @@
 % \end{macro}
 %
 % \begin{macro}[EXP]
-%   {\@@_change_case_upper_hy-x-yiwn:nnnN, \@@_change_case_title_hy-x-yiwn:nnNN}
+%   {
+%     \@@_change_case_upper_hy:nnnN        ,
+%     \@@_change_case_title_hy:nnNN        ,
+%     \@@_change_case_upper_hy-x-yiwn:nnnN ,
+%     \@@_change_case_title_hy-x-yiwn:nnNN
+%   }
 %     See \url{https://www.unicode.org/L2/L2020/20143-armenian-ech-yiwn.pdf}.
 %    \begin{macrocode}
 \bool_lazy_or:nnT
   { \sys_if_engine_luatex_p: }
   { \sys_if_engine_xetex_p: }
   {
-    \cs_new:cpn { @@_change_case_upper_hy-x-yiwn:nnnN } #1#2#3#4
+    \cs_new:cpn { @@_change_case_upper_hy:nnnN } #1#2#3#4
       {
         \int_compare:nNnTF { `#4 } = { "0587 }
           {
@@ -1248,7 +1253,7 @@
           }
           { \@@_change_case_char:nnnN {#1} {#2} {#3} #4 }
       }
-    \cs_new:cpn { @@_change_case_title_hy-x-yiwn:nnnN } #1#2#3#4
+    \cs_new:cpn { @@_change_case_title_hy:nnnN } #1#2#3#4
       {
         \int_compare:nNnTF { `#4 } = { "0587 }
           {
@@ -1262,6 +1267,10 @@
           }
           { \@@_change_case_char:nnnN {#1} {#2} {#3} #4 }
       }
+    \cs_new:cpn { @@_change_case_upper_hy-x-yiwm:nnnN } #1#2#3#4
+      { \@@_change_case_char:nnnN {#1} {#2} {#3} #4 }
+    \cs_new_eq:cc { @@_change_case_title_hy-x-yiwm:nnnN }
+      { @@_change_case_upper_hy-x-yiwm:nnnN }
   }
 %    \end{macrocode}
 % \end{macro}
diff --git a/l3kernel/l3text.dtx b/l3kernel/l3text.dtx
index a87827b45..3a10218a9 100644
--- a/l3kernel/l3text.dtx
+++ b/l3kernel/l3text.dtx
@@ -150,15 +150,17 @@
 %   argument, and follow Unicode Consortium guidelines. Currently, the
 %   languages recognised for special handling are as follows.
 %   \begin{itemize}
+%     \item Armenian (\texttt{hy} and \texttt{hy-x-yiwn})
+%       The setting \texttt{hy} maps the codepoint U+0587, the ligature of
+%       letters ech and yiwn, to the codepoints for capital ech and vew
+%       when uppercasing: this follows the spelling reform which is used
+%       in Armenia. The alternative \texttt{hy-x-yiwn} maps U+0587 to
+%       capital ech and yiwn on uppercasing (also the output if Armenian
+%       is not selected at all).
 %     \item Azeri and Turkish (\texttt{az} and \texttt{tr}).
 %       The case pairs I/i-dotless and I-dot/i are activated for these
 %       languages. The combining dot mark is removed when lowercasing
 %       I-dot and introduced when upper casing i-dotless.
-%     \item Eastern Armenian (\texttt{hy-x-yiwn})
-%       The standard settings map the codepoint U+0587, the ligature of
-%       letters ech and yiwn, to the two codepoints for the capital letters
-%       when uppercasing. In Eastern Armenian, the output should be ech and
-%       vew: this is activated using the \texttt{hy-x-yiwn} setting.
 %     \item German (\texttt{de-x-eszett}).
 %       An alternative mapping for German in which the lowercase
 %       \emph{Eszett} maps to a \emph{gro\ss{}es Eszett}. Since there is
diff --git a/l3kernel/testfiles/m3text002.luatex.tlg b/l3kernel/testfiles/m3text002.luatex.tlg
index e747a9bd1..08fa1cce2 100644
--- a/l3kernel/testfiles/m3text002.luatex.tlg
+++ b/l3kernel/testfiles/m3text002.luatex.tlg
@@ -136,6 +136,10 @@ TEST 14: Armenian
 ============================================================
 ԵՐԵՒԱՆ
 ԵՐԵՎԱՆ
+ԵՐԵՒԱՆ
+Երևան
+Երևան
+Երևան
 ============================================================
 ============================================================
 TEST 15: German-alternative
diff --git a/l3kernel/testfiles/m3text002.lvt b/l3kernel/testfiles/m3text002.lvt
index bbb30b4ee..7211e58b1 100644
--- a/l3kernel/testfiles/m3text002.lvt
+++ b/l3kernel/testfiles/m3text002.lvt
@@ -152,7 +152,11 @@
 \TESTEXP { Armenian }
   {
     \text_uppercase:n                { Երևան } \NEWLINE
-    \text_uppercase:nn { hy-x-yiwn } { Երևան }
+    \text_uppercase:nn { hy }        { Երևան } \NEWLINE
+    \text_uppercase:nn { hy-x-yiwn } { Երևան } \NEWLINE
+    \text_titlecase:n                { Երևան } \NEWLINE
+    \text_titlecase:nn { hy }        { Երևան } \NEWLINE
+    \text_titlecase:nn { hy-x-yiwn } { Երևան }
   }
 
 \TESTEXP { German-alternative }
diff --git a/l3kernel/testfiles/m3text002.tlg b/l3kernel/testfiles/m3text002.tlg
index 0f86acc46..403dd238c 100644
--- a/l3kernel/testfiles/m3text002.tlg
+++ b/l3kernel/testfiles/m3text002.tlg
@@ -136,6 +136,10 @@ TEST 14: Armenian
 ============================================================
 ^^d4^^b5^^d6^^80^^d6^^87^^d5^^a1^^d5^^b6
 ^^d4^^b5^^d6^^80^^d6^^87^^d5^^a1^^d5^^b6
+^^d4^^b5^^d6^^80^^d6^^87^^d5^^a1^^d5^^b6
+^^d4^^b5^^d6^^80^^d6^^87^^d5^^a1^^d5^^b6
+^^d4^^b5^^d6^^80^^d6^^87^^d5^^a1^^d5^^b6
+^^d4^^b5^^d6^^80^^d6^^87^^d5^^a1^^d5^^b6
 ============================================================
 ============================================================
 TEST 15: German-alternative
diff --git a/l3kernel/testfiles/m3text002.uptex.tlg b/l3kernel/testfiles/m3text002.uptex.tlg
index 3ed2cad1c..013e8ffb7 100644
--- a/l3kernel/testfiles/m3text002.uptex.tlg
+++ b/l3kernel/testfiles/m3text002.uptex.tlg
@@ -136,6 +136,10 @@ TEST 14: Armenian
 ============================================================
 ^^d4^^b5^^d6^^80^^d6^^87^^d5^^a1^^d5^^b6
 ^^d4^^b5^^d6^^80^^d6^^87^^d5^^a1^^d5^^b6
+^^d4^^b5^^d6^^80^^d6^^87^^d5^^a1^^d5^^b6
+^^d4^^b5^^d6^^80^^d6^^87^^d5^^a1^^d5^^b6
+^^d4^^b5^^d6^^80^^d6^^87^^d5^^a1^^d5^^b6
+^^d4^^b5^^d6^^80^^d6^^87^^d5^^a1^^d5^^b6
 ============================================================
 ============================================================
 TEST 15: German-alternative
diff --git a/l3kernel/testfiles/m3text002.xetex.tlg b/l3kernel/testfiles/m3text002.xetex.tlg
index e747a9bd1..08fa1cce2 100644
--- a/l3kernel/testfiles/m3text002.xetex.tlg
+++ b/l3kernel/testfiles/m3text002.xetex.tlg
@@ -136,6 +136,10 @@ TEST 14: Armenian
 ============================================================
 ԵՐԵՒԱՆ
 ԵՐԵՎԱՆ
+ԵՐԵՒԱՆ
+Երևան
+Երևան
+Երևան
 ============================================================
 ============================================================
 TEST 15: German-alternative





More information about the latex3-commits mailing list.