[Lazarus] Pochecker (was Fuzzy traslations ignored)

Bart bartjunk64 at gmail.com
Wed Oct 8 14:13:34 CEST 2014


On 10/8/14, Giuliano Colla <giuliano.colla at fastwebnet.it> wrote:
>
> Il 08/10/2014 12:14, Bart ha scritto:

>> All this came from one question: "can you write a tool that prevents
>> exceptions in format() due to wrong translationfiles."
> a LazFormat procedure in LazUtils, which encompasses a sysutils.format
> procedure in a try/except block might have been a simpler solution,
> maybe....

Nice suggestion, but you would only want to use that for
translationstrings, so that would be a huge task to cahnge the Lazarus
codebase..

> I don't know if an attempt to further extend Pochecker functionality is
> a wise move:
> it's been conceived to perform a number of checking tasks, and it does
> its job.

Thank you for that feedback.
See however my last post about some of what Maxim wants.
I think it sounds reasonable.
I also stated what I would not be willing to implement.

>.... This goes together with a revised Translations unit, taking
> advantage of all Bart's improvements, which should obsolete
> SimplePoFiles, and simplify maintenance, both of Pochecker and of the
> PoHelper to come.

That would be of great help.
There have been updates and fixes to translations that never made it
into SimplePofiles.

I would suggest however to discuss that on devel list first.

One thing I struggled with is the use of PChar instead of strings.
It made it (to me, but that's probably a limitation of my skills)
impossible to have line-info on the PoItem.
That's why I rewrote all of this to use Strings.
The disadvantage of that however is that if a po file is NOT in UTF8,
the current code to then convert the entire PChar buffer to UTF8
cannot be used on a String.
(So, as a result I just cut that part out, after verifying that no po
file of Lazarus uses another encoding (which must be specified in the
file) than utf8)

In the past I have suggested that this part could be cut out, as long
as we require po-files to be in UTF8 encoding always.

Bart




More information about the Lazarus mailing list