a40fd4cde9
It's PITA because they broke it at it doesn't look that they are going to do something with it. The plural form for number 14 is broken because the condition is bad. It should be n%100>14 instead of n%100>=14. In the past it was using 3rd form for numbers 12, 13, 14 and it's the proper form for these numbers. The new format uses 2nd form for number 14. Moreover the condition for third form is just a negation of the first and second form, so that the 4th form actually never happens. Also the condition for 3rd form is ambiguous. Should it be (n!=1 && (n%10>=0 && n%10<=1)) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) or maybe n!=1 && ((n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14)) Based on Unicode plural rules, the 4th form should be used for floating point numbers, but it's not supported by tinygettext anyway. In short, handle the new format in the same way as it was before, so that the 4th form is useless, but at least everything works properly. |
||
---|---|---|
.. | ||
dictionary_manager.cpp | ||
dictionary_manager.hpp | ||
dictionary.cpp | ||
dictionary.hpp | ||
file_system.hpp | ||
language.cpp | ||
language.hpp | ||
plural_forms.cpp | ||
plural_forms.hpp | ||
po_parser.cpp | ||
po_parser.hpp | ||
stk_file_system.cpp | ||
stk_file_system.hpp | ||
tinygettext.cpp | ||
tinygettext.hpp |