bug-glibc
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

case sensitive string functions and l10n


From: Bjoern JACKE
Subject: case sensitive string functions and l10n
Date: Sun, 31 Aug 2003 21:21:00 +0200
User-agent: Mutt/1.5.3i

Hi,
localization brings a lot of trouble with string functions which do *very* different things in different locales:

export LC_ALL=tr_TR
echo I | tr [:upper:] [:lower]
... results in a dotless i.

export LC_ALL=tr_TR.UTF-8
echo I | tr [:upper:] [:lower]
... results in the "normal" i.

This is a strange inconsitency anyway.

But I would say it is not sane at all if major functions like tolower() and toupper() are being localozed and are no longer ASCII compatible.

This caused a lot of troube for mutt 2 years ago, where we had to introduce ascii versions of case sensitive functions, becuase "ASCII" or "ISO" was no longer the same as "ascii" or "iso". CUPS had the same problem still a few weeks ago and now I see, lynx has the same "turkish" problem (imagine to write html tags with non-ascii characters and expect this to work), where this functions everyone uses everyday suddenly are no longer ascii compatible.

Wouldn't it be better to introduce localized versions of this functions and giver them a different name? This is such a major source of errors that the tr_TR locale (maybe others, too) are quasi unusable. In the meantime I must admit I consider l10n at this point as really broken. You cannot demant that programmers switch to C locale each time they expect the function to be ASCII compatible.

Bjoern

Attachment: pgpJKERhTAlIM.pgp
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]