abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
dnes 15:00 | Komunita

Dnes končí podpora Ubuntu 17.10 Artful Aardvark. Uživatelům je doporučen přechod na Ubuntu 18.04 Bionic Beaver s prodlouženou podporou do roku 2023. Podpora standardních verzí Ubuntu je 9 měsíců. Verze 17.10 byla vydána 19. října 2017.

Ladislav Hagara | Komentářů: 0
dnes 13:33 | Bezpečnostní upozornění

Společnost Oracle vydala čtvrtletní bezpečnostní aktualizaci svých softwarových produktů (CPU, Critical Patch Update). Opraveno bylo celkově 334 bezpečnostních chyb. V Oracle Java SE je například opraveno 8 bezpečnostních chyb. Všechny jsou vzdáleně zneužitelné bez autentizace. V Oracle MySQL je opraveno 31 bezpečnostních chyb. Vzdáleně zneužitelných bez autentizace je 7 z nich.

Ladislav Hagara | Komentářů: 0
dnes 13:11 | Zajímavý software

Nick Clifton zveřejnil na blogu společnosti Red Hat věnujícímu se počítačové bezpečnosti nástroj, pomocí kterého lze ověřit, zda jsou binární spustitelné soubory odolné vůči variantě 1 bezpečnostní chyby Spectre v procesorech.

Ladislav Hagara | Komentářů: 0
dnes 03:00 | Nová verze

Po více než roce vývoje od vydání verze 1.12 byla vydána nová verze 1.13 Java edice počítačové hry Minecraft (Wikipedie). Kódový název nejnovější verze je Update Aquatic. Přehled novinek v oficiálním oznámení o vydání. Detailní přehled novinek na Gamepedii a na YouTube.

Ladislav Hagara | Komentářů: 3
včera 23:55 | Nová verze

Společnost Epic Games vydala verzi 4.20 svého proprietárního multiplatformního herního enginu Unreal Engine (Wikipedie). Přehled novinek i s celou řadou obrázků a videi v oznámení na blogu.

Ladislav Hagara | Komentářů: 0
včera 15:55 | IT novinky

Evropská komise uložila (pdf) společnosti Google pokutu ve výši 4,34 miliardy eur za porušení antimonopolních předpisů EU. Společnost Google ukládala od roku 2011 výrobcům zařízení Android a provozovatelům mobilních sítí protiprávní omezení, aby upevnila dominantní postavení svých produktů zaměřených na všeobecné vyhledávání na internetu.

Ladislav Hagara | Komentářů: 24
včera 13:55 | Zajímavý software

Byl vydán REAPER (Wikipedie) ve verzi 5.93. Jedná se o proprietární digitální pracovní stanici pro práci s audiem (DAW). Novinkou je experimentální linuxový port [reddit].

Ladislav Hagara | Komentářů: 0
včera 13:11 | Zajímavý software

Příspěvek na blogu Qt informuje, že Qt pro Python aneb modul PySide2 je již k dispozici v PyPI (Python Package Index). PySide2 je portací PySide na Qt 5 [Hacker News].

Ladislav Hagara | Komentářů: 2
včera 12:22 | IT novinky

Koncem minulého roku GitHub přidal funkci automatického varování před zranitelnostmi v závislostech projektů i s případným komunitním doporučením, jak se se zranitelnou závislostí vypořádat. Nejprve bylo možné využít funkci pouze pro programovací jazyky Ruby a JavaScript, nyní však GitHub přidal podporu také pro Python [CSIRT.CZ].

Ladislav Hagara | Komentářů: 0
včera 10:55 | Zajímavý software

Öffi (Wikipedie) je oblíbená mobilní aplikace pro Android usnadňující cestování městskou a veřejnou dopravou nejenom v Německu. Dle autora z nejasných důvodů (Payments) byla aplikace z Google Play odstraněna. Autor se následně rozhodl zdrojové kódy Öffi zveřejnit na GitLabu pod licencí GPLv3. Požádal také o začlenění aplikace do F-Droidu [reddit].

Ladislav Hagara | Komentářů: 0
Jak čtete delší texty z webových stránek?
 (78%)
 (20%)
 (5%)
 (7%)
 (2%)
 (10%)
Celkem 365 hlasů
 Komentářů: 40, poslední 29.6. 10:21
    Rozcestník

    Ako na preklad slobodných programov - 2

    13. 10. 2006 | Stanislav Valasek | Návody | 5971×

    V minulej časti sme sa oboznámili s problematikou prekladania slobodných programov a ukázali najpoužívanejšie programy na prekladanie. V tejto časti je podrobnejší popis prekladaných súborov, používanie základných príkazov GNU gettext a pripojený je zoznam tipov a trikov na pomoc prekladateľom.

    Postup prekladu pomocou nástrojov GNU gettext

    Ak nemáme alebo nechceme používať na preklad grafické programy, môžeme prekladať aj pomocou textového editora a nástrojov GNU gettext.

    Národné prostredie

    Pred samotným prekladom ešte pár slov k nastaveniu národného prostredia. V distribúciách založených na Debian GNU/Linuxe zistíme aktuálne nastavené národné prostredie príkazom locale:

    stano@nb-valasek:~$ locale
    LANG=sk_SK.UTF-8
    LANGUAGE=sk_SK.UTF-8
    LC_CTYPE="sk_SK.UTF-8"
    LC_NUMERIC="sk_SK.UTF-8"
    LC_TIME="sk_SK.UTF-8"
    LC_COLLATE="sk_SK.UTF-8"
    LC_MONETARY="sk_SK.UTF-8"
    LC_MESSAGES="sk_SK.UTF-8"
    LC_PAPER="sk_SK.UTF-8"
    LC_NAME="sk_SK.UTF-8"
    LC_ADDRESS="sk_SK.UTF-8"
    LC_TELEPHONE="sk_SK.UTF-8"
    LC_MEASUREMENT="sk_SK.UTF-8"
    LC_IDENTIFICATION="sk_SK.UTF-8"
    LC_ALL=

    Nastavený je teda jazyk sk a krajina SK a kódová stránka na UTF-8, čo je štandardná kódová stránka v Ubuntu systéme. Podrobnejší popis pre Debian GNU/Linux je možné nájsť na stránke Debian reference - 9.7 Localization (l10n).

    Ak chceme spustiť program v inom, ako aktuálne nastavenom jazyku, spustíme ho nasledovne: LANG=nl qalculate-gtk; tento príkaz napríklad spustí program qalculate-gtk v nórčine. Prípadne príkaz "LANG=C program" spustí program v originálnom/anglickom preklade. Takto môžeme súčasne spustiť rovnaký program v rôznych jazykoch.

    Rovnako je možné celé prostredie priamo nastaviť do rôznych jazykov. Napríklad príkazom LANGUAGE="sk_SK:sk:cs_CS:cs:de:en_GB:en v súbore /etc/environment spôsobíme, že každý spúšťaný program skúsi nájsť slovenčinu, ak ju nenájde, pokračuje druhým, tretím jazykom...

    Adresár na výsledné preklady sme už spomínali vyššie, takže:

    • máme textovú podobu správ pripravených na preloženie,
    • vieme postup, ako si preklad priebežne overovať.

    Tvorba po súboru

    Už hotové preklady nemusia obsahovať všetky textové reťazce, ktoré sú v aktuálnej verzii programu. Preto je lepšie začať vygenerovaním prázdnej jazykovej verzie z pot šablóny príkazom msginit. Program Qalculate ale neobsahuje pot šablónu, takže si ju vygenerujeme príkazom

    xgettext -f ./po/POTFILES.in -o ./po/messages.po

    Následne je možné použiť príkaz msginit alebo premenovať messages.po na sk.po. Program msginit by mal uľahčiť prácu a automaticky nastaviť hlavičky .po súboru podľa vášho prostredia.

    Prekladanie po súboru

    Keď toto všetko vieme a máme sk.po súbor, poďme zaktualizovať hlavičky po súboru tak, aby sme sa mohli vrhnúť na samotný preklad:

    # SOME DESCRIPTIVE TITLE.
    # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
    # This file is distributed under the same license as the PACKAGE package.
    # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
    #
    #, fuzzy
    msgid ""
    msgstr ""
    "Project-Id-Version: PACKAGE VERSION\n"
    "Report-Msgid-Bugs-To: \n"
    "POT-Creation-Date: 2006-08-06 17:43-0400\n"
    "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
    "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
    "Language-Team: LANGUAGE <LL@li.org>\n"
    "MIME-Version: 1.0\n"
    "Content-Type: text/plain; charset=CHARSET\n"
    "Content-Transfer-Encoding: 8bit\n"

    Kompletný preklad hlavičiek:

    # Translation of qalculate-gtk.po to Slovak
    # This file is distributed under the same license as the Qalculate package.
    # Copyright (C) 2003-2006 Niklas Knutsson (nq@altern.org).
    # Stanislav Valasek <valasek@fastmail.fm>, 2006.
    #
    msgid ""
    msgstr ""
    "Project-Id-Version: qalculate-gtk\n"
    "Report-Msgid-Bugs-To: \n"
    "POT-Creation-Date: 2006-08-06 17:43-0400\n"
    "PO-Revision-Date: 2006.05.08 13:33\n"
    "Last-Translator: Stanislav Valasek <valasek@fastmail.fm>\n"
    "Language-Team: sk <sk-i18n@linux.sk>\n"
    "MIME-Version: 1.0\n"
    "Content-Type: text/plain; charset=UTF-8\n"
    "Content-Transfer-Encoding: 8bit\n"

    Obsah týchto hlavičiek dokážu programy GTranslator i KBabel veľmi pohodlne upraviť podľa vami zadaných dát. V GTranslatore ich zadávame v nastaveniach:

    preklad gtranslator-configuration

    KBabel nás k nastaveniu vyzve pri prvom spustení a je možná ich neskoršia úprava.

    preklad kbabel-configuration

    Pri uložení sa hlavička po súboru automaticky zaktualizuje zadanými údajmi o prekladateľovi a pri každej aktualizácii prekladu v programe GTranslator alebo KBabel sa automaticky aktualizuje dátum poslednej modifikácie.

    Ešte pred prekladom pár slov k formátu .po súboru, ktorý obsahuje samotné texty v nasledujúcej forme:

    #: panel/panel_config.c:1050
    #, fuzzy
    msgid "Color to use:"
    msgstr "Použité farby:"

    Prvý riadok obsahuje názov zdrojového súboru a riadok, kde sa nachádza prekladaný text. Druhý riadok nie je povinný a môže obsahovať komentáre alebo direktívy, ako napríklad direktívu fuzzy alebo c-format. Direktívy pridáva prekladateľ alebo sú pridané automaticky pri generovaní .po súboru. Direktíva fuzzy znamená, že preklad textu nie je istý a treba ho overiť. Takto označené hodnoty sa pri štandardnom generovaní mo súboru nedostanú do binárnej podoby prekladu. Tretí riadok obsahuje pôvodný a štvrtý riadok preložený text. Úplný popis formátu je na stránkach GNU gettext - The Format of PO Files.

    Aby sme vyskúšali ako "hladko" funguje prekladanie a test výsledku, preložíme si texty priamo v úvodnom dialógu: "Keypad", "History" a text tooltipu "Convert units in result". Tieto texty sa nacháchadzajú v sk.po súbore a tu je ich doplnenie o preklad:

    #: data/main.glade:1886
    msgid "Convert units in result"
    msgstr "Vo výsledku konvertuj jednotky"

    #: data/main.glade:1967 data/main.glade:2980
    msgid "Keypad"
    msgstr "Klávesnica"

    #: data/main.glade:2006 data/main.glade:3035
    msgid "History"
    msgstr "História"

    Poznámka - na prekladanie používajte textové editory, ktoré dokážu správne určiť a uložiť kódovanie editovaného súboru. Toto spĺňajú najčastejšie používané editory ako: gedit, Kate, Emacs, vim a mnohé ďalšie.

    Následne spustíme už známe príkazy na vygenerovanie prekladu a spustíme program.

    msgfmt -v -o ./qalculate-gtk.mo ./sk.po
    3 preložené správy, 566 nepreložených správ.
    stano@nb-valasek:/qalculate-gtk-0.9.4/po$ sudo cp qalculate-gtk.mo /usr/share/locale/sk/LC_MESSAGES/
    stano@nb-valasek:/qalculate-gtk-0.9.4/po$ qalculate-gtk

    A výsledok:

    preklad qalculate-prvy-preklad

    Špeciality prekladu

    Počas prekladania môžete naraziť na špeciálne formátovanie msgstr reťazcov. V dialógovej aplikácii sa stretnete s tzv. akceleračnými klávesami, ktoré určujú, pomocou ktorého znaku v reťazci sa dá daná funkcia zvoliť klávesovou skratkou ALT+klávesa. Je nutné si dávať pozor, aby dva reťazce v jednom menu nemali rovnaké akceleračné klávesy. Malý príklad aj s chybou - rovnaké akceleračné klávesy.

    #: data/main.glade:1608
    msgid "_Help"
    msgstr "_Pomocník"

    #: data/main.glade:1617
    msgid "_Contents"
    msgstr "_Obsah"

    #: data/main.glade:1639
    msgid "_About"
    msgstr "_O programe"

    A výsledok:

    preklad qalculate-menu-pomocnik

    Na nasledujúcom texte je možné ukázať dve veci:

    #: data/main.glade:2341
    msgid "x<sup>2</sup>"
    msgstr "x<sup>2</sup>"
    1. Texty neobsahujú vždy iba samotný text, ale niekedy i technické informácie. V tomto prípade ide o HTML značky <sup></sup>, ale môže ísť napríklad i o formátovacie značky programovacieho jazyka, v C++ napríklad %s alebo %d. Tieto značky sa bezo zmeny prenášajú do preloženého textu. Je dobré oboznámiť sa s najčastejšie používanými značkami, aby ste vedeli, čo robia, a ako ich vhodne začleniť do prekladaného textu. Tieto špeciálne znaky sú čiastočne popísané v GNOME l10n-guide - Gotchas.
    2. Zároveň vidíme, že niektoré reťazce nie je treba prekladať a sú rovnaké ako v anglickej verzii. Tu nám prácu veľmi zjednoduší príkaz msgen, ktorý automaticky prekopíruje z .po alebo .pot súboru všetky anglické reťazce do preložených. Po spustení príkazu

      msgen sk.po -o sk-new.po

      dostaneme súbor sk-new.po, v ktorom máme všetky reťazce z pôvodného prekladu prekopírované do nového prekladu. Nevýhodou je, že stratíme informáciu o tom, koľko reťazcov ešte nie je preložených.

    Urýchlenie a zjednodušenie prekladu je možné dosiahnuť tým, že zo všetkých našich .po súborov extrahujeme preložené texty do slovníka, ktorý následne používame na prvotný preklad ešte nepreloženého súboru a až potom preklad dokončujeme. Viac informácií je na stránke GNU gettext - Usage of Translation Compendia. Niektoré prekladateľské tímy, ako napríklad GNOME a KDE majú takéto slovníky už pripravené a jednotliví prekladatelia ich len dopĺňajú.

    Ostatné druhy prekladov

    Okrem vyššie spomenutého postupu prekladu programu pomocou nástrojov GNU gettext sú niektoré slobodné programy prekladané iným spôsobom. Typickým príkladom je preklad balíkov Mozilla suite pomocou špeciálneho programu Mozilla translator, alebo špeciálny postup prekladu balíka OpenOffice.org, kde prekladatelia síce na preklad používajú .po súbory, ale sú špeciálne generované zo zdrojových kódov.

    Samostatnou kapitolou je preklad dokumentácie, kde sa spôsob prekladu líši podľa toho, o akú dokumentáciu ide.

    Pár tipov a rád na záver

    • Doporučujem začať prekladom malej samostatnej aplikácie, ktorú často používate, a dokážete priamo skontrolovať preklad.
    • Ideálne sa prekladajú aplikácie, ktoré dennodenne používate a môžete po sebe drobné chyby v prekladoch postupne odladiť.
    • Spravte toľko prekladov, koľko ich dokážete udržiavať v aktuálnom stave. Toto obzvlášť platí pre preklad napríklad webových stránok, ktoré rýchlo zastarávajú
    • Nie je anglický text zrozumiteľný? Napíšte chybovú hlášku.
    • Nemeňte riadky s msgid.
    • Ak chcete spustiť program v inom ako aktuálne nastavenom jazyku, spustite ho nasledovne: LANG=nl qalculate-gtk, tento príkaz napríklad spustí program qalculate-gtk v nórčine. Prípadne príkaz LANG=C program spustí program v originálnom/anglickom preklade. Takto si prípadne môžete súčasne spustiť rovnaký program v rôznych jazykoch.
    • Prípadne je možné si celé prostredie priamo nastaviť do rôznych jazykov. Napríklad príkazom LANGUAGE="sk_SK:sk:cs_CS:cs:de:en_GB:en v súbore /etc/environment spôsobíte, že každý spúšťaný program skúsi nájsť slovenčinu, ak ju nenájde, pokračuje druhým, tretím jazykom...
    • Na zobrazenie rozdielov medzi dvoma po súbormi sú vhodné programy: podiff alebo grafický program Meld alebo KDiff3.

    Lokalizačné projekty a tímy

           

    Hodnocení: 86 %

            špatnédobré        

    Nástroje: Tisk bez diskuse

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    prometeus avatar 13.10.2006 15:26 prometeus | skóre: 9 | blog: Nielen historický blog
    Rozbalit Rozbalit vše Re: Ako na preklad slobodných programov - 2
    Zaujimalo by ma, odkial sa da stiahnut databaza prekladov a co je to PO Kompedium a TMX Kompendium v KBabel. Pustil som sa do prekladu KMyMoney a futbaloveho manazera Bygfoot.
    Kto vraví pravdu, ten neumrie na chorobu. -- Džingischán
    Marián Kyral avatar 13.10.2006 21:25 Marián Kyral | skóre: 29 | blog: Sem_Tam | Frýdek-Místek
    Rozbalit Rozbalit vše Re: Ako na preklad slobodných programov - 2
    prometeus avatar 13.10.2006 21:49 prometeus | skóre: 9 | blog: Nielen historický blog
    Rozbalit Rozbalit vše Re: Ako na preklad slobodných programov - 2
    jj, uz som to medzicasom nasiel. Funguje to velmi dobre. Problem je vsak v tom, ze tieto programy (KMyMoney, Bygfoot) nepatria do portfolia lokalizacneho timu KDE. Takze prelozene po subory skusim poslat na domovske stranky projektov, alebo ich dam na stiahnutie na svojom webe, teda kto bude mat zaujem.

    Nejaky cas to ale potrva, lebo je toho pomerne dost :D
    Kto vraví pravdu, ten neumrie na chorobu. -- Džingischán
    Marián Kyral avatar 13.10.2006 22:23 Marián Kyral | skóre: 29 | blog: Sem_Tam | Frýdek-Místek
    Rozbalit Rozbalit vše Re: Ako na preklad slobodných programov - 2
    Jó to znám. Pro manželku jsem přeložil KXStitch, ale než to pošlu, tak chci dokončit překlad dokumentace, protože ovládání je občas trochu komplikované :-(

    Bohužel na to nemám dost času, ale snad to v dohledné době dodělám.
    13.10.2006 15:48 Dr.Tič
    Rozbalit Rozbalit vše Re: Ako na preklad slobodných programov - 2
    Tyyyy brdo. To je slozite jak mlaticka. Chtel jsem si zkusit prelozit jednu hru pro mladyho, ale asi se na to vys*u. Stejne jeste neumi cist :-) a nejaky ten rok umet nebude.
    13.10.2006 18:38 helb | skóre: 9 | blog: helb | Kralovice
    Rozbalit Rozbalit vše Re: Ako na preklad slobodných programov - 2
    V distribúciách založených na Debian GNU/Linuxe zistíme aktuálne nastavené národné prostredie príkazom locale
    To neplatí pouze pro Debian.
    Ovládání hlasem? cat /dev/dsp > /dev/hda1
    19.10.2006 09:19 Aleš Kapica | skóre: 47 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Ako na preklad slobodných programov - 2
    Chybí tady dosti podstatná informace o tom jak překládat jednotné a množné tvary.

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.