plural forms translation, ngettext

Caolán McNamara caolanm at redhat.com
Fri Oct 5 15:09:30 UTC 2018


I was asked in 
https://bugs.documentfoundation.org/show_bug.cgi?id=83128 about
supporting ngettext-alike plural forms.

https://gerrit.libreoffice.org/#/c/61426/ is my proposal on that.

To current Translate::get(id) we add Translate::nget(id, cardinality)
when requesting the translation.

To current NC_(context, string) we add NNC_(context, singular, plural)
when declaring the strings for translation

We add --keyword=NNC_:1c,2,3 to our xgettext invocation resulting in a
change in the output .po for my calc SCSTR_TOTAL example from

msgctxt "SCSTR_TOTAL"
msgid "%1 results found"
msgstr ""

to

msgctxt "SCSTR_TOTAL"
msgid "1 result found"
msgid_plural "%1 results found"
msgstr[0] ""
msgstr[1] ""

Locally at least this works to give the desired expected results of "1
result found" vs "2 results found" for the simple example.

caolanm->cloph: would this work smoothly with our current pootle stuff?



More information about the LibreOffice mailing list