
Kolika jazyky mluvíš, tolikrát si portál…
- Posted by Jana Babáčková
- On 13.12.2013
- 0
Jakou řečí na Vás mluví Váš interní portál? Používáte angličtinu? A používáte angličtinu, i když nemáte žádné světové pobočky a zahraniční obchodní partnery? Přemýšleli jste někdy o multi-jazykovém prostředí? Na základě průzkumu projektu languageknowledge.eu je dokázáno, že anglicky u nás mluví pouze necelých 12 % všech dospělých*, takže proč používat angličtinu, když to není potřeba? Tak se podíváme, jestli je to tak jednoduché.
Když nepočítáme formát data a času nebo začátek pracovního týdne v kalendáři (což jde nastavit a měnit na úrovni každé kolekce webů celkem libovolně bez jakéhokoliv dodatečného nastavení ), češtinu můžete použít i pro samotné ovládání portálových stránek a překlad redakčních stránek. Ano, navigace, menu s nabídkami, systémové sloupce nebo popisky ikon ribbon menu na Vás mohou celkem bez problému mluvit téměř jakýmkoliv světovým jazykem, ale obsah může být překládán pouze uvnitř stránek redakčních webů, tedy webů s aktivovanou „Publishing Infrastrucutre“ Feature. Multi-jazykového prostředí dosáhnete pomocí instalace tzv. Jazykových balíčků („Language Packs“), za (automatický) překlad obsahu stránek může funkce zvaná „Variations“ a na co ani jedna z těch věcí nestačí, to můžeme spravit pomocí resources, .resx souborů s překlady. To slovo „automatický“ u „Variations“ funkce je v závorce záměrně a za chvilku vysvětlím proč, nejdříve se podíváme na balíčky.
1. Jazykové balíčky
Jazykové balíčky existují pro každou verzi, edici a produkt zvlášť, žádný velký „mega pack“ nehledejte, protože neexistuje. Co to v praxi znamená? Pro SharePoint 2010 Server můžete najít jiný balíček než pro SharePoint 2010 Server SP2 a ani ten nestačí třeba pro Project Server 2010. Speciální balíček potřebuje Search Server 2010 i Office Web Apps 2010 a všechny musíte ve správném pořadí nainstalovat vždy, kdy se rozhodnete pro nějakou z velkých aktualizací. Pokud používáte tohle všechno dohromady a rozhodnete se pro nový, další jazyk, potřebujete stáhnout všechny.
Na druhou stranu proces instalace a následné použití balíčků pro přizpůsobení uživatelského rozhraní je celkem snadný: Stačí otevřít prohlížeč, najít stránky Microsoft Download centra, zadat ta správná klíčová slova pro Váš produkt nebo edici, vybrat jazyk který potřebujete a stáhnout si vybraný .exe soubor na disk. Zlaté pravidlo říká: Balíčky instalujte vždy až jako poslední, po instalaci všech ostatních produktů a jejich service packů a na konci instalace nezapomeňte na starý dobrý „Configuration Wizard“ (z příkazové řádky). Po instalaci jste schopni bez jakéhokoliv dalšího nastavování založit novou kolekci webů do Vámi vybraného jazyka a pracovat s ní. Pozor, jedou vybraný jazyk kolekce už nejde změnit a pokud při zakládání na výběr zapomenete, vyrobí se v jazyce, kterým mluví Vaše instalace na serveru (a serverové prostředí zároveň).
Instalace balíčků má ještě jednu výhodu – pomůžete hledání. Pokud používáte anglické prostředí, ale obsah dokumentů je psaný česky, občas nemusíte najít to, co hledáte jen pro to, že tomu překladač nerozumí. Instalací jazykového balíčku se naučí rozdělovat slova a indexovat obsah i uvnitř dokumentů, aniž byste jazyk použili pro rozhraní Vašeho portálu.
Chcete se balíčku zbavit? Pokud jste si opravdu jisti, že už ho žádná z Vašich kolekcí nepoužívá (a to ověřte pro jistotu hned dvakrát), otevřete Ovládací panely a balíček odinstalujte, jinak si za svůj pokus o otevření stránky s neexistující jazykovou sadou zasloužíte jen „500 – Internal server error page“ chybové hlášení. Navíc po odinstalaci Vám zůstanou nesmazaná tři workflow pro každou jazykovou sadu, kterou jste měli a ty musí být odstraněny ručně (chyba „feature.xml“ is missing při pokusu otevřít Site Settings > Workflows“) v principu stačí najít „features“ pro příslušnou jazykovou sadu na adrese 14\Template\Features, budou mít na konci číslo Vaší jazykové sady. Pro němčinu je to například „ReviewPublishingSPD1031“. Až je najdete, odstraňte jejich záznamy z feature.xml. Na konci celé odinstalační akce nezapomeňte na „Configuration Wizard“.
Jazyk rozhraní můžete měnit pomocí administrativního menu v pravém horním rohu obrazovky.
Aktuálně existuje něco kolem 40ti jazykových balíčků.
2. Variace, překlady obsahu stránek
S variacemi je to trošku složitější. V podstatě jde o Feature, kterou lze použít pouze nad kolekcí s aktivovanou „Publishing Infrastructure“ s wofkflows, která vezme stávající strukturu stránek (tzv. „source“ nebo „Variation Root Site“) a vyrobí z ní tolik kopií (tzv. „destinations“ nebo Variations Top Site“), kolik cílových jazyků chceme mít. Každá kopie je podwebem zdroje, ale BLOB objekty a objekty obecně (listy, knihovny) jdou sdílet, takže nemusíte vkládat jeden a ten samý obrázek do každé jazykové mutace zvlášť – není to „content deployment“, nevyrobíte si žádný objekt dvakrát.
O celý proces výroby překladů (kopií stránek) se stará několik handlerů a celkem 5 timer jobů: Variations Propagate Site Job, Variations Propagate Page Job, Variations Create Site Job, Variations Create Page Job a Variations Create Hierarchies Job. Nejdůležitější z nich je pro nás asi „Variations Create Hierarchies Job“, který vyrobí novou kopii stránky pro daný jazyk pokaždé, když na zdroji něco nového (schváleného, publikovaného) přibyde. Na pozadí celého procesu nečekejte nic složitého, jde v podstatě jen o obdobu „approval workflow“, právě proto musíme zakládat právě„Publishing site“ s workflows.
Co se týče nastavení, „Site Settins“ stránka schovává celkem tři důležité položky: „Variations“, kde můžeme nastavit náš zdrojový web, způsob práce s BLOB objekty nebo adresáta e-mailových notifikací s informací, že byla založena nová stránka s překladem, „Variations labels“, kde se definují cílové podweby a „Variations logs“ s historií prací.
Variace Vám přidají pár nových ikonek do Ribbon menu, celou novou sekci pro redakční stránky a celou novou akci pro nástroj „Content and Structure” (dostupný pouze po aktivaci „Publishing features“).
Teď ty méně veselé zprávy. Jestli si myslíte, že Variace automaticky přeloží veškerý obsah celých Vašich stránek, tak se pletete. Ano, založí stejně se jmenující a stejně vypadající stránku se všemi BLOB objekty jako jste vyrobili na zdroji. Ano, založí takovou stránku pro každý jazyk, který jste si zvolili, ale nakonec stejně budete muset jít dovnitř a přeložit (nebo v lepším případě zkontrolovat) spousty textů ručně. Přitom na některé web party („content query, search“) a navigační prvky stejně nestačí a budete nuceni použít .resx soubory, viz bod č. 3.
Jaký jazyk uvidíte diktuje Váš prohlížeč nebo systém. Hned jak zapnete variace, aktivuje se nad zdrojovým webem speciální handler, který se divá na jazyk prohlížeče a pátrá po LCID cookie pokaždé, když se otevíráte na vstupní stránku variations webu. Pokud najde odpovídající jazyk, podívá se do nastavení „Variation labels“ a přesměruje Vás na příslušný podweb. Šikovný programátor má šanci tohle chování ovlivnit, celý proces popisuje i samotné MSDN.
3. Resources – překlady systémových sloupců, typů obsahu a popisky
Pokud vyvíjíte své vlastní aplikace, používáte jazyk pro který neexistuje balíček nebo máte potřebu zpřesnit překlad toho, co vidíte na obrazovce před sebou, můžete použít tzv. „Resources“ – soubory s příponou .resx s definicemi všech dialogů, systémových sloupců, chybových hlášení a titulků. Editace takových souborů není těžká, jde v podstatě jen o .xml soubory, které jde upravit přímo nebo pomocí libovolného nástroje z CodePlex.com serveru.
Lokalizační .resx soubory najdete na adrese \14\Resources**, skládají se ze jména, jazykové sady a přípony a vypadat mohou např. Takto: Localization.en-US.resx. Teorie říká, že pokud používáte česky mluvící kolekci webů a česky mluvící aplikaci vyrobenou „na míru“, systém pro ni hledá nejprve cs.CZ.resx soubor v českém jazyce a teprve když ho nenajde, pak si vezme výchozí. Ve výsledku je úplně jedno co je uvnitř, záleží jen na tom dovětku určujícím jazyk: en-US, cs-CZ, fr-FR apod. Pokud ho změníte, SharePoint použije výchozí, pokud zkopírujete výchozí a dopíšete mu cs-CZ dovětek, použije se ten. Pokud si chcete upravit .resx soubor pro rozhraní konkrétní jazykové sady stránek, otevřete „Site Actions > Site Settings > Site Administration“ sekci a klikněte na odkaz „Export Translations“. Uložte soubor na disk, změnte co potřebujete a Importujte ho zpět přes povel „Import translations“.
4. SharePoint 2013
Jednou z největších změn ve verzi 2013 je rozhodně ztráta možnosti přepínání jazyka přímo z uživatelského menu, nastavení se řídí pouze místním, regionálním nastavením pro celý web. Naštěstí není potřeba měnit prostředí systému nebo prohlížeče, abychom byli schopní ovlivnit jazyk, kterým na nás portál mluví, stačí si upravit nastavení uvnitř osobních stránek, volba „Preferred Display Language“.
Druhou změnou jsou popisky, které můžeme přiřadit jednotlivým výrazům v „Term setech“. V knihovnách a listech to funguje bezvadně, bohužel vyhledávání je zobrazí jen ve výchozím jazyce.
Třetí a největší změnou jsou „Translation Services“.
*Nebojte, není to tak hrozné, v sousedním Německu je to jen 40%
** Těch lokací je výsledku trochu víc:
\14\Template\Features\<Feature>\Resources
\14\Resources
\14\Config\Resources
<Virtual Directory>\App_GlobalResources
Asi nejúplnější příručka pro Variace, jakou jsem kdy viděla, je na tomto linku.
0 comments on Kolika jazyky mluvíš, tolikrát si portál…