>>>>> "Georg" == Georg Baum <[EMAIL PROTECTED]> writes:

>>  Does encoding of file depend on locale? Isn't it stored on the
>> filesystem?

Georg> I am not sure. Under linux the encoding is a mount parameter of
Georg> some filesystems (e.g. fat or ntfs). I believe that other file
Georg> systems like etx3 or reiserfs do not know anything about
Georg> encodings, and that the applications interpret the raw data
Georg> according to the locale. Further research is needed here, also
Georg> on OS X and windows. In the worst case we need a preferences
Georg> option that specifies how filenames are encoded. 

Isn't the OS supposed to do that for us? I can't believe that all apps
are supposed to handle this...

>>  Do we _have_ to do that now?

Georg> No, we don't _have_ to do it now, but I think it is a good
Georg> idea. We could of course also leave everything as it is,
Georg> introduce a std::string const to_filesystem_encoding(docstring
Georg> const &) method and use that where needed. The problem with
Georg> that approach is that we either will miss some places that need
Georg> to be converted, or have to look at all places where filenames
Georg> are used. If we need to do the latter we can as well do the
Georg> type change which has the added benefit that we do not
Georg> introduce a third encoding for std::string. Currently all
Georg> std::string are either ascii or utf8. If we now add a
Georg> potentially different filesystem encoding we ask for trouble
Georg> IMHO.

OK.

JMarc

Reply via email to