Re: =?utf-8?Q?Mie=C5=A1anie_prekladov_jedn?= =?utf-8?B?b3Ruw6lobyBhIG1ub8W+bsOpaG8gxI3DrXNsYS4=?= (plural forms)
- From: Marcel Telka <marcel telka sk>
- To: Slovak GNOME Translation Team / Slovenský prekladateľský tím GNOME <gnome-sk-list gnome org>
- Subject: Re: Miešanie prekladov jednotného a množného čísla. (plural forms)
- Date: Sun, 12 Feb 2012 08:47:28 +0100
On Thu, Feb 09, 2012 at 03:58:44PM +0100, Marcel Telka wrote:
> On Thu, Feb 09, 2012 at 11:06:13AM +0100, Marian Cavojsky wrote:
> > On Wed, Feb 08, 2012 at 01:24:54PM +0100, Marian Cavojsky wrote:
> > >
> > > Takže zostáva otázka, či:
> > > - je niekto schopný pretlačiť do gettext-u, aby sa tento kontext v tomto
> > > prípade vytváral automaticky.
> > > - budeme tlačiť na vývojárov, aby tieto reťazce označovali kontextom
> > > (Znamená to cielené vyhľadávanie a požadovanie opráv, vývajári nás
> > > budú mať plné zuby, alebo nás začnú ignorovať s takýmito požiadavkami)
> > > - Zmeníme plural-forms, tak aby jednotné číslo vychádzalo na index 0,
> > > ale to zas znamená preklontrolovať všetky preklady a poopravovať ich
> > > podľa nového plural-forms. (Miešanie, že by sa taký plural-forms
> > > používal len tam kde je to nutné by bolo ešte zložitejšie, lebo by sme
> > > žili rozdvojený život)
> >
> > Mal som debatu s koordinátorom a ten sa vyjadril, že bod 2 je pre neho
> > jediné možné riešenie.
> >
> > Zatiaľ som zadal bug pre modul gnome-settings-daemon:
> > https://bugzilla.gnome.org/show_bug.cgi?id=669732
> >
> > P.S.: I keď ja som stále presvedčený, že je to chyba v gettext-e.
>
> Aj ja si myslím, že to je chyba v gettexte. Mohol by som sa pokúsiť to opraviť
> v Solarise, ale to nám asi veľmi nepomôže. Resp. mne by to pomohlo, ale
> ostatným asi nie. :-) Na druhej strane, keď to budem mať opravené, tak by sme
> mohli mať aspoň niečo konkrétne v rukách, čo by sme sa mohli pokúsiť pretlačiť
> do upstreamu.
Našiel som ešte jeden zaujímavý problém. Pokiaľ sa nájde preklad, tak druhý
parameter v ngettext() je úplne ignorovaný.
Príklad (potrebné súbory sú v prílohe):
$ make
one -> MANY
one, many -> ONE, MANY
one, more -> ONE, MANY <-------------
one -> one
one, many -> one, many
one, more -> one, more
$
A dokonca ani xgettext nehlási žiaden problém. Chcelo by to aspoň warning.
$ xgettext test.c
$
Testoval som to s gettextom 0.16.1. Novší teraz nemám poruke.
Ak máte niekto novší gettext, prosím skúste to.
Ďakujem.
--
+-------------------------------------------+
| Marcel Telka e-mail: marcel telka sk |
| homepage: http://telka.sk/ |
| jabber: marcel jabber sk |
+-------------------------------------------+
GCC=/usr/sfw/bin/gcc
MSGFMT=/usr/gnu/bin/msgfmt
LL=en_US
all:
@$(GCC) -Wall -o test test.c
@mkdir -p $(LL)/LC_MESSAGES
@$(MSGFMT) -o $(LL)/LC_MESSAGES/test.mo test.po
@LC_ALL=$(LL) ./test
@LC_ALL=C ./test
clean:
@rm -rf test $(LL)
#include <locale.h>
#include <libintl.h>
#include <stdio.h>
int
main(void)
{
setlocale(LC_MESSAGES, "");
bindtextdomain("test", ".");
textdomain("test");
printf("one -> %s\n", gettext("one"));
printf("one, many -> %s, %s\n",
ngettext("one", "many", 1),
ngettext("one", "many", 2));
printf("one, more -> %s, %s\n",
ngettext("one", "more", 1),
ngettext("one", "more", 2));
return 0;
}
msgid ""
msgstr ""
"Project-Id-Version: test\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n==1);\n"
#, c-format
msgid "one"
msgid_plural "many"
msgstr[0] "MANY"
msgstr[1] "ONE"
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]