[fpc-pascal] Funny things about utf-8 strings on mac
jonas.maebe at elis.ugent.be
Wed Jun 13 11:35:09 CEST 2007
On 13 jun 2007, at 11:26, Florian Klaempfl wrote:
>> Sorry, but this view is too "terminal-centric" as far as I am
>> That's not something you want to tell users of a GUI app. Or even
>> programmers, for that matter. I really don't see a reason why this
>> should not be configurable by the programmer himself.
> Well, then something with the design is wrong. Ansistrings are per
> definition strings which use the default 8 bit encoding of the
The problem is the definition of "environment". What libiconv
considers as environment (some terminal environment variables) does
not necessarily match the api's you are using in your program.
> Putting always utf-8 into them is abusing them and that's
> why there is an utf8string type in the system unit.
I'm not saying that they should always contain utf-8, but that the
programmer should be able to control this. It's also not just about
explicitly using ansistrings, but also about constant strings. If you
then you'd like a way for that constant string to be passed as utf-8
in all cases without needing to put utf8encode() calls everywhere in
your program (especially if all api routines I use expect utf-8,
which is pretty much the case on Darwin/Mac OS X).
More information about the fpc-pascal