Re: gettext, plural form and translation - Mailing list pgsql-hackers

From Sergey Burladyan
Subject Re: gettext, plural form and translation
Date
Msg-id 87tz5qml93.fsf@seb.progtech.ru
Whole thread Raw
In response to gettext, plural form and translation  (Sergey Burladyan <eshkinkot@gmail.com>)
Responses Re: gettext, plural form and translation  (Alvaro Herrera <alvherre@commandprompt.com>)
List pgsql-hackers
Alvaro Herrera <alvherre@commandprompt.com> writes:

> Sergey Burladyan escribió:
> > gnu gettext have support for correct plural form translation
> > (http://www.gnu.org/software/gettext/manual/html_node/Plural-forms.html),
> > but postgresql does not use it. why not ?
> > maybe it have some problem in some supported OS ? if not, can it implemented ?
> > maybe someone already doing this ?
> >
> > ps: i try to translate psql message "(1 row)/(3 rows)" but can't do this
> > correctly without plural form support.

> You don't need plural forms in this example.  We have three separate
> messages, one for "(No rows)", another one for the singular "(1 row)"
> and a third one for the plural "(N rows)".

only one third message for plural is not enough for example for Russian. Russian
have three plural forms, for example:

2 rows  | 2 zapisy
3 rows  | 3 zapisy
5 rows  | 5 zapisey
11 rows | 11 zapisey
21 rows | 21 zapis
etc

> We avoid mixing plurals and singulars.  Is this still a problem for you
> somewhere?

don't know :) i see this untranslated message (N rows) every day and try
to translate it and find this issue.

Peter Eisentraut <peter_e@gmx.net> writes:

> On Wednesday 18 March 2009 11:21:03 Sergey Burladyan wrote:
> > gnu gettext have support for correct plural form translation
> > (http://www.gnu.org/software/gettext/manual/html_node/Plural-forms.html),
> > but postgresql does not use it. why not ?
> > maybe it have some problem in some supported OS ?

> Yes, the main reason is that it is not clear whether this is supported on all
> OS, or moreover that I believe it is not.  So some allowances for that will
> probably have to be made.

maybe build farm can help to test it ?


i think about "(N rows)" message today and find other solution. i do not essentially
need this support for this message. because if i exchange position of word and
number in translated message - it will have right pronunciation, something like:
(rows: N) | (zapisey: N) | (записей: N)

is it correct to add ':' in translated message ? i think colon is need here
because sense part of message is not first...

ps: but this change order is look like "hack" and look like "this program is
not support correct spelling and use only one plural form" :)
and original order with different plural form is more closely to original English text.

also, how about other languages ? IMHO not all of it can have simple solution
like change words order...

i think support for ngettext() still must be implemented. if some problem with
it will be found - it can be rejected, isn't it ? =)

--
Sergey Burladyan


pgsql-hackers by date:

Previous
From: Robert Haas
Date:
Subject: Re: Immediate shutdown and system(3)
Next
From: Alvaro Herrera
Date:
Subject: Re: gettext, plural form and translation