widelands-dev team mailing list archive
-
widelands-dev team
-
Mailing list archive
-
Message #07270
Re: [Merge] lp:~widelands-dev/widelands/test-ngettext into lp:widelands
I fully agree with GunChleoc regarding Klaus' post. In Slovak we would say "twenty-five whole (ones) (and) six tenths of a second" and write "25,6 sekundy", where "sekundy" is the genitive case form of the word second. That's why a special plural form is needed.
As for the merge request, I will sum up my stance:
- Ngettext should not accept a float parameter. Scripters are falsely led to believe that it will be handled correctly for every language.
- To fix existing usages, instead of ngettext we should use a simple gettext (_) call with a symbol/abbreviation for the unit, or not use formatting placeholders at all, as long as the number is static. I am leaning towards the first option because it is easier to maintain.
> Let's say the value is currently 25.5 - then you would need to translate "%d
> seconds" with the floating point translation in Slovak. If the value changes
> to 25, you would need to change your translation - but how would you know? How
> would a programmer who is not aware of the issue know to give you a hint?
I am aware of that. This is the issue we're trying to solve/work around here. I thought you were replying to my previous post...
--
https://code.launchpad.net/~widelands-dev/widelands/test-ngettext/+merge/291587
Your team Widelands Developers is subscribed to branch lp:~widelands-dev/widelands/test-ngettext.
References