abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 21:33 | Komunita

    Fedora 40 release party v Praze proběhne v pátek 17. května od 18:30 v prostorách společnosti Etnetera Core na adrese Jankovcova 1037/49, Praha 7. Součástí bude program kratších přednášek o novinkách ve Fedoře.

    Ladislav Hagara | Komentářů: 1
    včera 21:11 | IT novinky

    Stack Overflow se dohodl s OpenAI o zpřístupnění obsahu Stack Overflow pro vylepšení OpenAI AI modelů.

    Ladislav Hagara | Komentářů: 0
    včera 17:55 | Nová verze

    AlmaLinux byl vydán v nové stabilní verzi 9.4 (Mastodon, 𝕏). S kódovým názvem Seafoam Ocelot. Přehled novinek v příspěvku na blogu a v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 17:11 | IT novinky

    Před 50 lety, 5. května 1974 v žurnálu IEEE Transactions on Communications, Vint Cerf a Bob Kahn popsali protokol TCP (pdf).

    Ladislav Hagara | Komentářů: 0
    včera 13:44 | Zajímavý článek

    Bylo vydáno do češtiny přeložené číslo 717 týdeníku WeeklyOSM přinášející zprávy ze světa OpenStreetMap.

    Ladislav Hagara | Komentářů: 0
    včera 04:00 | Nová verze

    Byla vydána (Mastodon, 𝕏) nová stabilní verze 2.10.38 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP (GNU Image Manipulation Program). Přehled novinek v oznámení o vydání a v souboru NEWS na GitLabu. Nový GIMP je již k dispozici také na Flathubu.

    Ladislav Hagara | Komentářů: 5
    včera 00:22 | Komunita

    Google zveřejnil seznam 1220 projektů od 195 organizací (Debian, GNU, openSUSE, Linux Foundation, Haiku, Python, …) přijatých do letošního, již dvacátého, Google Summer of Code.

    Ladislav Hagara | Komentářů: 2
    5.5. 22:22 | IT novinky

    Na základě DMCA požadavku bylo na konci dubna z GitHubu odstraněno 8535 repozitářů se zdrojovými kódy open source emulátoru přenosné herní konzole Nintendo Switch yuzu.

    Ladislav Hagara | Komentářů: 7
    5.5. 00:33 | Nová verze

    Webový prohlížeč Dillo (Wikipedie) byl vydán ve verzi 3.1.0. Po devíti letech od vydání předchozí verze 3.0.5. Doména dillo.org již nepatří vývojářům Dilla.

    Ladislav Hagara | Komentářů: 0
    4.5. 15:00 | Komunita

    O víkendu probíhá v Bostonu, a také virtuálně, konference LibrePlanet 2024 organizovaná nadací Free Software Foundation (FSF).

    Ladislav Hagara | Komentářů: 0
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (63%)
     (8%)
     (15%)
     (14%)
    Celkem 119 hlasů
     Komentářů: 8, poslední 4.5. 08:25
    Rozcestník

    Linuxové překladatelské nástroje I.

    3.10.2006 15:23 | Přečteno: 1488× | Za vším hledej Linux

    Následující blábol mi téměř rok ležel "v šuplíku". Jenže na přetrženou nit se mi navazuje opravdu velmi ztuha. Teprve seriálek co tady začal vycházet, mne nakopnul k tomu abych to nějak dotáhnul. Předem upozorňuji, že to nemá zastoupit dokumentaci na téma lokalizace a cílem je seznámit čtenáře s užitečnými nástroji, které lze při překladech použít. V kontextu s uváděným seriálem jej také doplnit. Chci, stejně jako jeho autor především pomoci těm co by sami rádi přeložili některé GUI či dokumentaci, ale zatím nevěděli jak se to dělá.

    Protože se ukázalo že to psaní je poněkud delší než se zdálo, tak jsem ho rozdělil do několika logických celků, které hodlám ještě průběžně doplnit resp. opravit:

    1. Lokalizace v linuxu
    2. Lokalizace přes PO soubory (gettext)
    3. Lokalizace přes TS soubory (Qt)
    4. Překlad lokalizace přes XLF soubory
    5. Konverze lokalizačních souborů

    Lokalizace v linuxu

    Je realizována dvěma procesy. První - lokalizace (zkr. l10n vychází z "localization") - zajišťuje to, že s vámi váš systém kecá v jazyce který si zvolíte. Druhý - internacionalizace (zkr. i18n vychází z "internationalization"), že při tom používá zvyklostí země kterou si zvolíte. Proto se u LOCALES používají kódy jako en_US, en_UK atp. a nikoliv pouze en, i když pak vedou obvykle symbolickými linky na jeden a týž adresář. Tyto "lokály" se nastavují se pomocí systémových proměnných začínajících řetězcem LOCALE_* a to buď globálně pro celý systém, a nebo pro každou konzoli zvlášť. Myslím že není nutné se více u tohoto zdržovat.

    Překlady aplikací

    Je to už docela dlouho co jsem se více věnoval MS Windows, takže co píšu už nemusí platit, ale tehdy byla pro každý národní jazyk prodávaná samostatná lokalizovaná verze tohoto OS. Nebylo sice problém nainstalovat aplikaci vytvořenou pro jinou jazykovou verzi (např. aplikace pro můj první skener na mne plivala taková sprostá slova jako - überträgen, abbrechen, apod.), ale občas přeci jen některé aplikace nebylo možno spustit, protože vyžadovaly jinou verzi systémové knihovny, než byla ta lokalizovaná, navzdory shodnému číslu verze.
    Obzvlášť žertovná pak byla situace, kdy se na německé verzi MS Windows nedalo vůbec dostat na CD, jen proto, že blbec který ho pálil na české verzi dal do názvu adresáře diakritiku.

    Linux se tenkrát vymotával z plenek a některé věci teprve čekaly na svůj čas, takže lokalizaci bylo nutno řešit pro každou aplikaci extra. To bylo poněkud nepraktické a při tak dynamickém vývoji neúnosné. Takže se postupně zavedly různé systémy, které řeši lokalizaci přes externí soubory s překlady. Funguje to zhruba tak že systém, předtím než zobrazí nějaký text na monitoru, ověří zda pro něj neexistuje překlad. Pokud ano, zobrazí ten. Pokud ne, vypíše originální text. Díky tomu se zcela běžně setkáváte ve svých aplikacích s česko-anglickými menu. Vývoj je prostě rychlý a lokalizátor - tj. ten kdo řetězce překládá je vždy o krok pozadu za programátorem.

    Trochu jiná situace je v případě manuálů a dokumentace k aplikacím. Tam systém neprovádí průbežný překlad textových řetězců, ale rovnou vybere, je-li k dispozici, již přeložený dokument. Opět se přitom využívá kódů uvedených v LOCALE.
    Je v tom však skryt kámen úrazu. Je přeložená dokumentace vskutku aktuální? Obvykle ne, proto řada uživatelů raději upřednostnuje dokumentaci v původní jazykové verzi.

    Systémy lokalizace

    Jak jsem už uvedl v předchozím odstavci - není jen jedna metoda lokalizace. Nejčastěji se používá lokalizace přes gettext, ale aplikace které používají Qt knihovny využívají svůj vlastní systém lokalizace. Ten je však podobný. Na počátku jsou textové soubory s překlady, které mohou být zkompilovány do binární formy. V následujícím vyprávění se budu odpichovat od přípon, které používají soubory s překladem - ty lze totiž editovat i běžným textovým editorem.

           

    Hodnocení: 67 %

            špatnédobré        

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

    Komentáře

    Vložit další komentář

    David Watzke avatar 3.10.2006 15:30 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Linuxové překladatelské nástroje I.
    Dokud u toho nejsou komentáře - nešlo by to dát do jednoho zápisku? Je to IMHO "drobínek nespravedlivý"...
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    3.10.2006 15:34 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Linuxové překladatelské nástroje I.
    Chtěl jsem, ale nešlo. Do blogu jsem to vrazil zcela záměrně právě proto, aby mohly být jednotlivé "kusy" textu seprány zvlášt. Proto také ta zmínka o eventuálním doplnění či opravě. Nemám kupř. ještě zcela zformulované odstavečky k vlastním nástrojům které jsou k dispozici.
    3.10.2006 16:23 Kníže Ignor | skóre: 19 | blog: stoupa
    Rozbalit Rozbalit vše Re: Linuxové překladatelské nástroje I.
    Mně to teda celkem nevadí (vadí mi idioti, co píšou dotazy do blogu), ale dalo se to rozdělit i jiným způsobem (zvlášť pokud to ještě není hotové) - udělat jeden blogpost s obsahem a jednotlivé části dát do odložených zápisků (teda nepublikovat je). Odložené zápisky lze totiž normálně linkovat, nekontroluje se, že nejsou publikované (akorát tam není možnost komentovat a vložit anketu).
    Jestli máš zálohu mého blogu, tak mi ji pošli. Nějak jsem si ho smazal :-)
    3.10.2006 17:03 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Linuxové překladatelské nástroje I.
    Hotovo to je a není. V tomhle stavu už to mám právě víc jak rok. V podstatě je to právě takový zápisek do blogu - ambice na článek si nedělám. Původně jsem to chtěl "vyhodit" až poté co bych opravdu vychytal všechna ale. Na jejich hledání však už moc času nemám, a tak předpokládám že mě na ně upozorní komentáře.
    3.10.2006 15:40 žabža
    Rozbalit Rozbalit vše Re: Linuxové překladatelské nástroje I.
    hochu, hochu, tímhle spamováním si moc kamarádů nezískáš :-)
    vencour avatar 3.10.2006 16:01 vencour | skóre: 56 | blog: Tady je Vencourovo | Praha+západní Čechy
    Rozbalit Rozbalit vše Re: Linuxové překladatelské nástroje I.

    I tak se dá získat 10 minut slávy.

    Kolik z nás se dává/dívalo na South park? :-D

    Ty nejhlubší objevy nečekají nutně za příští hvězdou. Jsou uvnitř nás utkány do vláken, která nás spojují, nás všechny.
    Max avatar 3.10.2006 16:06 Max | skóre: 72 | blog: Max_Devaine
    Rozbalit Rozbalit vše Re: Linuxové překladatelské nástroje I.
    Párkrát, ale od tý doby, co vyšel díl, ve kterém Kenyho na konci nezabili a on přežil, jsem se na to přestal dívat ... :-D
    Zdar Max
    Měl jsem sen ... :(
    vencour avatar 3.10.2006 16:07 vencour | skóre: 56 | blog: Tady je Vencourovo | Praha+západní Čechy
    Rozbalit Rozbalit vše Re: Linuxové překladatelské nástroje I.

    Tak to Keny asi přežije i takovouhle "békárnu" ... ;-)

    Ty nejhlubší objevy nečekají nutně za příští hvězdou. Jsou uvnitř nás utkány do vláken, která nás spojují, nás všechny.
    4.10.2006 09:12 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Linuxové překladatelské nástroje I.
    Si piš ;-)
    3.10.2006 17:30 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše i18n a l10n
    Tak bud jsem zil celou dobu v bludu nebo to je tady spatne. Podle me totiz plati ze:

    i18n znamena pridani hacku do programu tak, aby pouzival nejaky i18n system, ktery umozni nasledujici l10n. Napr. pro gettext to je prevzeti locales z promennych prostredi, nastaveni prekladatelske domeny, volani gettext a ngettext na hlaskach, ktere chceme mit prelozene, pouzivani localtime(3), trideni pomoci strcoll(3) apod. i18n je nutny predpoklad pro volitelnou l10n.

    l10n je jiz specificka pro kazdy jazyk a pouziva nastroju zvolenych pri i18n. Napr. se jedna o preklad katalogu zprav, definice formatu casu apod.

    Struktura locale jazyk_Zeme.znakova_sada@modifikator je takova z historickych duvodu. Napr. pri de_AT prikaz cal -y vypise misto Janur Jäner za pouziti de_DE.
    3.10.2006 17:33 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše POSIX NLS
    V blogu bylo zapomneno na POSIX NLS. Je to jediny standardizovany katalogovy system. Avsak je velmi primitivni. Napr. se nezabyva znakovymi sadami. Pouziva(l) ho napr. blackbox.

    Založit nové vláknoNahoru

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