Obsah návodu:
- Základný zápis viacjazyčného textu
- Rožšírený zápis s definíciou kontextu
- Zápis pre podstatné mena v množnom čísle
- Viacjazyčný text obsahujúci dynamickú hodnotu (premennú)
- Viacjazyčný text obsahujúci HTML kód
- Ako vygenerovať preklady (.po, .mo súbory)
1) Základný zápis viacjazyčného textu
- bez dynamického obsahu, bez špecifického kontextu, atď.
- odporúča sa pre prekladanie celých viet, slovných spojení, atď.
- nie je vhodný pre slová, ktoré môžu mať v rozličných situáciach rozdielny význam:
- to isté je v angličtine podstatné meno aj sloveso (work = práca, work = pracovať, record, atď.)
- to isté slovo môže znamenať v rozličných kontextoch niečo iné (table = stôl, table = tabuľka, atď.)
<t:template xmlns:t="uri:t">
${_('Multilingual text written in English')}
</t:template>
<?php
print _('Multilingual text written in English');
?>
// text v jazyku stránky
i18n.content()._('Multilingual text written in English');
// text v jazyku preferovaného uzívateľského rozhrania
$.ice._('Multilingual text written in English');
2) Rožšírený zápis s definíciou kontextu
- odporúča sa pre prekladanie jednotlivých slov, názvov akcií atď.
<t:template xmlns:t="uri:t">
${pgettext('verb', 'work')} // pracovať
${pgettext('noun', 'work')} // práca
</t:template>
<?php
print pgettext('test-gettext-context', 'test-gettext');
?>
TODO
3) Zápis pre podstatné mena v množnom čísle
- nutné používať v kombinácii s bodom 4) pre všetky podstatné mena v množnom čísle
- pr. skloňovanie podstatného mena "záznam":
- 0 záznamov
- 1 záznam
- 2 záznamy
- 5 a viac záznamov
<t:template xmlns:t="uri:t">
$[ngettext('test-gettext-plural', 'test-gettext-plurals', $count)]
</t:template>
<?php
print pgettext('test-gettext-context', 'test-gettext');
?>
TODO
<t:template xmlns:t="uri:t">
$[pgettext('test-gettext-context', 'test-gettext')]
</t:template>
<?php
print pgettext('test-gettext-context', 'test-gettext');
?>
TODO
<t:template xmlns:t="uri:t">
$[pgettext('test-gettext-context', 'test-gettext')]
</t:template>
<?php
print pgettext('test-gettext-context', 'test-gettext');
?>
TODO
6) Ako vygenerovať preklady (.po, .mo súbory)
- aktualizovať zoznam viacjazyčných textov použitých v šablónach:
- cd /www/nge/locale/build && phing
- doplniť preklady do .po súborov v /locale/po/*.po
-
preklady sa dopisujú do msgstr ""
(možné využiť aj grafické rozhranie programu PoEdit)
-
- buildnuť preklady
- cd /www/nge/locale/build && phing
- reštartovať Apache
- v Dockeri -
- na Windowse - cez services (služby) alebo v admin cmd príkazmi httpd -k stop a httpd -k start