[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
GNU gettext: wrong plural form definition for the Czech language
From: |
Jakub Friedl |
Subject: |
GNU gettext: wrong plural form definition for the Czech language |
Date: |
Wed, 19 Oct 2005 12:58:02 +0200 |
User-agent: |
KMail/1.8 |
Hi,
I was asked to forward a bug originally filled as
https://bugzilla.novell.com/show_bug.cgi?id=129313
upstream:
GNU gettext uses this plural form definition for the Czech language:
nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10
|| n%100>=20) ? 1 : 2)
I believe it is wrong and should be changed for following reasons:
1) http://www.ujc.cas.cz/poradna/odpo.html#dveste (czech only, sorry)
It enforces a language rule, which is not mandatory since 1970'.
It is not incorrect (its use is still optional), however it sounds
somewhat archaic today. According to the language institute of the Academy
of Sciences of the Czech Republic (the Czech link above) it is:
"more common and more natural to NOT use this rule"
2) Its use induces problems. Many (probably most) translators do not expect
use of this rule. Then they translate the first plural form as it would
be used only for singular (1 item exactly), not using a variable "%n"
but literal string as "1", "one" or similar. Then, bugs like this one
happen: http://bugs.kde.org/show_bug.cgi?id=114283
I propose following definition (modern Czech language, not inducing
described problems):
nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;
Jakub Friedl, SUSE
- GNU gettext: wrong plural form definition for the Czech language,
Jakub Friedl <=