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í
×
včera 23:33 | Zajímavý projekt

Na Humble Bundle byla spuštěna akce Humble Book Bundle: Web Programming by O'Reilly. Za 1 dolar a více lze koupit 5 elektronických knih, za 8 dolarů a více lze koupit 11 elektronických knih a za 15 dolarů a více lze koupit 17 elektronických knih věnovaných webovému programování od nakladatelství O'Reilly Media. Část ceny lze určit charitě.

Ladislav Hagara | Komentářů: 0
včera 23:00 | Pozvánky

Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 162. brněnský sraz, který proběhne v pátek 22. března od 18:00 v restauraci Slatinský šenk na adrese Zlínská 12.

Ladislav Hagara | Komentářů: 0
včera 16:22 | Nová verze

Jonathan Thomas oznámil vydání nové verze 2.4.4 video editoru OpenShot (Wikipedie). Přehled novinek na YouTube. Zdrojové kódy OpenShotu jsou k dispozici na GitHubu. Ke stažení je také balíček ve formátu AppImage. Stačí jej stáhnout, nastavit právo na spouštění a spustit.

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

Mozilla.cz informuje, že Firefox bude mít nového správce hesel Lockbox. Lockbox bude integrován s Firefox Monitorem – službou pro varování při únicích dat.

Ladislav Hagara | Komentářů: 0
včera 11:33 | Nová verze

Webový prohlížeč Falkon založený na QtWebEngine (Blink) byl vydán ve verzi 3.1. Podle seznamu změn zlepšuje integraci v rámci KDE, opravuje několik chyb a stabilizuje podporu rozšíření v Python a přidává podporu QML.

Fluttershy, yay! | Komentářů: 2
včera 11:22 | Komunita

Česká Wikipedie je dnes vypnuta. Na protest proti evropské reformě autorského práva.

Ladislav Hagara | Komentářů: 13
20.3. 18:11 | Nová verze

Po půl roce vývoje od vydání verze 7.0.0 byla vydána verze 8.0.0 překladačové infrastruktury LLVM (Wikipedie). Přehled novinek v poznámkách k vydání: LLVM, Clang, clang-tools-extra, LLD a Libc++.

Ladislav Hagara | Komentářů: 0
20.3. 17:44 | Nová verze

Bylo vydáno Eclipse IDE 2019-03 aneb Eclipse 4.11. Nově vychází toto vývojové prostředí čtvrtletně. Představení novinek na YouTube.

Ladislav Hagara | Komentářů: 0
20.3. 01:11 | IT novinky

V říjnu loňského roku společnost Google představila hráčům počítačových her Project Stream umožňující streamování AAA her do webového prohlížeče Chrome. Včera na konferenci GDC 2019 (Game Developers Conference) společnost Google oficiálně představila (YouTube) pokračování projektu – herní platformu Stadia. V Česku a na Slovensku je služba Stadia zatím nedostupná.

Ladislav Hagara | Komentářů: 24
19.3. 23:11 | Nová verze

Byla vydána Java 12 / JDK 12. Nových vlastností (JEP - JDK Enhancement Proposal) je 8. Nová Java / JDK vychází každých 6 měsíců.

Ladislav Hagara | Komentářů: 2
Kolik balíčků (v tisících) máte nainstalovaných na svém systému?
 (4%)
 (13%)
 (33%)
 (30%)
 (20%)
 (3%)
 (2%)
 (1%)
 (3%)
Celkem 224 hlasů
 Komentářů: 21, poslední včera 23:40
Rozcestník

Linuxové překladatelské nástroje I.

3.10.2006 15:23 | Přečteno: 1330× | 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: 48 | 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: 48 | 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: 55 | 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: 67 | 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: 55 | 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: 48 | 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.