[latex3-commits] [latex3/latex3] main: Adjust treatment of "eta" in uppercasing "el" (b972c90c8)

github at latex-project.org github at latex-project.org
Mon Jun 12 08:46:44 CEST 2023


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

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

commit b972c90c84042cb5afde22357e978943a1767bce
Author: Joseph Wright <joseph.wright at morningstar2.co.uk>
Date:   Mon Jun 12 06:41:56 2023 +0100

    Adjust treatment of "eta" in uppercasing "el"
    
    A codepoint followed by a control sequence
    isn't really isolated.


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

b972c90c84042cb5afde22357e978943a1767bce
 l3kernel/l3text-case.dtx | 36 ++++++++----------------------------
 1 file changed, 8 insertions(+), 28 deletions(-)

diff --git a/l3kernel/l3text-case.dtx b/l3kernel/l3text-case.dtx
index 608b5c1a3..dd903f104 100644
--- a/l3kernel/l3text-case.dtx
+++ b/l3kernel/l3text-case.dtx
@@ -1552,10 +1552,10 @@
 % \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
@@ -1593,42 +1593,22 @@
   #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
           {
             \codepoint_generate:nn { "0389 }
               { \@@_change_case_catcode:nn {#3} { "0389 } }
           }
-        \@@_change_case_loop:nnw
-      }
-        {#1} {#2} #4 \q_@@_recursion_stop
-  }
-\cs_new:Npn \@@_change_case_boundary_upper_el:nnnN #1#2#3#4
-  {
-    \bool_lazy_or:nnTF
-      { \token_if_letter_p:N #4 }
-      {
-        \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
-          {
-            \codepoint_generate:nn { "0389 }
-              { \@@_change_case_catcode:nn {#1} { "0389 } }
-          }
-        \@@_change_case_loop:nnw {#2} {#3} #4
+        \@@_change_case_loop:nnw {#1} {#2}
       }
+        #4 \q_@@_recursion_stop
   }
 %    \end{macrocode}
 % \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.
@@ -1746,7 +1726,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
   {





More information about the latex3-commits mailing list.