[XeTeX] Change case for non Latin letters

Apostolos Syropoulos asyropoulos at yahoo.com
Sun Sep 28 11:42:04 CEST 2008

>I wonder, has anyone written change case macros for non Latin
characters, similar to >\MakeUppercase and \MakeLowercase? Greek and
Cyrillic are the only other scripts I know 
>of that have letter cases (How are Greek sigmas handled in conversion to lowercase?). 
>Is there a
plan to put such feature into >Polyglossia, for example? I personally
don't have 
>need for them, but surely other people do. I might be able
to write them, as others can too, 
>maybe more efficiently or quicker,
I'm sure; I've done change case functions before for 
>another language,
not TeX
First of all, there is "problem" with XeTeX: the Unicode standard specify the wrong lowercase to
uppercase transformations and uppercase to lowercase transformations (not to mention that some
letters in the Greek Extended block make no sense...), nonetheless, if XeTeX is be to called
Unicode compliant it has to follow these erroneous rules. To remedy this, I rewrote the rules
and include them in xgreek.sty and from there there have been copied verbatim to Polyglossia.
The sigmas are not handled properly, but this demands contextual analysis, that is, replace
Σ  with ς only if it the last letter of a word; otherwise replace Σ with  σ. To the best of my
knowledge this cannot be easily (?) implemented with TeX. However, the Omega Translation 
Processes were ideal for such tasks. I believe the only think that can be done is to include
such features in a font. Indeed, I have solved a similar problem this way. Consider the phrase
Ο άυλος αυλός. Using the "standard" rules you will get Ο ΑΥΛΟΣ ΑΥΛΟΣ which is wrong. The
correct output is Ο ΑΫΛΟΣ ΑΥΛΟΣ. 


Apostolos Syropoulos
Xanthi, Greece

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://tug.org/pipermail/xetex/attachments/20080928/17749c54/attachment.html 

More information about the XeTeX mailing list