plural forms, важна!!!
375gnu <[email protected]> Sun, 11 Sep 2011 14:40:10 +0300
| Newsgroups | gmane.comp.internationalization.belarusian |
|---|---|
| Message-ID | <CAAB-Kc=s7Ecauas_z78FcefeTHvr05ss3NHCSu3Fm2_ATuYi3A@mail.gmail.com> |
Звычайнае апісаньне множных формаў у файлах gettext [1] ня ўлічвае даволі рэдкай, але цалкам імавернай сытуацыі, калі адзіночная й множныя формы апісваюцца з рознай колькасьцю фарматавальнікаў, напрыклад msgid "one procedure" msgid_plural "%d procedures" msgstr[0] "адна працэдура" msgstr[1] "%d працэдуры" msgstr[2] "%d працэдураў" Такі пераклад будзе некарэктным, бо значэньням 21, 31, 41 і г.д. будзе адпавядаць msgstr[0]. Правільнае апісаньне множных формаў мусіць выглядаць наступным чынам: nplurals=4; plural=n==1 ? 3 : n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n Тады вышэйпадазены прыклад прыме выгляд: msgid "one procedure" msgid_plural "%d procedures" msgstr[0] "%d працэдура" msgstr[1] "%d працэдуры" msgstr[2] "%d працэдураў" msgstr[3] "адна працэдура" Я з гэтым сутыкнуўся ў GIMP. [1] nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n -- http://375gnu.wordpress.com _______________________________________________ I18n mailing list [email protected] http://mova.org/cgi-bin/mailman/listinfo/i18n