[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Bug-gnubg] ngettext() support for plurals
From: |
TAKAHASHI Kaoru |
Subject: |
Re: [Bug-gnubg] ngettext() support for plurals |
Date: |
Sun, 11 Jul 2004 20:24:24 +0900 |
User-agent: |
Wanderlust/2.11.30 (Wonderwall) SUTEMI/1.14.6 (White Eve) FLIM/1.14.6 (Marutamachi) MULE XEmacs/21.4 (patch 15) (Security Through Obscurity) (i686-pc-linux) |
Hi,
At Sun, 11 Jul 2004 12:14:51 +0200,
Petr Kadlec <address@hidden> wrote:
> <FYI>Just a (not really entertaining) note:
> >"Plural-Forms: nplurals=3;
> > plural=(n%10==1 && n%100!=11 ? 0 :
> > n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"
> >
> ># Czech, Russian
> >msgid "Match to %d point"
> >msgid_plural "Match to %d points"
> >msgstr[0] "..." # n == 1, 21, 31 ...
> >msgstr[1] "..." # n == 2, 3, 4, 22, 23, 24 ...
> >msgstr[2] "..." # other
>
> In Czech, this is the way it used to be, but nowadays, this is (although
> still correct) not really used (and is usually considered slightly silly).
> Today, we have practically abandoned the system in which 101, 201, ...,
> 1001, ... should use singular-like endings (similarly for 102, 103, 104,
> 202, 203, ...). We use just singular (for 1), something-like-dual (for 2,
> 3, 4) and plural (for everything else):
>
> "Plural-Forms: nplurals=3;
> plural=(n==1 ? 0 : n>=2 && n<=4 ? 1 : 2);"
>
> msgid "Time penalty: %s loses %d point\n"
> msgid_plural "Time penalty: %s loses %d points\n"
> msgstr[0] "Èasová penalizace: %s ztrácí %d bod\n" # n == 1
> msgstr[1] "Èasová penalizace: %s ztrácí %d body\n" # n == 2, 3, 4
> msgstr[2] "Èasová penalizace: %s ztrácí %d bodù\n" # other (n == 0 || n >= 5)
>
> (I have not used your example, because, accidentally, it uses genitive
> case, so both plurals are identical.)
> </FYI>
Thank you for information. If you can, please bug report to GNU
gettext developers <address@hidden>.
In gettext-0.14.1/gettext-tools/src/plural-table.c, cs plural
style defined it:
{ "cs", "Czech", "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0
: n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);" },
Regards,
--
TAKAHASHI Kaoru