[Python-Dev] logging module broken because of locale (original) (raw)

"Martin v. Löwis" martin at v.loewis.de
Tue Jul 18 23:15:17 CEST 2006


M.-A. Lemburg wrote:

Right. In fact, some case mappings are not available in the Unicode database, since that only contains mappings which don't increase or decrease the length of the Unicode string. A typical example is the German u'ß'. u'ß'.upper() would have to give u'SS', but instead returns u'ß'.

Actually, that is in the Unicode database (SpecialCasing.txt):

00DF; 00DF; 0053 0073; 0053 0053; # LATIN SMALL LETTER SHARP S

However, the point I wanted to make was that these mappings don't depend on the locale setting of the C lib - you have to explicitly access the mapping in the context of a locale and/or text.

I don't get that point. SpecialCasing.txt is clearly intended to take locale context into account. Whether this is the "C locale", or some other locale mechanism, is out of scope of the Unicode specification. It could be the C locale (and indeed, the C locale implementations often take the Unicode casing procedure into account these days).

Regards, Martin



More information about the Python-Dev mailing list