Portál AbcLinuxu, 1. května 2025 14:18
"Plural-Forms: 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"
A pokud je u textového řetězce tato možnost, pak se další tvary zapisují pomocí:
msgid "%i of %i node selected; %s. %s." msgid_plural "%i of %i nodes selected; %s. %s." msgstr[0] "Je vybrán %i z %i uzlu; %s. %s." msgstr[1] "Jsou vybrány %i z %i uzlů; %s. %s." msgstr[2] "Je vybráno %i z %i uzlů; %s. %s.Oba ukázkové kódy pochází z cs.po pro Inkscape. U nových verzí aplikací poEdit nebo gTranslator se. pokud je v hlavičce katalogu správný záznam a řetězec obsahuje předchozí kód. zobrazí v překladovém poli místa kam lze zapsat jednotlivé varianty(gTranslator to zobrazí jako samostatné okno).
Ad plural V tomto pripade veta obsahuje dve cislovky a rozhoduje se podle prvni. Je mozne se ridit podle druhe (nebo podle vsech)?
Cislo, podle ktereho se to urcuje je definovano v kodu programu:
printf ( ngettext ("Found %d file.", "Found %d files.", nbr_of_files), nbr_of_files );
Už chápem
Generovanie som preskočil a nechal do druhej časti. Nie je to úplne easy proces. V tejto časti som predpokladal získanie po súboru buď premenovaním pot šablóny (ak ide o nový preklad) alebo premenovaním z iného jazyka, čo nie je úplne kóšer prístup, ale funguje
Inak generovanie je možné spraviť priamo zo zdrojákov pomocou príkazov: xgettext -f ./po/POTFILES.in -o ./po/messages.po
a msginit
. Viac bude popísané v ďalšej časti alebo manuále gettextu.
`xgettext' creates a file named `DOMAINNAME.po'. You should then rename it to `DOMAINNAME.pot'. (Why doesn't `xgettext' create it under the name `DOMAINNAME.pot' right away? The answer is: for historical reasons. When `xgettext' was specified, the distinction between a PO file and PO file template was fuzzy, and the suffix `.pot' wasn't in use at that time.)Takze tam zadny syntakticky rozdil neni. Mimochodem kdyz dostanete novou verzi programu, tak v ni je obvykle stary prelozeny PO soubor a novy POT vygenerovany ze zdrojaku bez prekladu (vcetne nevyplnene hlavicky (msgid "")). Takze pouzitim msgmerge PO POT >new.po elegentane vytvorite novy PO, ktery si vezme to potrebne z obou souboru.
POEdit - multiplatformový po editor.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.