- PVSM.RU - https://www.pvsm.ru -

Локализация по кнопке «Build»

Здравствуйте Друзья! В статье вкратце расскажу о том, как применить локализацию к вашему приложению с помощью DevUtils ELAS for Microsoft Translation [1], это расширения для DevUtils ELAS Core [2].
DevUtils ELAS Core [2] это пакет Nuget, но он не добавляет ни каких дополнительных Reference'ов в проект он только встраивается в процесс сборки проекта, а так же добавляет в Solution файл своей конфигурации ".elasElasConfiguration.props". После сборки в проекте (на момент написания статьи последняя версия 0.0.5 которая поддерживает .Net4.x, Windows Store, Windows Store Phone проекты и Resx, Resw файлы) рядом с каждым файлом ресурсов создастся Xliff(Xlf) файл.
DevUtils ELAS for Microsoft Translation [1] автоматически переведёт строки с помощью Microsoft Translation (требуется подключение к интернету). На данный момент используется бесплатная подписка, это 2`000`000 символов в месяц. Если будет превышен этот лимит вы можете самостоятельно зарегистрироваться/подписаться на data market (Obtaining an Access Token [3] пункт 1 и 2) и добавить значения в ElasConfiguration.props
Пример:

<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
...
	<PropertyGroup>
		<ElasMicrosoftTranslationClientId>%Ваш Client ID%</ElasMicrosoftTranslationClientId>
		<ElasMicrosoftTranslationClientSecret>%Ваш Client secret%</ElasMicrosoftTranslationClientSecret>
	</PropertyGroup>
...
</Project>

После проанализируйте Xliff файл(ы) и переведите «target state» в значение «translated» и опять запустите «Build». Перевод готов.

Рекомендации

Для комфортной работы с Xliff файлами в Visual Studio добавьте себе XML схему, она находится в packagesDevUtils.Elas.Core.x.x.x.xSchemasxliff-core-1.2-transitional.xsd.
При локализации большого файла ресурсов (первый раз) чтобы не возникло ситуация что Build процесс «завис», включите MSBuild project build output verbosity в Visual Studio ниже чем Minimal, в это случае вы увидите ход выполнения автоматического перевода с помощью Microsoft Translate.

Заключение

Проект находиться на начальной стадии разработки. В будущем планируется расширить список поддерживаемых проектов и источников для перевода.
Спасибо за внимание.

Автор: Gargoni

Источник [4]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/mobile-development/74570

Ссылки в тексте:

[1] DevUtils ELAS for Microsoft Translation: https://www.nuget.org/packages/DevUtils.Elas.Pretranslate.MicrosoftTranslation/

[2] DevUtils ELAS Core: https://www.nuget.org/packages/DevUtils.Elas.Core/

[3] Obtaining an Access Token: http://msdn.microsoft.com/ru-ru/library/hh454950.aspx

[4] Источник: http://habrahabr.ru/post/243237/