Bug 129313 - GNU gettext: wrong plural form definition for the Czech language
Summary: GNU gettext: wrong plural form definition for the Czech language
Status: VERIFIED WONTFIX
Alias: None
Product: SUSE LINUX 10.0
Classification: openSUSE
Component: Development (show other bugs)
Version: unspecified
Hardware: Other Linux
: P5 - None : Normal
Target Milestone: ---
Assignee: Philipp Thomas
QA Contact: E-mail List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-10-19 09:06 UTC by Jakub Friedl
Modified: 2008-09-02 18:07 UTC (History)
0 users

See Also:
Found By: Documentation
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jakub Friedl 2005-10-19 09:06:29 UTC
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;
Comment 1 Philipp Thomas 2005-10-19 10:43:46 UTC
Please report this to the upstream maintainer Bruno Haible <bruno@clisp.org>. We'll pick it up if he decides to follow your proposal.
Comment 2 Jakub Friedl 2005-10-19 11:01:38 UTC
reported upstream
Comment 3 Bruno Haible 2005-10-19 11:54:12 UTC
Thanks for the detailed report and rationale.

The change that you propose is already integrated in GNU gettext since 0.14.2.

I can see from http://ftp.opensuse.org/pub/opensuse/distribution/SL-10.0-OSS/inst-source/suse/src/
that SUSE LINUX 10.0 comes with gettext 0.14.3.

In order to investigate why you see this problem although, from looking at the version
numbers, it should already be fixed, it would be helpful
1) to state a procedure how to reproduce the problem,
2) to show the output of "msginit --version".
Comment 4 Jakub Friedl 2005-10-19 12:13:59 UTC
oh, i see, i have used an older version

i got confused because the manual at
http://www.gnu.org/software/gettext/manual/html_mono/gettext.html#SEC150
is not updated (as well as many mirrors with the software)
Comment 5 Jakub Friedl 2005-10-19 14:24:03 UTC
(in SUSE Linux 10, the handling of Czech plurals is still wrong because of KDE bug
http://bugs.kde.org/show_bug.cgi?id=114688 which is not dependent on gettext)
Comment 6 Bugzilla Account Maintenance 2008-09-02 18:07:37 UTC
Because the LATER and REMIND resolutions have been removed, the resolution of this bug has changed from LATER to WONTFIX. If this bug needs to be reconsidered, reopen it and set a future "Target Milestone for Fix."