[fpc-pascal] Summary of Unicode Strings Debate

Mazo Winst mazofeifer at gmail.com
Wed May 11 17:07:11 CEST 2016


2016-05-11 11:44 GMT-03:00 Michael Van Canneyt <michael at freepascal.org>:

>
>
> On Wed, 11 May 2016, Mazo Winst wrote:
>
> Hello,
>>
>> A summary of what i learned from the Unicode String debate:
>>
>> 1 - FPC 3 introduces code page aware strings
>>
>> 2 - FPC 3 updates the RTL to provide a better support for code page aware
>> strings
>>
>> 3 - The dynamic behavior of the string type regarding to the platform was
>> not introduced by FPC 3. In the previous versions of FPC, the string type
>> depends on the platform too.
>>
>
> The string type does not depend on the platform.
>
> The only thing that depends on the platform is the default encoding used
> in an AnsiString.
>
>
When i said "dynamic String type behavior" i mean "dynamic definition of
the String encoding".


> 5 - The automatic conversion is a desirable feature. IMHO, the definitive
>> solution would be to stop the unpredictable dynamic behavior of the String
>> type following the same path that Delphi followed: addopt the same unicode
>> string code page on all platforms.
>>
>> 6 - A workaround when developing a cross-platform app is to use the
>> Lazarus
>> Unicode Support
>> <http://wiki.freepascal.org/Better_Unicode_Support_in_Lazarus>;
>>
>
> Huh ? What kind of statement is this ?
> What do you think Lazarus uses under the hood ? Last I looked, it was FPC
> :-)
>
> It seems to me that most people simply do not understand fully what is
> happening, and as a result, a lot of misunderstandings are abound.
>
>
The Lazarus support for Unicode provide some units which allows us to adopt
the same encoding on all platforms (UTF-8). When i say "allow us to adopt
the same encoding on all platforms" i mean "they take care of many issues
that arises when we adopt the UTF-8 on all platforms. I suppose that adopt
UTF-8 on Windows is not as simple as set the system code page through
SetMultiByteConversionCodePage.
I suppose there are several side effects when we do that. In this regard,
the Lazarus unicode support helps a lot."

Best regards
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-pascal/attachments/20160511/eecdab8b/attachment.html>


More information about the fpc-pascal mailing list