[Lazarus] Fuzzy translations ignored

Giuliano Colla giuliano.colla at fastwebnet.it
Thu Sep 4 12:45:50 CEST 2014

Il 04/09/2014 00:20, Mattias Gaertner ha scritto:
> On Thu, 04 Sep 2014 00:13:33 +0200
> Giuliano Colla <giuliano.colla at fastwebnet.it> wrote:
>> In recent Lazarus trunk versions it happens that translations marked as
>> "fuzzy" are ignored, and the untranslated string is shown.
>> Is this a bug to be notified, or a "feature"?
>> If it's a feature I find it rather questionable, because a fuzzy
>> translation is in most cases much better than no translation at all.
> Maybe related:
> http://bugs.freepascal.org/view.php?id=26619

Yes it's related, but in the wrong direction, IMHO.

I've investigated and it turns out to be a "feature". Quoting unit 
lcl/translations.pas line 820:

   //Load translation only if it exists and is NOT fuzzy.
   //This matches gettext behaviour and allows to avoid a lot of crashes related
   //to formatting arguments mismatches.
   if (Item<>nil) and (pos('fuzzy', lowercase(Item.Flags))=0) then begin

What has happened in recent past is that there was a change of policy 
for handling quotes and all translation files were submitted to a 
substantial revision. Because of the consequent formatting argument 
mismatches there was a lot of crashes, and the problem was raised.

But this was an exceptional situation, which may occur one or two times 
in a decade, and which should never condition everyday activities.
The normal situation is that someone may correct a spelling error in a 
string, or provide an extra detail, and this causes the translation to 
become fuzzy.
What would have happened up to now was that the translation would have 
still been the old one, what will happen from now on is that the 
translation won't be used, and the untranslated string will be shown.

Lazarus attempts to provide professional quality, but can take advantage 
only of voluntary work. One should take this fact into account when 
making decisions. What would be perfectly reasonable in an enterprise 
environment, becomes quite impractical in our reality.

Therefore my point is: please let live fuzzy translations, less we 
provide too many untranslated strings which will discourage new (and 
existing) users. When a Lazarus Foundation will exist, with a lot of 
money to spend, and someone will be in charge of keeping translations 
updated, I'll be the first to support a different policy.


More information about the Lazarus mailing list