[EMAIL PROTECTED] (Ulrich Drepper)  wrote on 01.02.01 in 
<[EMAIL PROTECTED]>:

> Tomohiro KUBOTA <[EMAIL PROTECTED]> writes:
>
> > Thus, either of them should be taken:
> >  1. libc/kernel accepts only UTF-8 filenames.
> >  2. libc/kernel knows the locale.
>
> None of this.  Neither the kernel nor libc will ever do anything about
> the encoding of filenames etc.

I believe the kernel already does convert filenames. It has to, for  
example to use NTFS or VFAT (which use UTF-16 filenames - without  
conversion, no can do), and of course there's a reason the kernel config  
offers support for a dozen or so different character sets.

>  There are these stupid Winblows
> exceptions of course but not for real filesystems.

IMAO, a *real* filesystem should use some encoding of ISO 10646 - UTF-8,  
UTF-16, or UTF-32 are all viable options. The same should be true for the  
kernel filename interfaces.

Anything else is just not long-term viable.

Of course, the best way to live in such an environment is to use UTF-8  
locales - no libc filename translation necessary then. Fortunately, glibc  
already seems to implement that.

So what we really need is:

(1) Find out which sofftware areas still have trouble with this model, and  
fix those.

(2) Have a nice HOWTO explaining how to configure everything to work in  
such an environment. Whatkernel config is needed? Mount options? How do we  
configure the right locales? How to tell the console or X to do this  
right? And so on.

(3) Another nice HOWTO explaining how to migrate legacy data. How to  
locate non-ASCII filenames, how to change those names once we have figured  
out the encoding used, possibly a script to automate that for people who  
are certain they only have one encoding around, how (and when) to convert  
file contents.

MfG Kai
-
Linux-UTF8:   i18n of Linux on all levels
Archive:      http://mail.nl.linux.org/lists/

Reply via email to