6. Jazyková lokalizace
Panely a skripty – jazyková lokalizace.
Minule jsme si ukázali, jak vytvářet panely. Dnes se podíváme na to, jak panely a skripty lokalizovat tak, aby jejich texty byly ve stejném jazyce, ve kterém je Photoshop.
Abychom mohli lokalizaci v panelech použít, je potřeba do souboru ext.js každého projektu přidat na začátek funkce onLoaded() následující řádek :
var resourceBundle = csInterface.initResourceBundle();
Pak si v podadresáři projektu ExtensionContent vytvoříme adresář Locale. V něm si vytvoříme adresáře podle jazyků, které budeme chtít lokalizovat. Pro češtinu je to adresář cs_CZ.
Do každého z těchto adresářů zkopírujeme soubor messages.properties, který vypadá asi takto :
video=Video... BBalicek=Nau010Dti vrstvy BVideo=Vytvou0159 video BFlip=Prohou010F vrstvy BVideoF=Vytvou0159 video F
V tomto souboru jsou definice textů pro název panelu a názvy tlačítek panelu. Vlevo je název proměnné a za rovnátkem jeho jazyková podoba, podle adresáře ve kterém je soubor messages.properties umístěn. České znaky je potřeba zadat v kódování Unicode UTF-8 podle následující tabulky :
Á u00C1 á u00E1 Č u010C č u010D Ď u010E ď u010F É u00C9 é u00E9 Ě u011A ě u011B Í u00CD í u00ED Ň u0147 ň u0148 Ó u00D3 ó u00F3 Ř u0158 ř u0159 Š u0160 š u0161 Ť u0164 ť u0165 Ú u00DA ú u00FA Ů u016E ů u016F Ý u00DD ý u00FD Ž u017D ž u017E
!!! Rozhodně je nezadávejte přímo českými znaky !!! V tom případě Photoshop při načítání panelu zatuhne a je potřeba jej zavřít přes správce úloh.
Název panelu je uveden v souboru manifest.xml a je potřeba místo názvu napsat název proměnné uvedené v souboru messages.properties a uvést ji znakem procento.
Proměnné názvů tlačítek se zadají v souboru index.html přímo do tagu button ve formě data-locale=“xxx„, kde xxx je název proměnné ze souboru messages.properties.
Lokalizace textů ve skriptech a jeho dialozích je jednodušší. Přímo do kódu můžeme na místo, kde používáme řetězec napsat místo řetězce následující kód :
localize({cs:'Délka záběru[s]',en:'Shot length[s]'})
Funkce localize vrátí patřičný řetězec podle použité jazykové verze Photoshopu. Jednoduše tak upravíte jazykové rozhraní skriptu a jeho dialogů.
Tímto dílem programování ve Photoshopu prozatím končí. Pokud mě ještě něco napadne, samozřejmě o tom napíšu.