Rubriky: Firefox

L20n – nový a flexibilní formát pro lokalizaci Firefoxu

Co je L20n?

L20n je poměrně nový framework pro lokalizaci, který vyvinul lokalizačním tým Mozilly. Vznikl díky zkušenostem i zkoumání silných a slabých stránek dosud používaných řešení a formátů. Jeho cílem je dát do rukou překladatelů co největší možnosti překládat tak, aby text zněl v jejich jazyce přirozeně a nebylo potřeba se nijak přizpůsobovat technickým omezením.

Při návrhu L20n bylo nutno uspokojit potřeby vývojářů Firefoxu, překladatelů i jednotlivých jazyků:

  • vývojáři by měli psát dobrý kód s možností lokalizace bez nutnosti vystudovat lingvistiku a překladatelé by se neměli starat o to, v jakém jazyce je program napsán a zároveň musí moci použít všechny gramatické možnosti svého jazyka včetně těch neobvyklých
  • specifické vlastnosti jednoho jazyka nesmí ovlivňovat ostatní – pokud je text v angličtině jenom jednoduchý řetězec, nebo i překlad třeba do němčiny je stále jedna jednoduchá věta, překlad do češtiny musí umožňovat použít květnatost našeho jazyka v plné míře včetně množných čísel nebo skloňování.

Podívejme se na nějaký ilustrační příklad. Má-li se uživatel vidět krátký popisek s počtem nových zpráv, v angličtině bude „0 new“, „1 new“, „2 new“, „5 new“ atd. stačit. V zápisu pro L20n by text vypadal takto:

new-label = { $num_of_new } new

V češtině nám to ale jeden text s nahrazováním číslice stačit nebude a navíc si můžeme vymyslet více případů, aby výsledný text vypadal přirozeněji. Nebude se měnit jen tvar slova „nová“, ale třeba si určíme i speciální překlad, pokud žádné nové zprávy nejsou:

new-label = { PLURAL($num_of_new) ->
    [0]        žádná nová
    [1]        1 nová
    [2]        2 nové
    [3]        3 nové
    [4]        4 nové
    [other]    { $num_of_new } nových
}

Všimněte si, že i když v češtině můžeme udělat překlad poměrně složitý, anglická verze zůstala neovlivněna. Zdrojový kód programu také nepotřebuje žádné podmínky pro jednotlivé jazyky a pokrytí jejich gramatických pravidel.

Screenshot_2016-07-09_11-29-06

Překlad se může dokonce měnit podle rodu nebo složitější gramatiky. Podrobněji se můžete na syntaxi L20n podívat na adrese http://l20n.org/learn – nazývá se FTL, což je zkratka z FTL Translation List (ale možná si všimnete zcela náhodné podobnosti s Faster Than Light 😉 ). Fungování si můžete i vyzkoušet v jednoduchém editoru FTL Tinker přímo v prohlížeči.

L20n a Firefox

L20n lokalizační tým Mozilly zkoušel pro některé aplikace v systému Firefox OS. Při něm došlo i k zjednodušení původní syntaxe až na dnešní FTL, a protože byl Firefox OS systémem určeným pro telefony se slabší hardwarovou výbavou, nepřináší L20n ani žádné nové nároky na výkon počítače. Nyní je tedy čas jej přinést do Firefoxu. Pokud vše půjde dobře, bude L20n ve Firefoxu 51 či 52.

L20n a možnosti FTL velmi usnadní práci nám, překladatelům, ale co přinese vám, uživatelům? Předně nám umožní překládat do mnohem přirozenější češtiny – dobrým příkladem je v hlavní nabídce Nápověda položka O aplikaci Firefox. S L20n a FTL ji budeme moci konečně přeložit jako O Firefoxu, aniž bychom tím riskovali problémy například v betaverzi, Developer Edition i nočních sestaveních Nightly.

Jako druhý bonus budeme moci vidět změny v překladech hned a přímo ve Firefoxu. I to se zdá spíše jako usnadnění pro nás, abychom nemuseli na kontrolu našich úprav čekat den nebo dva. Do budoucna ale budeme moci aktualizace překladů distribuovat vám, uživatelům, v řádu hodin nebo dnů, a to nezávisle a bez nutnosti aktualizovat celý Firefox. Pokud tedy ráno najdete ve Firefoxu nějakou chybu, překlep nebo dokonce zapomenutou větu v angličtině, budeme ji moci během chvilky opravit a odpoledne už bude Firefox zase celý česky. 🙂

Za shrnutí nových vlastností L20n i tyto funkce samotné děkujeme celému lokalizačnímu týmu Mozilly pracujícímu na L20n a FTL, zejména Staśi a Gandalfovi.

7 komentářů k článku “L20n – nový a flexibilní formát pro lokalizaci Firefoxu”

  1. Shar napsal(a)

    Zrovna ta nabídka O aplikaci Firefox asi nebyl zrovna nejšťastnější příklad…

    Neb ještě někdy před třemi, či více roky se razil u vás přístup pokud možno kopírovat styl překladu Windows, či styl překladu produktů Microsoft. A ten skloňování názvu produktů prostě neumožňuje.

    Vždy se tam právě před název produktu musí dát buď aplikace (pokud je to větší program – jako že prohlížeč je), nebo program, či pokud je to něco malého, tak nástroj.

    I když, když tak sleduji poslední překlady z dílen Microsoftu, tak ten ty svoje pravidla také uvolňuje, ale myslím si, že ke skloňování názvů produktů ještě nedošlo :-). Nebo jste někde viděl v oficiálních překladech windowsu, či Wordy, nebo Excelem? :D.

    1. Michal Stanke napsal(a)

      V tuto chvíli se žádnými pravidly Microsoftu neřídíme. Naopak se snažíme si sjednotit vlastní včetně terminologie. Zrovna zbavit se „aplikace“ docela chceme. 😉

  2. Shar napsal(a)

    No, tak na to půjdu s dovolením jinak, od lesa :-).

    Zeptali jste se tvůrců, či asi spíše nějaké centrální autority mající na starosti všechny překlady Firefoxu, jestli jim nevadí, že jim chcete název v jejich vlastní aplikaci „prznit“? :D.
    V angličtině se vždy všude píše Firefox, oni neznají Firefoxu, s Firefoxem atd. Navíc název „Firefox“ je chráněn jako registrovaná značka.

    1. Michal Stanke napsal(a)

      Samozřejmě víme, co děláme, a nikomu nic neprzníme. Skloňování (včetně názvů produktů) je jedna z věcí, kvůli které je tu L20n. První věc zmíněna v prvním demu, které jsem viděl, byla zrovna zmiňovaná nabídka.

  3. Taco napsal(a)

    @Shar: A jéje. Předpokládám, že větu: „I like Firefox’s bugs.“ nepovažujete za prznění jména, že?

    Podle mého názoru normální skloňování slova ve tvaru Firefoxu, s Firefoxem, Firefoxe je zcela regulérní tvar ochranné známky. Ale toto je spíše vděčné téma na nekonečné flamewar než co jiného. Ledaže byste si z mé nápovědy výše něco odnesl 🙂

  4. Shar napsal(a)

    Dovolil jsem si jenom upozornit, jaké byly zvyky a jaká byla „stará škola“. Akceptuji, že se zvyky a doba mění.

    1. Michal Stanke napsal(a)

      V našem případě to nebyly moc zvyky, ale technická omezení.