"Jan Dubois" <[EMAIL PROTECTED]> wrote: >> just why it was removed without any alternative way to ask Perl >> to use native calls (since all *A calls on any NT system is >> just wrappers around *W). > [...] > This has already been discussed some time ago: > http://www.mhonarc.org/archive/html/perl-unicode/2004-02/msg00016.html > Please read the whole thread to see why the code was first disabled > and then removed, and why it is a big task to make Perl work properly > with Unicode filenames (not just on Windows, on all platforms).
Alas, I couldn't get to general discussion - link at end of -C discussion seems to be either mangled in a way I can't restore or broken. Can you name a few major points, since the way old -C switch worked seems to be intuitive and logical to me (provided bug with UTF-8 flag in it would be fixed, of course). But actually, that thread didn't made things much clearer to me. As I understood it, there were largely working feature that had correct end-user (end-programmer :) presence in Perl - it worked with exactly the same kind of data that Perl uses for unicode everywhere, with UTF-8 - had two major, but easily fixed flaws: absent UTF-8 flag check, that can easily be handled by calling MultiByteToWideChar with either CP_UTF8 or CP_ACP, depending on presence of flag and Win9x compatibility concerns, that can be addressed, as mentioned with that thread already, using MSLU or writting mini-library that would call *A or *W version depending on system version. And instead of fixing this easy flaws and sequentally addressing other small issues, feature, or I better say, absolutely necessary function of language that wish to have any success in multi-lingual environment was just completely disabled? I don't understand it. Perl support of unicode in data have problems on EBCDIC platforms, but nobody goes out and disables it, so why it was disabled in this case? > Here is a message that shows how you can open a file whose > name can only be represented in Unicode: > http://www.mhonarc.org/archive/html/perl-unicode/2005-02/msg00010.html Yes, I know. My module uses almost the same lines, except I call API with Win32::API instead of Win32API::File. However, not mentioning that this is just ugly, even using specialised module that would simplify such a thing to one neat function call have a several major flaws: first, it is unportable, second, you can use it in program you wrote yourself, but it won't fix for you number of useful Perl programs lying around, nor it will help you with dozens of modules that work with files passed by their names. -- Oleg "Rowaa[SR13]" V. Volkov