[Lazarus] Making sources compatible with Delphi (but Lazarus is priority)
Ondrej Pokorny
lazarus at kluug.net
Fri May 5 11:41:21 CEST 2017
On 05.05.2017 11:23, Michael Van Canneyt via Lazarus wrote:
> Yes, this somewhat alleviates the problem; but this still is a
> single-byte TStrings, as opposed to the WideString
> TStrings of Delphi. It's also still a single-byte filename argument.
Yes but you forget that unicode is also single-byte UTF-8. And the
greatest thing about FPC: it fully supports "DefaultSystemCodePage :=
CP_UTF8".
Therefore you don't need WideString/UnicodeString file arguments and
UnicodeString-TStrings to have full unicode support in current FPC.
Just use "DefaultSystemCodePage := CP_UTF8" and every single-byte string
is unicode enabled.
Believe me, I use it in production without any problems: I have
unicode-aware TStrings, I can read files with unicode names, I can do
everything with plain FPC trunk.
I don't need a 100% UTF-16 Delphi-Compatible RTL for that at all. I can
do that with current UTF-8 FPC RTL as well. (Honestly I think it's
better for FPC to stick with UTF-8 and don't overcomplicate the RTL with
UTF-16 support.)
Ondrej
More information about the Lazarus
mailing list