Hello, Maryam Aly <mar...@foursquare.com> writes:
> I was looking at the section on plurals, and I noticed that a few of > the languages that we care about aren't listed in the plurals manual. > > I wanted to give the rules for these languages to help future users > who also need to translate in these languages. Thanks for reporting that. > Arabic, like Gaeilge, has 3 forms where 1 and 2 are special-cased. I'm no expert in linguistics, but according to the existing *.po files[1] and information on CLDR[2], Arabic seems to be a bit more complex (it has six forms). > Bahasa Indonesian, like English, has 2 forms, where 1 is > special-cased. > > Thai, like Japanese and Korean, has only one form. I'm attaching a tentative patch to the documentation. Corrections and improvements would be appreciated. Regards, -- Daiki Ueno Footnotes: [1] https://l10n.gnome.org/POT/gdm.master/gdm.master.ar.po [2] http://www.unicode.org/cldr/charts/27/supplemental/language_plural_rules.html#ar
>From 4d4b79969f3dcede86557d3d85894ad7f8ff26b0 Mon Sep 17 00:00:00 2001 From: Daiki Ueno <u...@gnu.org> Date: Mon, 9 Feb 2015 12:17:22 +0900 Subject: [PATCH] doc: Document plural forms for arb, tha, and ind * gettext.texi (Plural forms): Add Arabic, Bahasa Indonesian, and Thai. Reported by Maryam Aly in: <https://lists.gnu.org/archive/html/bug-gettext/2015-02/msg00012.html>. --- gettext-tools/doc/ChangeLog | 7 +++++++ gettext-tools/doc/gettext.texi | 23 ++++++++++++++++++++++- 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/gettext-tools/doc/ChangeLog b/gettext-tools/doc/ChangeLog index edac431..7226dde 100644 --- a/gettext-tools/doc/ChangeLog +++ b/gettext-tools/doc/ChangeLog @@ -1,3 +1,10 @@ +2015-02-09 Daiki Ueno <u...@gnu.org> + + * gettext.texi (Plural forms): Add Arabic, Bahasa Indonesian, and + Thai. + Reported by Maryam Aly in: + <https://lists.gnu.org/archive/html/bug-gettext/2015-02/msg00012.html>. + 2015-02-03 Daiki Ueno <u...@gnu.org> * msgexec.texi, msgfilter.texi: Fix markup error caused by commit diff --git a/gettext-tools/doc/gettext.texi b/gettext-tools/doc/gettext.texi index c0dc529..80dc461 100644 --- a/gettext-tools/doc/gettext.texi +++ b/gettext-tools/doc/gettext.texi @@ -6241,7 +6241,9 @@ Languages with this property include: @item Asian family Japanese, @c 122.1 million speakers Vietnamese, @c 68.6 million speakers -Korean @c 66.3 million speakers +Korean @c 66.3 million speakers +@item Tai-Kadai family +Thai @c 20.4 million speakers @end table @item Two forms, singular used for one only @@ -6279,6 +6281,8 @@ Finnish, @c 5.0 million speakers Estonian @c 1.0 million speakers @item Semitic family Hebrew @c 5.3 million speakers +@item Austronesian family +Bahasa Indonesian @c 23.2 million speakers @item Artificial Esperanto @c 2 million speakers @end table @@ -6454,6 +6458,23 @@ Languages with this property include: @item Slavic family Slovenian @c 1.9 million speakers @end table + +@item Six forms, special cases for one, two, all numbers ending in 02, 03, @dots{} 10, all numbers ending in 11 @dots{} 99, and others +The header entry would look like this: + +@smallexample +Plural-Forms: nplurals=6; \ + plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 \ + : n%100>=11 ? 4 : 5; +@end smallexample + +@noindent +Languages with this property include: + +@table @asis +@item Afroasiatic family +Arabic @c 246.0 million speakers +@end table @end table You might now ask, @code{ngettext} handles only numbers @var{n} of type -- 2.1.0