Danilo Segan wrote: > what about user deciding to change LC_CTYPE? A user who switches to a different LC_CTYPE, or works in two different LC_CTYPEs in parallel, will need to convert his plain text files when moving them from one world to the other. It is not much more effort to also convert the file names at the same moment.
> Or even > worse, what if administrator provides some dirs for the user in an > encoding different from the one user wants to use? > > Eg. imagine having a global "/Müsik" in ISO-8859-1, and user desires > to use UTF-8 or ISO-8859-5. For this directory to be useful for different users, the files that it contains have to be in the same encoding. (If a user put the titles or lyrics of a song there in ISO-8859-5, and another user wants to see them in his UTF-8 locale, there will be a mess.) So a requirement for using a common directory is _anyway_ that all users are in locales with the same encoding. > My point is that the filesystem encoding should be filesystem-wide > (not per-user) All that you say about the file names is also valid for the file contents. A lot of them are in plain text, and filenames are easily converted into plain text. But all POSIX compliant applications have their interpretation of plain text guided by LC_CTYPE et al. > That's not closer to ever solving the problem. It's status quo. I > think we should at least recommend improvements, if not require them > (and nobody suggested requiring them). > > Basically, my recommendation was to set LC_CTYPE to UTF-8 on all new > systems. We have the same goal, namely to let all users use UTF-8, and get rid of any user-visible character set conversions. I agree with the recommendations that you make to users and sysops. However, when you recommend to an application author that his application should consider all filenames as being UTF-8, this is not an improvement. It is a no-op for the UTF-8 users but breaks the world of the EUC-JP and KOI8-R users. Bruno -- Linux-UTF8: i18n of Linux on all levels Archive: http://mail.nl.linux.org/linux-utf8/