Najprv si vyjasnime dva hlavné pojmy, s ktorými sa pri prekladaní počítačových programov určite stretnete:

Internacionalizácia (skratka „i18n“) znamená prispôsobenie programu na medzinárodné použitie. Neznamená to, že program je už do nejakého cudzieho jazyka skutočne preložený, len že je na preklad dobre pripravený. Napríklad jednotlivé slová a vety nie sú v programe „natvrdo zakódované“ ale program ich načítava zo slovníka. Poriadna internacionalizácia zahŕňa viac ako len preklad programu. Rôzne jazyky majú rôzny spôsob zápisu čísel (napríklad desatinná čiarka verzus desatinná bodka). Ak daný jazyk píše sprava doľava, nestačí len preložiť texty, ale treba tomu prispôsobiť celý dizajn programu (v zásade zrkadlovo otočiť). Slovenčina má pomerne dlhé vety, ktoré možno zobraziť malým písmom; čínština má krátke vety, ktoré treba zobraziť veľkým písmom. A tak ďalej... ale toto všetko je starosť „tých druhých“; teraz predpokladajme, že táto časť práce už bola urobená.

Lokalizácia (skratka „l10n“) znamená prispôsobenie vhodne pripraveného programu miestnemu prostrediu. To zahŕňa najmä preklad fráz vyskytujúcich sa v programe, a informáciu o špecifikách daného jazyka alebo kultúry. Časť z toho sa naučíme robiť v tomto rýchlokurze.

Internacionalizácia a lokalizácia

Pri internacionalizácii slobodného softvéru sa zvyčajne používa knižnica „gettext“.

Programátor pri písaní programu vyznačí frázy určené na preloženie. Tie sa automaticky vyzbierajú do súboru typu „*.pot“. Súbor POT teda obsahuje iba frázy v pôvodnom (zvyčajne anglickom) jazyku. Pre celý projekt stačí jeden takýto súbor; ale pri rozsiahlych projektoch sa niekedy pre každú časť projektu vytvorí osobitný súbor, aby mohol každú časť pohodlne prekladať iný prekladateľ.

Prekladateľ si vytvorí súbor typu „*.po“ pre daný jazyk. Na prvýkrát tak, že jednoducho skopíruje pôvodný súbor POT. Neskôr, keď vyjde nová verzia programu, môže si z nového súboru POT automaticky pridať iba tie frázy, ktoré pribudli alebo sa zmenili. Súbor PO teda obsahuje frázy v pôvodnom aj cieľovom jazyku. Pre každý jazyk existuje osobitný súbor; zvyčajne sa aj volá podľa toho jazyka, napríklad „sk.po“.

Správca programu zozbiera všetky súbory PO a pridá ich k programu. Súbory PO sú však z hľadiska programu zbytočne dlhé (obsahujú rôzne pomocné údaje a poznámky pre prekladateľa), takže sa z nich vytvoria súbory typu „*.mo“. Po inštalovaní programu bude mať používateľ na svojom počítači súbory MO.

Schéma lokalizácie pomocou knižnice gettext

Ako príklad použijeme program Tux Paint. Je už síce preložený do slovenčiny, ale budeme sa tváriť, že nie, a preložíme ho znova. Prípadne môžeme vylepšiť (alebo „vylepšiť“) existujúci preklad.

Pri inštalovaní programu sa na disku vytvoria súbory MO. Súbory PO však pri binárnej inštalácii zvyčajne chýbajú; bežný používateľ ich nepotrebuje. Preto ich musíme získať od autora alebo distribútora programu. V rámci slobodného softvéru máte právo na všetky zdrojové súbory súvisiace s programom. Väčšina autorov ich teda sprístupní niekde na internete -- treba pohľadať. Z FTP stránky obsahujúcej zdrojové jazykové súbory pre program Tux Paint si vyberme jeden. Ak chcete upravovať existujúci slovenský preklad, stiahnite si súbor „sk.po“ (kliknite pravým tlačidlom a dajte uložiť na disk). Ak chcete vytvoriť slovenský preklad celkom od začiatku, stiahnite si súbor „tuxpaint.pot“ a po stiahnutí ho premenujte na „sk.po“.

Ďalej potrebujeme nejaký program na editovanie. Odporúčam poEdit. Stiahnete ho zo stránky Download; ak máte MS Windows, kliknite na prvú linku pod „Windows version“.

Po inštalovaní programu poEdit spustite súbor „sk.po“. Pri prvom spustení programu sa zobrazia všeobecné nastavenia, kde môžete zadať svoje meno a e-mailovú adresu. (Adresa je dobrá na to, aby vás napríklad mohol konktaktovať niekto, kto raz bude chcieť pokračovať vo vašom preklade.) Všeobecné nastavenia môžete hocikedy neskôr zmeniť pomocou menu „Súbor | Nastavenia“.

Nastavenie programu poEdit

Teraz dajte v menu „Katalóg | Nastavenia“ a vyplňte nasledujúce hodnoty (pre slovenský jazyk):

Jazyk:
Slovak
Krajina:
SLOVAKIA
Tvorba plurálu:
nplurals=3; plural= (n==1) ? 1 : (n>=2 && n<=4) ? 2 : 0;

(Tá posledná záhadná položka sa pri preklade programu „Tux Paint“ nevyužije, ale môže sa využiť v iných programoch. Je to vzorec na tvorbu množných čísel v slovenčine. Slovenčina má tri tvary podstatných mien podľa počtu: 1 predmet; 2 3 4 predmety; 0 5... predmetov.)

Nastavenie prekladového súboru

A môžeme začať prekladať! Obrazovka je rozdelená na niekoľko častí, ich veľkosť si môžete prispôsobiť myšou. V hornej časti sa nachádza zoznam fráz; vľavo originál, vpravo preklad. Modré frázy sú nepreložené. Biele frázy sú preložené. Prípadné žlté frázy sú preložené, ale treba ich ešte skontrolovať - táto vlastnosť sa zapína a vypína tlačidlom fuzzy.

Dolná časť obrazovky je rozdelená na štyri časti. Vľavo hore je pôvodný anglický text. Vľavo dole je miesto, kam máte napísať slovenský preklad. Vpravo hore je prekladateľský komentár a vpravo dole je automatický komentár. Komentáre slúžia len ako pomôcka pre prekladateľa; nebudú súčasťou výsledného slovníka. Prekladateľský komentár možno zadať tlačidlom comment.

Okno programu poEdit

Tlačidlom save uložíme súbor. V adresári so súborom „sk.po“ sa pri ukladaní vytvorí aj binárny súbor „sk.mo“. (Ak náhodou nie, treba to zadať v menu „Súbor | Nastavenia | Editor | Automaticky vytvoriť .mo súbor pri ukladaní“ a ešte raz uložiť.) Tento súbor uložíme pod správnym názvom do správneho adresára. V tomto prípade ho premenujeme na „tuxpaint.mo“ a uložíme do adresára „C:\Program Files\TuxPaint\locale\sk\LC_MESSAGES\“. Jeden taký súbor - pôvodný slovenský preklad - už tam je; ten si niekde odložte do zálohy, alebo ho stačí premenovať.

A teraz zo štartového menu spustite program „Tux Paint“. Ak sa všetko podarilo, bude fungovať s novým prekladom.


Ak sa vám tento postup zapáčil a chcete sa pridať k slovenským prekladateľom slobodného softvéru, vitajte v tíme! Práce je veľa, a dobrovoľníkov nikdy nie je dosť. Nájdite si vhodný program (najlepší je taký, ktorý sami používate, a ešte nie je preložený), vyhľadajte jeho webovú stránku a kontaktuje autorov programu, nech vám mailom pošlú súbor PO. Ubezpečte sa zároveň, že na preklade nepracuje niekto iný. Aj keby ste preklad nedokončili, pošlite naspäť aspoň čiastočný preklad; možno ho raz dokončí niekto iný.

Ešte pár častých vecí, s ktorými sa môžete stretnúť pri zložitejších programoch, a ktoré neprogramátorov môžu zaskočiť:

Značky „\n“, „\t“ a podobne označujú koniec riadku, tabulátor a podobné veci. Nemusíte vedieť, čo presne, skrátka tieto značky prepíšte do prekladu. Napríklad „One\nTwo\nThree“ môžete preložiť ako „Jeden\nDva\nTri“.

Ak narazíte na krátke frázy, ktoré obsahujú čudné znaky, niekedy aj uprosted slova, napríklad: „_File“, „_Save“, „S_ave as...“, sú to pravdepodobne položky menu programu. Písmeno, pred ktorým je uvedený onen čudný znak, je písmenová skratka na vyvolanie položky z menu; teda Alt+F asi vyvolá menu „File“ a potom S vyvolá položku „Save“ alebo A vyvolá položku „Save as...“.

Pri preklade teda preložte slovo, a označte niektoré písmeno prekladu ako písmenovú skratku. Ktoré? Na toto nie je ľahká odpoveď... Najlepšie by bolo z každej položky zobrať prvé písmeno, ale ak sa v jednom menu začínajú viaceré položky rovnakým písmenom (pozrite si v programe, ktoré položky tvoria spolu jedno menu), budete musieť občas vybrať iné písmeno. Experimentujte. Nič zlé sa nemôže stať; prinajhoršom v danom menu nebude fungovať niektorá písmenová skratka. V danom príklade by teda vhodným prekladom mohlo byť napríklad: „_Súbor“, „_Uložiť“, „Uložiť _ako...“.

Ak narazíte na frázu obsahujúcu znak percento s nejakým písmenom, napríklad „Error %d while opening file %s.“, znamená to, že program na dané miesto frázy doplní nejakú textovú alebo číselnú hodnotu (napríklad „Error 2000 while opening file dokument.doc.“). Frázu preložte tak, že použijete rovnaké značky, napríklad: „Chyba %d pri otváraní súboru %s.“.