Lokalizace a internacionalizace: Porovnání verzí

Smazaný obsah Přidaný obsah
Woodcraft (diskuse | příspěvky)
mBez shrnutí editace
Woodcraft (diskuse | příspěvky)
Řádek 192:
Pro překladatele (a také správce) je důležité porozumět, že překlad balíku je nepřetržitý proces trvající celou dobu života balíku, ne něco co se udělá jednou provždy na počátku. Po prvotním překladu daného balíku jsou potřebné občasné zásahy, protože některé přeložené položky zastarají, nové nepřeložené se objeví a potřebují přeložit.
 
Program tupdate má za úkol obnovu již existujícího `lang.po' souboru. Provede to porovnáním s novějším `balík.pot' dočasným souborm, extrahovaným programem xgettext z nových C zdrojů. Obnovovací operace upraví všechny odkazy na řetězce do příslušných míst C zdrojů, protože se tyto tyto řetězce posunují, tak jak jsou programy modifikovány. tupdate také zakomentuje v `lang.pox' jako zastaralé již přeložené položky které již nadále nejsou použité ve zdrojích programů. Nakonec zjistí nové řetězce a vloží je do výsledného PO souboru jako nepřeložené položky. Cílem je získání aktualizovaného `lang.pox' souboru poskytujícího překlady pro všechny řetězce. Když je správně vytvořen, tento soubor `lang.pox' může nahradit předchozí `lang.po' soubor.
 
Doba změn nebo pohybu PO souborů je nedílnou součástí "hry" překladu a měla by být pochopena a akceptována. Lidé kteří to odmítají budou mít problémy s podílením se na GNU Translation Project-u.
 
Pokud je PO soubor úplný a spolehlivý, je PO soubor programem '''msgfmt''' převeden do strojově orientovaného (machine-oriented - MO) formátu, který poskytuje efektivní získání překladů programy z balíku, když to za běhu potřebují.
 
Nakonec jsou modifikované C zdroje přeloženy a sestaveny s GNU gettext knihovnou (většinou pomocí "[[make]]") a výsledný spustitelný program je instalován někam kde jej uživatelé najdou. Také MO soubory samotné by měly být korektně instalovány. Nastavením odpovídajících proměnných prostředí by se měl program lokalizovat sám automaticky, kdykoliv se provádí.
Pohled ze strany uživatele, instalátora, programátora, překladatele a správce
 
= Pohled ze strany uživatele, instalátora, programátora, překladatele a správce =
Uživatele - je (měl by být!) nejjednodušší - normální uživatel by měl vidět, že aplikace s ním komunikuje jeho přirozeným jazykem. Ostatní SW inženýři - programátoři, překladatelé a správci by měli spolupracovat, aby to tak skutečně bylo. Pro uživatele by mělo být postačující nastavení proměnné LANG.
 
* '''Uživatele''' - je (měl by být!) nejjednodušší - normální uživatel by měl vidět, že aplikace s ním komunikuje jeho přirozeným jazykem. Ostatní SW inženýři - programátoři, překladatelé a správci by měli spolupracovat, aby to tak skutečně bylo. Pro uživatele by mělo být postačující nastavení proměnné '''LANG'''.
Instalátora (nebo snad instalatéra ?) - balíky užívající GNU gettext se sami instalují tak, že povolují překlad zpráv. Při konfiguraci vlastností balíku před jeho překladem by měl konfigurační script (standardně má název "configure") sám zjistit, zda aktuální systém poskytuje gettext nebo catgets funkce. Pokud ne, měla by být automaticky vybrána GNU gettext knihovna. Instalátor může její použití vnutit - typicky volbou ./configure --with-gnu-gettext obejde použití systémových gettext/catgets a vnutí použití GNU gettext. Naopak příkazem ./configure --disable-nls se balík nakofiguruje tak, že není schopen vůbec překládat zprávy.
Lokalizované balíky mají obecně mnoho ".po" souborů, každý pro jedno locale. Pokud není překlad potlačen, nainstalují se všechny. Nastavením (před konfigurací) proměnné LINGUAS je možné omezit instalaci .po souborů jen pro některé jazyky. proměnná LINGUAS by měla obsahovat mezerou oddělené dvoupísmenné kódy požadovaných jazyků.
 
* '''Instalátora''' (nebo snad instalatéra ?) - balíky užívající GNU gettext se sami instalují tak, že povolují překlad zpráv. Při konfiguraci vlastností balíku před jeho překladem by měl konfigurační script (standardně má název "[[configure]]") sám zjistit, zda aktuální systém poskytuje gettext nebo catgets funkce. Pokud ne, měla by být automaticky vybrána GNU gettext knihovna. Instalátor může její použití vnutit - typicky volbou <code>'''./configure --with-gnu-gettext'''</code> obejde použití systémových gettext/catgets a vnutí použití GNU gettext. Naopak příkazem <code>'''./configure --disable-nls'''</code> se balík nakofiguruje tak, že není schopen vůbec překládat zprávy.
Programátora - měl by znát stávající možnosti překladu zpráv: catgets od X/OPEN a gettext od organizace Uniforum. A jejich programové interface. Také by měl určit umístění příslušných katalogů zpráv. Podrobnější popis viz GNU gettext.
Lokalizované balíky mají obecně mnoho "'''.po'''" souborů, každý pro jedno locale. Pokud není překlad potlačen, nainstalují se všechny. Nastavením (před konfigurací) proměnné '''LINGUAS''' je možné omezit instalaci '''.po''' souborů jen pro některé jazyky. proměnná '''LINGUAS''' by měla obsahovat mezerou oddělené dvoupísmenné kódy požadovaných jazyků.
 
* '''Programátora''' - měl by znát stávající možnosti překladu zpráv: [[catgets]] od X/OPEN a [[gettext]] od organizace Uniforum. A jejich programové interface. Také by měl určit umístění příslušných katalogů zpráv. Podrobnější popis viz GNU gettext.
Překladatel - sada nástrojů v GNU gettext umožňuje vytváření, údržbu a správu lokalizovaných zpráv. Jsou použitelné i pro týmovou práci (což je nejčastější případ - viz "GNU translation project"). Další info lze získat na http://www.li.org/.
 
* '''Překladatel''' - sada nástrojů v GNU gettext umožňuje vytváření, údržbu a správu lokalizovaných zpráv. Jsou použitelné i pro týmovou práci (což je nejčastější případ - viz "GNU translation project"). Další info lze získat na http://www.li.org/.
Správce - má řadu odpovědností - jedna z hlavních je, aby bylo možné balík instalovat na celé řadě platforem. Vytváření a správa konfiguračních souborů balíku je důležitým prvkem.
 
* '''Správce''' - má řadu odpovědností - jedna z hlavních je, aby bylo možné balík instalovat na celé řadě platforem. Vytváření a správa konfiguračních souborů balíku je důležitým prvkem.