Překládáme WordPress – 2. část – začínáme s PoEditem

Jak jsem naznačil už v první části, existuje specializovaný textový editor, který práci s překlady značně usnadní. Jmenuje se PoEdit a zastane několik funkcí, které bychom jinak museli zajistit pomocí různých skriptů. Umí:

  • načíst soubor .POT, který je textovým seznamem všech řetězců k překladu
  • z tohoto souboru vytvoří tzv. katalog, se kterým můžeme dále pracovat
  • textové řetězce zobrazí jako řádky, vlevo originál, vpravo překlad, a pro usnadnění psaní překladů ještě totéž ve dvou oknech – v horním originál, a do dolního zapisujeme překlad
  • soubor s překlady ukládá jednak jako textový .PO, shodný s původním .POT souborem, ale s doplněnými údaji o překladateli, verzi a názvu, jazyku, systému plurálů atd., a současně jako binární .MO, který je upraven do podoby, vhodné pro použití skriptem gettext
  • přeložené řetězce může ukládat do databáze pro pozdější použití

Jedná se program od českého autora, velmi užitečný, takže by měla zaznít chvála. Bohužel, při všech svých užitných vlastnostech má tento program jednu zásadní nevýhodu: Není absolutně uživatelsky přívětivý a zvlášť začínající překladatelé mohou mít problémy s jeho některými nepředpokládanými reakcemi a celkově nepřehledným zadáváním parametrů (uvidíme dále). Já osobně to řeším tak, že současně s ním používám i vynikající textový editor PSPad, rovněž od českého autora. Pokud dělám jenom menší úpravy, odstraňuji chyby a překlepy, jde to velmi dobře ba lépe v PSPadu. Nakonec si soubor .PO načtu do PoEditu a uložím. Tím zajistím překlad do tvaru .MO, který pak můžu nahrát na web atd.

Vraťme se ale k formátu souborů, určených k překladu. Obvykle vycházíme ze zmíněného .POT, např. wordpress.pot, který můžeme stáhnout z webu. V případě, že my sami nebo někdo už udělal nějaký (jakýkoliv) překlad, většinou bývá k dispozici soubor .PO. Soubor POT ve Windows přímo neotevřeme, neb tyto se domnívají, že jde o soubor PowerPointu. Musíme si jej načíst do PoEditu pomocí volby menu Nový katalog z POT souboru. Struktura jednotlivých řádků souboru je takováto:

#: wp-admin/admin-ajax.php:309
#, php-format
msgid "Category <a href=\"#%s\">%s</a> added"
msgstr ""

První řádek (nebo několik řádků) – zakomentovaný křížkem – nás informuje o umístění příslušného řetězce v souborech WordPressu, a to včetně čísla řádku. To může posloužit v případě, že si nejsme jisti kontextem, a autor souboru nepoužil označení __c s komentářem.
Druhý, rovněž zakomentovaný řádek, nás informuje, že obsahem řetězce je výstup z nějaké PHP proměnné – tyto výstupy musíme do překladu opsat přesně tak, jak jsou v originále, jinak nám PoEdit zahlásí fatální chybu a my můžeme přijít o celodenní práci, takže POZOR! Jediné co můžeme, je změnit pořadí těchto výstupů, ovšem nikoliv, pokud jsou obsaženy v odkaze (a href).
Řádek msgid obsahuje originální řetězec, řádek msgstr pak jeho překlad, oboje v anglických uvozovkách. Pokud bychom potřebovali v řetězci zachovat tyto uvozovky jako součást textu, musíme jim předřadit obrácené lomítko (\).
Pokud je řetězec msgstr prázdný, PoEdit označí tento řádek jako nepřeložený. Pokud v něm něco je, co se případně neshoduje docela přesně s databází překladů, nebo tu databázi nemáme vytvořenou, objeví se označení fuzzy – překlad je nepřesný.

#: wp-admin/admin-ajax.php:309
#, fuzzy, php-format
msgid "Category %s added"
msgstr "Příspěvek %s přidán"

V případě tohoto označení bude PoEdit příslušný řetězec při převodu do .MO souboru ignorovat. Dejme tomu, že tento řetězec přeložíme:

#: wp-admin/admin-ajax.php:309
#, php-format
msgid "Category %s added"
msgstr "Rubrika %s přidána"

Takto zapsaný překlad je vyhodnocen jako správný a pokud máme ve WordPressu nastaven správný jazyk (cs_CZ), při otevření souboru admin-ajax.php se tento řetězec vypíše správně česky.
Aby PoEdit takto fungoval, musíme ale nejdříve provést řadu nastavení. Ty se dělí na Konfiguraci v menu Soubor (platí pro celý program, tedy pro všechny překlady) a Nastavení v menu Katalog (platí pro příslušný katalog). Zde je potřeba uvést, že PoEdit považuje za katalog všechny soubory, které se týkají příslušného výstupu (PO, MO), tedy POT (pokud je) a PHP soubory v příslušných adresářích, pokud k nim nastavíme cestu. Toto je poměrně důležité, neboť jen tak zajistíme průběžnou aktualizaci našeho překladu při aktualizacích vstupních souborů.

Konfigurace PoEditu:

Než PoEdit začneme používat, musíme jej nakonfigurovat v menu Soubor/Konfigurace… Konfigurační menu má 4 záložky. Na té první nastavíme své jméno nebo nick, pod kterým jsme nebo budeme chtít být známi, a adresu, abychom umožnili komunitě spojení na nás. Klikneme na Změnit jazyk a nastavíme námi preferovaný, tj. Czech.

screenshot_2008-08-16_09-05-59

Potvrdíme OK a přejdeme na další záložku Editor:

screenshot_2008-08-16_09-10-45

Zde nastavíme chování vlastního editoru. Zcela určitě zaškrtneme Automatickou kompilaci .mo souboru při uložení, a přehled změn po aktualizaci katalogu, tyhle dvě volby jsou tak důležité, že nechápu, proč jsou volitelné. Další už je na nás. Správce katalogů otevírat není nutno, zaměření vstupního pole pro překlad, tj. kurzor v okénku překladu může být užitečné, ale zbavíme se tím možnosti jedoduchého listování po řádcích pomocí šipek nahoru a dolů (nepochopitelně, to považuji za chybu programu). Editování komentářů v okně použijeme, pokud chceme přidávat vlastní komentáře k jednotlivým přeloženým frázím pro potřebu svou nebo dalších překladatelů, např. „Tímto překladem si nejsem jist, zkuste najít lepší“. Formát konců řádek ponecháme „Unix“ a neměnit. Externí editor můžeme nastavit podle libosti. Mám tam notepad, protože tato volba mi otvírá zmíněný PSPad (lze nastavit v něm). Fonty lze nastavit také podle vlastního vkusu, ponecháním bez zadání nic nezkazíte. Třetí, velmi důležitá, je záložka Překladové paměti:

screenshot_2008-08-16_09-22-54

Cesta k databázi se nám nabídne defaultní jako C:\Documents and Settings\Jmeno_uzivatele\poedit_tm a zřejmě ji ponecháme. Změna nastavení cesty může být užitečná v případě, že potřebujeme mít rozdílné databáze pro různé varianty překladů, což využijeme později. Nyní musíme vložit příslušný jazyk, do kterého chceme překládat – klikneme na ikonu s prázdným čtverečkem a vybereme cs z nabídky. POZOR, volbu musíme potvrdit ENTEREM, nesmíme kliknout na OK, nic by se neuložilo a museli bychom konfigurovat znovu. Tohle je další zádrhel programu, na který si musíme dávat pozor, zvlášť při nastavování katalogu. Generovat databázi zatím není z čeho, co se týká nastavení chybějících slov a rozdílů, nechávám tak, nepřišel jsem na to, jak to vlastně funguje. Automatický překlad při aktualizaci je potřeba zapnout. V záložce Parsery nic neměňte. Ve starších verzích PoEditu zde byla nutná jakási úprava v nastavení PHP parseru, ale v novém už je to naštěstí v pořádku.

V dalším pokračování článku se pustíme do prvního překladu – zkusíme převést do češtiny nějaký, pro začátek jednoduchý, plugin.


Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *

Tato stránka používá Akismet k omezení spamu. Podívejte se, jak vaše data z komentářů zpracováváme..