[pology] Pology bug where non-exact compendium matches lose information on previous strings

Karl Ove Hufthammer karl at huftis.org
Fri Apr 29 12:52:07 PDT 2022


Hi!

See the e-mail discussion below. I’ve now been running Pology with this 
patch for over a year, with no ill effects (except the one mentioned 
below). Any chance it can be merged?


Karl Ove Hufthammer

Karl Ove Hufthammer skreiv 02.03.2021 21:39:
> Chusslove Illich skreiv 28.02.2021 21:27:
>> I attach a patch that fixes it, but could you first try it on your side?
>> Maybe run a full merge with and without the patch, and check that
>> nothing unexpected happens with the patch applied.
>
>
> Thank you for the very quick response! I have tested the patch. With 
> it, there seems to be some changes in the way plurals are handled. 
> This only affected 4 out of 1773 files, and I’m not sure if the new 
> behaviour is better or worse. So I think it’s OK.
>
> But when testing, I found a behaviour which I find somewhat confusing, 
> but which may be intended. What should happen when a string is matched 
> with a similar *fuzzy* string in the same file? Example (PO file):
>
> #, fuzzy
> #| msgid "One city matches search criteria"
> #| msgid_plural "%1 cities match search criteria"
> msgid "Exact matches search"
> msgstr "Éin by møtte søkjekriteria"
>
> #, fuzzy
> msgid "Interpolated matches search"
> msgstr "Foo bar baz."
>
>
> When merging (with an empty compendium and a POT file containing at 
> least the first string), the first string is turned into:
>
> #, fuzzy
> msgid "Exact matches search"
> msgstr "Foo bar baz."
>
> Note that there is no longer a ‘#|’ comment indicating the msgid of 
> the suggestion. So it looks like the original msgid is the present 
> msgid. I guess this makes sense, because if a fuzzy string don’t have 
> a ‘#|’, you don’t *know* what its original msgid was. It’s perhaps not 
> be the present msgid, since the PO file might have been generated 
> without the ‘--previous’ option for msgmerge.
>
> On the other hand, if you *always* use ‘--previous’ (or the equivalent 
> for Pology), the loss of the original ‘msgid’ is a problem, since it 
> now looks like ‘Exact matches search’ *was* the original msgid for the 
> translation ‘Foo bar baz.’ (since there isn’t a ‘#|’ comment).


More information about the pology mailing list