Lokalizujeme aplikace ve Visual Studio s Multilingual App Toolkit 4

Tento tutoriál byl původně psán pro ASP.NET MVC 5 Web App, ale dá se s žádnými nebo minimálními odchylkami použít téměř pro všechny typy projektů ve Visual Studio. Zde dám návod na ony webové MVC 5 a dále na UWP/UAP, tedy univerzální aplikace pro Windows 10 – první kroky jsou všude stejné, další pak budou mít samostatné články.

Multilingual App Toolkit (MAT) je úžasný nástroj z dílny Microsoftu, se kterým můžete lokalizovat aplikace psané většinou v C#. Aktuálně je ve verzi 4.0 beta a stáhnout si jej můžete na 👻 Visual Studio Gallery Microsoft v roce 2018 zavřel.. Detailnější popis aplikace je zase na Windows Dev Center . Podporuje tyto typy aplikací a projektů:

  • Windows Universal Apps
  • Windows Presentation Foundation Apps
  • Windows Forms Apps
  • Windows (Phone) Store Apps
  • Xamarin Apps pro iOS
  • Xamarin Apps pro Android
  • ASP.NET Web Apps vč. MVC

Jdeme na to! 1 – Prvně nastavíme výchozí / neutrální jazykovou kulturu vašeho projektu. Vyberte jej v prohlížeči řešení, stiskněte Alt+Enter, pak tlačítko „Assembly Information...“ a zde vyberete v roletce. Můžete i psát, je to rychlejší, funguje autosugesce.
nastaveni-neutralni-kultury
2 – Musíme vytvořit soubor Resources.resx ve složce Strings/en-us vaší app. Samozřejmě si nahraďte en-us za svou neutrální kulturu, máte-li jinou. V Windows Universal se template také jmenuje Resources file ale má příponu .resw. Nicméně pracuje se s ním úplně stejně.
pridani-souboru-prostredku
3 – Zapište do tohoto souboru názvy prostředků v jazyce který je váš neutrální(v mém případě en-US):
zapis-vychozich-textovych-prostredku
4 – Zapněte podporu MAT pro váš projekt. To znamená že jej vyberete v prohlížeči řešení, a v nabídce nástrojů vyberete Tools -> Multilingual App Toolkit -> Enable selection. V okně output se vám vypíše: [code]> Project ‚sunamo.cz‘ was enabled. The project’s source culture is ‚en-US‘ [English (United States)][/code] 5 – Vyberte opět projekt v prohlížeči řešení a Multilingual App Toolkit -> Add translations language ... . Otevře se vám následující dialog, kde vyberte jazyk který máte jako neutrální a libovolné množství dalších jazyků u kterých chcete mít lokalizaci:
vyber-jazyku-aplikace
6 – Vytvoří se vám složka MultilingualResources a v ní soubory *.xlf, pro každý jazyk kromě neutrálního jeden. Otevřete si jej dvojím poklikem a zobrazí se vám něco takového:
MAT 4 GUI
Zadejte si vlastní překlad nebo klikněte na Translate, což použije Bing Translator(zdarma). Mě to „Hello World“ přeložilo do „Ahoj světe„, což je dobrý překlad 😀 tak jsem to uložil a zavřel. Můžete používat robotiku, pak si to upravit a nastavit na final, aby už se to roboticky nepřekládalo. 7 – Nastavte si v každém souboru .resx ve složce Strings viditelnost na Public. Tím se vám vytvoří .cs soubory s definicí, které Visual Studio použije při Intellisense. Po každé změně v *.xfl je potřeba ještě buildovat projekt(ve výchozím nastavení ctrl+shift+b, já mám namapováno na f6 z dob VS 2005 které bylo moje první). Dále pokračujte dle povahy vaší aplikace:

Napsat komentář