[Lazarus] Resource strings and newline

Mattias Gaertner nc-gaertnma at netcologne.de
Thu Jun 19 10:07:59 CEST 2014


On Thu, 19 Jun 2014 07:07:53 +0200
Péter Gábor <ptrg at freemail.hu> wrote:

> I asked about different LineEndigs because of the resourcestrings which
> are written by developers working on different operating systems.
> They may put different LineEnding in resourcestrings if they don't use
> the LineEnding constant, but writing #13#10 or #10 or #13 as it is usual
> on their system. In this case the compiler on an other system may not
> accept the hardcoded line ending as it is wished by the developer.
> 
> If the string 'Linux#10is great!' will be compiled on Linux it will
> become 'Linux \n is great!' but when compiling on windows it will not
> have the \n in it.

All three #10, #13, #13#10 are converted by the Lazarus .po generater
on all platforms to \n. And this will be converted on loading to
LineEnding.

The problem is the original untranslated resourcestring, that contains
the #13 or #10. So if no translation is loaded, the line endings may be
wrong for the platform.

To be safe: use LineEnding instead of #10,#13.

Mattias




More information about the Lazarus mailing list