[Localization] Localization changes for OneLocBuild (#11395)

Enabling MSBuild, Mtouch, and all their localization dependencies to use the new resx files provided from OneLocBuild.
This commit is contained in:
TJ Lambert 2021-05-06 19:42:53 -05:00 коммит произвёл GitHub
Родитель 5fba60958d
Коммит a154f30e03
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
71 изменённых файлов: 46602 добавлений и 58608 удалений

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Просмотреть файл

@ -3,10 +3,11 @@
<PropertyGroup>
<TargetFrameworks>netstandard2.0</TargetFrameworks>
</PropertyGroup>
<PropertyGroup>
<EnableDefaultEmbeddedResourceItems>false</EnableDefaultEmbeddedResourceItems>
</PropertyGroup>
<ItemGroup>
<EmbeddedResource Update="MSBStrings.resx">
<XlfSourceFormat>Resx</XlfSourceFormat>
<XlfOutputItem>EmbeddedResource</XlfOutputItem>
<Generator>PublicResXFileCodeGenerator</Generator>
<LastGenOutput>MSBStrings.Designer.cs</LastGenOutput>
</EmbeddedResource>
@ -17,6 +18,59 @@
</Compile>
</ItemGroup>
<ItemGroup>
<PackageReference Include="XliffTasks" Version="1.0.0-beta.20154.1" />
<EmbeddedResource Include="MSBStrings.resx">
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies/MSBStrings.cs.resx">
<Link>MSBStrings.cs.resx</Link>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies/MSBStrings.de.resx">
<Link>MSBStrings.de.resx</Link>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies/MSBStrings.es.resx">
<Link>MSBStrings.es.resx</Link>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies/MSBStrings.fr.resx">
<Link>MSBStrings.fr.resx</Link>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies/MSBStrings.hu.resx">
<Link>MSBStrings.hu.resx</Link>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies/MSBStrings.it.resx">
<Link>MSBStrings.it.resx</Link>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies/MSBStrings.ja.resx">
<Link>MSBStrings.ja.resx</Link>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies/MSBStrings.ko.resx">
<Link>MSBStrings.ko.resx</Link>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies/MSBStrings.nl.resx">
<Link>MSBStrings.nl.resx</Link>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies/MSBStrings.pl.resx">
<Link>MSBStrings.pl.resx</Link>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies/MSBStrings.pt-BR.resx">
<Link>MSBStrings.pt-BR.resx</Link>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies/MSBStrings.pt-PT.resx">
<Link>MSBStrings.pt-PT.resx</Link>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies/MSBStrings.ru.resx">
<Link>MSBStrings.ru.resx</Link>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies/MSBStrings.sv.resx">
<Link>MSBStrings.sv.resx</Link>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies/MSBStrings.tr.resx">
<Link>MSBStrings.tr.resx</Link>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies/MSBStrings.zh-Hans.resx">
<Link>MSBStrings.zh-Hans.resx</Link>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies/MSBStrings.zh-Hant.resx">
<Link>MSBStrings.zh-Hant.resx</Link>
</EmbeddedResource>
</ItemGroup>
</Project>

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Просмотреть файл

@ -53,7 +53,7 @@
<XlfOutputItem>EmbeddedResource</XlfOutputItem>
<LastGenOutput>Errors.Designer.cs</LastGenOutput>
<CustomToolNamespace>Xamarin.Bundler</CustomToolNamespace>
<LogicalName>Errors.mtouch.resources</LogicalName>
<LogicalName>mtouch.Errors.resources</LogicalName>
</EmbeddedResource>
</ItemGroup>
</Project>

Просмотреть файл

@ -1,7 +1,5 @@
# Insert Error codes that are waiting on translations below (one per line)
E0174
E0175
W0176
E0067
E0177
E0178
E0179
@ -10,7 +8,6 @@ E0181
E0182
E0183
E0184
E0185
E0186
E0187
E7069

Просмотреть файл

@ -22,15 +22,19 @@ namespace Xamarin.iOS.Tasks {
[TestCase ("it-IT", "Formato immagine sconosciuto.")]
[TestCase ("ja-JP", "の読み込みでエラーが発生しました: 画像の形式が不明です。")]
[TestCase ("ko-KR", "을(를) 로드하는 동안 오류 발생: 알 수 없는 이미지 형식입니다.")]
[TestCase ("nl", "nl")]
[TestCase ("pl-PL", "nieznany format obrazu.")]
[TestCase ("pt-BR", "formato de imagem desconhecido.")]
[TestCase ("ru-RU", "неизвестный формат изображения.")]
[TestCase ("sv", "sv")]
[TestCase ("tr-TR", "yüklenirken hata oluştu: Görüntü biçimi bilinmiyor.")]
[TestCase ("zh-CN", "时出错: 未知图像格式")]
[TestCase ("zh-TW", "時發生錯誤: 未知的映像格式。")]
[Ignore ("OneLocBuild will return proper translated resx files.")]
public void AllSupportedTranslations (string culture, string errorMessage)
{
CultureInfo originalCulture = Thread.CurrentThread.CurrentUICulture;
CultureInfo originalUICulture = Thread.CurrentThread.CurrentUICulture;
CultureInfo originalCulture = Thread.CurrentThread.CurrentCulture;
CultureInfo newCulture;
try {
newCulture = new CultureInfo (culture);
@ -41,9 +45,10 @@ namespace Xamarin.iOS.Tasks {
Assert.IsFalse (task.Execute (), "Execute failure");
Assert.AreEqual (1, Engine.Logger.ErrorEvents.Count, "ErrorCount");
bool isTranslated = Engine.Logger.ErrorEvents[0].Message.Contains (errorMessage);
Assert.IsTrue (isTranslated, culture + ": is not supported correctly. ");
Assert.IsTrue (isTranslated, $"Should contain \"{errorMessage}\", but instead has value: \"{Engine.Logger.ErrorEvents[0].Message}\"");
} finally {
Thread.CurrentThread.CurrentUICulture = originalCulture;
Thread.CurrentThread.CurrentUICulture = originalUICulture;
Thread.CurrentThread.CurrentCulture = originalCulture;
}
}
@ -54,17 +59,21 @@ namespace Xamarin.iOS.Tasks {
[TestCase ("it-IT")]
[TestCase ("ja-JP")]
[TestCase ("ko-KR")]
[TestCase ("nl")]
[TestCase ("pl-PL")]
[TestCase ("pt-BR")]
[TestCase ("ru-RU")]
[TestCase ("sv")]
[TestCase ("tr-TR")]
[TestCase ("zh-CN")]
[TestCase ("zh-TW")]
[Ignore ("OneLocBuild will return proper translated resx files.")]
public void SpecificErrorTranslation (string culture)
{
// insert which error code you'd like to test
string errorCode = "E0007";
CultureInfo originalCulture = Thread.CurrentThread.CurrentUICulture;
CultureInfo originalUICulture = Thread.CurrentThread.CurrentUICulture;
CultureInfo originalCulture = Thread.CurrentThread.CurrentCulture;
try {
Assert.IsFalse (string.IsNullOrEmpty (errorCode), "Error code is null or empty");
@ -73,9 +82,10 @@ namespace Xamarin.iOS.Tasks {
Assert.AreNotEqual (englishError, newCultureError, $"\"{errorCode}\" is not translated in {culture}.");
} catch (NullReferenceException){
Assert.IsFalse (true, $"Error code \"{errorCode}\" was not found");
Assert.Fail ($"Error code \"{errorCode}\" was not found");
} finally {
Thread.CurrentThread.CurrentUICulture = originalCulture;
Thread.CurrentThread.CurrentUICulture = originalUICulture;
Thread.CurrentThread.CurrentCulture = originalCulture;
}
}
@ -103,12 +113,15 @@ namespace Xamarin.iOS.Tasks {
[TestCase ("it-IT")]
[TestCase ("ja-JP")]
[TestCase ("ko-KR")]
[TestCase ("nl")]
[TestCase ("pl-PL")]
[TestCase ("pt-BR")]
[TestCase ("ru-RU")]
[TestCase ("sv")]
[TestCase ("tr-TR")]
[TestCase ("zh-CN")]
[TestCase ("zh-TW")]
[Ignore ("OneLocBuild will return proper translated resx files.")]
public void AllErrorTranslation (string culture)
{
StringBuilder errorList = new StringBuilder (string.Empty);
@ -118,7 +131,8 @@ namespace Xamarin.iOS.Tasks {
string fullCulturePath = $"{Directory.GetCurrentDirectory ()}/TaskTests/LocalizationIgnore/{culture}-Translations.ignore";
string shortCulturePath = $"xamarin-macios/tests/msbuild/Xamarin.MacDev.Tasks.Tests/TaskTests/LocalizationIgnore/{culture}-Translations.ignore";
CultureInfo originalCulture = Thread.CurrentThread.CurrentUICulture;
CultureInfo originalUICulture = Thread.CurrentThread.CurrentUICulture;
CultureInfo originalCulture = Thread.CurrentThread.CurrentCulture;
cultureIgnoreList = ReadFile (fullCulturePath);
@ -139,7 +153,8 @@ namespace Xamarin.iOS.Tasks {
} else if (englishError == newCultureError)
errorList.Append ($"{errorCode} ");
} finally {
Thread.CurrentThread.CurrentUICulture = originalCulture;
Thread.CurrentThread.CurrentUICulture = originalUICulture;
Thread.CurrentThread.CurrentCulture = originalCulture;
}
}

Просмотреть файл

@ -0,0 +1,115 @@
using System;
using NUnit.Framework;
using System.Globalization;
using System.Threading;
using System.Reflection;
using System.Resources;
using System.Text;
using System.Collections.Generic;
namespace Xamarin.Tests
{
[TestFixture]
public class LocalizationTests
{
[TestCase ("cs-CZ")]
[TestCase ("de-DE")]
[TestCase ("es-ES")]
[TestCase ("fr-FR")]
[TestCase ("it-IT")]
[TestCase ("ja-JP")]
[TestCase ("ko-KR")]
[TestCase ("nl")]
[TestCase ("pt-BR")]
[TestCase ("pt-PT")]
[TestCase ("ru-RU")]
[TestCase ("sv")]
[TestCase ("tr-TR")]
[TestCase ("zh-CN")]
[TestCase ("zh-TW")]
[Ignore ("OneLocBuild will return proper translated resx files.")]
public void TestSpecificErrorCode (string culture)
{
var errorCode = "MT0015";
var originalUICulture = Thread.CurrentThread.CurrentUICulture;
var originalCulture = Thread.CurrentThread.CurrentCulture;
try {
var englishError = TranslateError ("en-US", errorCode);
var newCultureError = TranslateError (culture, errorCode);
Assert.AreNotEqual (englishError, newCultureError, $"\"{errorCode}\" is not translated in {culture}.");
} catch (NullReferenceException){
Assert.Fail ($"Error code \"{errorCode}\" was not found");
} catch (AssertionException) {
throw;
} catch (Exception e) {
Assert.Fail ($"There was an issue obtaining the {culture} translation for {errorCode}. {e.Message}");
} finally {
Thread.CurrentThread.CurrentUICulture = originalUICulture;
Thread.CurrentThread.CurrentCulture = originalCulture;
}
}
private string TranslateError (string culture, string errorCode)
{
CultureInfo cultureInfo = new CultureInfo (culture);
Thread.CurrentThread.CurrentUICulture = cultureInfo;
Thread.CurrentThread.CurrentCulture = cultureInfo;
var resourceManager = new ResourceManager ("Errors.mtouch", typeof (MachO).Assembly);
return resourceManager.GetString (errorCode, cultureInfo);
}
List<string> IgnoredProperties = new List<string> () {
"ResourceManager",
"Culture",
"_default",
};
[TestCase ("cs-CZ")]
[TestCase ("de-DE")]
[TestCase ("es-ES")]
[TestCase ("fr-FR")]
[TestCase ("it-IT")]
[TestCase ("ja-JP")]
[TestCase ("ko-KR")]
[TestCase ("nl")]
[TestCase ("pt-BR")]
[TestCase ("pt-PT")]
[TestCase ("ru-RU")]
[TestCase ("sv")]
[TestCase ("tr-TR")]
[TestCase ("zh-CN")]
[TestCase ("zh-TW")]
[Ignore ("OneLocBuild will return proper translated resx files.")]
public void AllErrorTranslation (string culture)
{
var errorList = new StringBuilder ();
var originalUICulture = Thread.CurrentThread.CurrentUICulture;
var originalCulture = Thread.CurrentThread.CurrentCulture;
// since the Xamarin.Bundler.Errors type is inaccessible, we go through MachO to access it
var errorsAssembly = typeof (MachO).Assembly.GetType ("Xamarin.Bundler.Errors");
var props = errorsAssembly.GetProperties (BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.Static);
foreach (var errorCodeInfo in props) {
try {
var errorCode = errorCodeInfo.Name;
if (IgnoredProperties.Contains(errorCode))
continue;
string englishError = TranslateError ("en-US", errorCode);
string newCultureError = TranslateError (culture, errorCode);
if (englishError == newCultureError)
errorList.Append ($"{errorCode} ");
} finally {
Thread.CurrentThread.CurrentUICulture = originalUICulture;
Thread.CurrentThread.CurrentCulture = originalCulture;
}
}
Assert.IsEmpty (errorList.ToString (), $"The following errors were not translated:");
}
}
}

Просмотреть файл

@ -94,6 +94,7 @@
<Compile Include="..\common\BinLog.cs">
<Link>BinLog.cs</Link>
</Compile>
<Compile Include="LocalizationTests.cs" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\tools\mtouch\mtouch.csproj">

Просмотреть файл

@ -9,7 +9,6 @@
<Import Project="..\..\eng\Versions.props" />
<ItemGroup>
<PackageReference Include="XliffTasks" Version="1.0.0-beta.20154.1" />
<PackageReference Include="Microsoft.NET.ILLink" Version="$(MicrosoftNETILLinkPackageVersion)" />
</ItemGroup>
<ItemGroup>
@ -201,12 +200,78 @@
<ItemGroup>
<EmbeddedResource Include="..\mtouch\Errors.resx">
<Link>tools\mtouch\Errors.resx</Link>
<XlfSourceFormat>Resx</XlfSourceFormat>
<XlfOutputItem>EmbeddedResource</XlfOutputItem>
<Generator>ResXFileCodeGenerator</Generator>
<LastGenOutput>Errors.Designer.cs</LastGenOutput>
<CustomToolNamespace>Xamarin.Bundler</CustomToolNamespace>
<LogicalName>Errors.mtouch.resources</LogicalName>
<ManifestResourceName>Errors.mtouch</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.cs.resx">
<Link>tools\mtouch\Errors.cs.resx</Link>
<ManifestResourceName>Errors.mtouch.cs</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.de.resx">
<Link>tools\mtouch\Errors.de.resx</Link>
<ManifestResourceName>Errors.mtouch.de</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.es.resx">
<Link>tools\mtouch\Errors.es.resx</Link>
<ManifestResourceName>Errors.mtouch.es</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.fr.resx">
<Link>tools\mtouch\Errors.fr.resx</Link>
<ManifestResourceName>Errors.mtouch.fr</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.hu.resx">
<Link>tools\mtouch\Errors.hu.resx</Link>
<ManifestResourceName>Errors.mtouch.hu</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.it.resx">
<Link>tools\mtouch\Errors.it.resx</Link>
<ManifestResourceName>Errors.mtouch.it</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.ja.resx">
<Link>tools\mtouch\Errors.ja.resx</Link>
<ManifestResourceName>Errors.mtouch.ja</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.ko.resx">
<Link>tools\mtouch\Errors.ko.resx</Link>
<ManifestResourceName>Errors.mtouch.ko</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.nl.resx">
<Link>tools\mtouch\Errors.nl.resx</Link>
<ManifestResourceName>Errors.mtouch.nl</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.pl.resx">
<Link>tools\mtouch\Errors.pl.resx</Link>
<ManifestResourceName>Errors.mtouch.pl</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.pt-BR.resx">
<Link>tools\mtouch\Errors.pt-BR.resx</Link>
<ManifestResourceName>Errors.mtouch.pt-BR</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.pt-PT.resx">
<Link>tools\mtouch\Errors.pt-PT.resx</Link>
<ManifestResourceName>Errors.mtouch.pt-PT</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.ru.resx">
<Link>tools\mtouch\Errors.ru.resx</Link>
<ManifestResourceName>Errors.mtouch.ru</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.sv.resx">
<Link>tools\mtouch\Errors.sv.resx</Link>
<ManifestResourceName>Errors.mtouch.sv</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.tr.resx">
<Link>tools\mtouch\Errors.tr.resx</Link>
<ManifestResourceName>Errors.mtouch.tr</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.zh-Hans.resx">
<Link>tools\mtouch\Errors.zh-Hans.resx</Link>
<ManifestResourceName>Errors.mtouch.zh-Hans</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.zh-Hant.resx">
<Link>tools\mtouch\Errors.zh-Hant.resx</Link>
<ManifestResourceName>Errors.mtouch.zh-Hant</ManifestResourceName>
</EmbeddedResource>
</ItemGroup>
<Target Name="BuildSdkVersions" Inputs="../common/SdkVersions.cs.in;../common/Make.common" Outputs="../common/SdkVersions.cs">

Просмотреть файл

@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\..\packages\XliffTasks.1.0.0-beta.20060.1\build\XliffTasks.props" Condition="Exists('..\..\packages\XliffTasks.1.0.0-beta.20060.1\build\XliffTasks.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
@ -490,22 +489,86 @@
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\Errors.resx">
<Link>tools\mtouch\Errors.resx</Link>
<XlfSourceFormat>Resx</XlfSourceFormat>
<XlfOutputItem>EmbeddedResource</XlfOutputItem>
<Generator>ResXFileCodeGenerator</Generator>
<LastGenOutput>Errors.Designer.cs</LastGenOutput>
<CustomToolNamespace>Xamarin.Bundler</CustomToolNamespace>
<LogicalName>Errors.mtouch.resources</LogicalName>
<ManifestResourceName>Errors.mtouch</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.cs.resx">
<Link>tools\mtouch\Errors.cs.resx</Link>
<ManifestResourceName>Errors.mtouch.cs</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.de.resx">
<Link>tools\mtouch\Errors.de.resx</Link>
<ManifestResourceName>Errors.mtouch.de</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.es.resx">
<Link>tools\mtouch\Errors.es.resx</Link>
<ManifestResourceName>Errors.mtouch.es</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.fr.resx">
<Link>tools\mtouch\Errors.fr.resx</Link>
<ManifestResourceName>Errors.mtouch.fr</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.hu.resx">
<Link>tools\mtouch\Errors.hu.resx</Link>
<ManifestResourceName>Errors.mtouch.hu</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.it.resx">
<Link>tools\mtouch\Errors.it.resx</Link>
<ManifestResourceName>Errors.mtouch.it</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.ja.resx">
<Link>tools\mtouch\Errors.ja.resx</Link>
<ManifestResourceName>Errors.mtouch.ja</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.ko.resx">
<Link>tools\mtouch\Errors.ko.resx</Link>
<ManifestResourceName>Errors.mtouch.ko</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.nl.resx">
<Link>tools\mtouch\Errors.nl.resx</Link>
<ManifestResourceName>Errors.mtouch.nl</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.pl.resx">
<Link>tools\mtouch\Errors.pl.resx</Link>
<ManifestResourceName>Errors.mtouch.pl</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.pt-BR.resx">
<Link>tools\mtouch\Errors.pt-BR.resx</Link>
<ManifestResourceName>Errors.mtouch.pt-BR</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.pt-PT.resx">
<Link>tools\mtouch\Errors.pt-PT.resx</Link>
<ManifestResourceName>Errors.mtouch.pt-PT</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.ru.resx">
<Link>tools\mtouch\Errors.ru.resx</Link>
<ManifestResourceName>Errors.mtouch.ru</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.sv.resx">
<Link>tools\mtouch\Errors.sv.resx</Link>
<ManifestResourceName>Errors.mtouch.sv</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.tr.resx">
<Link>tools\mtouch\Errors.tr.resx</Link>
<ManifestResourceName>Errors.mtouch.tr</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.zh-Hans.resx">
<Link>tools\mtouch\Errors.zh-Hans.resx</Link>
<ManifestResourceName>Errors.mtouch.zh-Hans</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="..\mtouch\TranslatedAssemblies\Errors.zh-Hant.resx">
<Link>tools\mtouch\Errors.zh-Hant.resx</Link>
<ManifestResourceName>Errors.mtouch.zh-Hant</ManifestResourceName>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<None Include="Makefile" />
<None Include="packages.config" />
<None Include="..\..\docs\website\mmp-errors.md">
<Link>docs\website\mmp-errors.md</Link>
</None>
</ItemGroup>
<Import Project="..\..\packages\XliffTasks.1.0.0-beta.20060.1\build\XliffTasks.targets" Condition="Exists('..\..\packages\XliffTasks.1.0.0-beta.20060.1\build\XliffTasks.targets')" />
<Target Name="BuildSdkVersions" Inputs="../common/SdkVersions.cs.in" Outputs="../common/SdkVersions.cs">
<Exec Command="make ../common/SdkVersions.cs" />
</Target>

Просмотреть файл

@ -1,4 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="XliffTasks" version="1.0.0-beta.20060.1" targetFramework="net46" />
</packages>

16
tools/mtouch/Errors.designer.cs сгенерированный
Просмотреть файл

@ -11,17 +11,17 @@
namespace Xamarin.Bundler {
using System;
using System.Reflection;
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute ("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
[System.Diagnostics.DebuggerNonUserCodeAttribute ()]
[System.Runtime.CompilerServices.CompilerGeneratedAttribute ()]
internal class Errors {
private static System.Resources.ResourceManager resourceMan;
private static System.Globalization.CultureInfo resourceCulture;
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal Errors() {
}

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Просмотреть файл

@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
<Import Project="..\..\packages\XliffTasks.1.0.0-beta.20078.1\build\XliffTasks.props" Condition="Exists('..\..\packages\XliffTasks.1.0.0-beta.20078.1\build\XliffTasks.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
@ -509,11 +508,77 @@
<ItemGroup>
<EmbeddedResource Include="Errors.resx">
<Generator>ResXFileCodeGenerator</Generator>
<XlfSourceFormat>Resx</XlfSourceFormat>
<XlfOutputItem>EmbeddedResource</XlfOutputItem>
<LastGenOutput>Errors.Designer.cs</LastGenOutput>
<CustomToolNamespace>Xamarin.Bundler</CustomToolNamespace>
<LogicalName>Errors.mtouch.resources</LogicalName>
<ManifestResourceName>Errors.mtouch</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies\Errors.cs.resx">
<Link>Errors.cs.resx</Link>
<ManifestResourceName>Errors.mtouch.cs</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies\Errors.de.resx">
<Link>Errors.de.resx</Link>
<ManifestResourceName>Errors.mtouch.de</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies\Errors.es.resx">
<Link>Errors.es.resx</Link>
<ManifestResourceName>Errors.mtouch.es</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies\Errors.fr.resx">
<Link>Errors.fr.resx</Link>
<ManifestResourceName>Errors.mtouch.fr</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies\Errors.hu.resx">
<Link>Errors.hu.resx</Link>
<ManifestResourceName>Errors.mtouch.hu</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies\Errors.it.resx">
<Link>Errors.it.resx</Link>
<ManifestResourceName>Errors.mtouch.it</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies\Errors.ja.resx">
<Link>Errors.ja.resx</Link>
<ManifestResourceName>Errors.mtouch.ja</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies\Errors.ko.resx">
<Link>Errors.ko.resx</Link>
<ManifestResourceName>Errors.mtouch.ko</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies\Errors.nl.resx">
<Link>Errors.nl.resx</Link>
<ManifestResourceName>Errors.mtouch.nl</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies\Errors.pl.resx">
<Link>Errors.pl.resx</Link>
<ManifestResourceName>Errors.mtouch.pl</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies\Errors.pt-BR.resx">
<Link>Errors.pt-BR.resx</Link>
<ManifestResourceName>Errors.mtouch.pt-BR</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies\Errors.pt-PT.resx">
<Link>Errors.pt-PT.resx</Link>
<ManifestResourceName>Errors.mtouch.pt-PT</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies\Errors.ru.resx">
<Link>Errors.ru.resx</Link>
<ManifestResourceName>Errors.mtouch.ru</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies\Errors.sv.resx">
<Link>Errors.sv.resx</Link>
<ManifestResourceName>Errors.mtouch.sv</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies\Errors.tr.resx">
<Link>Errors.tr.resx</Link>
<ManifestResourceName>Errors.mtouch.tr</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies\Errors.zh-Hans.resx">
<Link>Errors.zh-Hans.resx</Link>
<ManifestResourceName>Errors.mtouch.zh-Hans</ManifestResourceName>
</EmbeddedResource>
<EmbeddedResource Include="TranslatedAssemblies\Errors.zh-Hant.resx">
<Link>Errors.zh-Hant.resx</Link>
<ManifestResourceName>Errors.mtouch.zh-Hant</ManifestResourceName>
</EmbeddedResource>
</ItemGroup>
<Target Name="BuildSdkVersions" Inputs="../common/SdkVersions.cs.in" Outputs="../common/SdkVersions.cs">
@ -523,5 +588,4 @@
<!-- This makes sure that just building the csproj will install the updated mtouch.exe, so that tests get it without having to 'make mtouch' manually -->
<Exec Command="make mtouch" />
</Target>
<Import Project="..\..\packages\XliffTasks.1.0.0-beta.20078.1\build\XliffTasks.targets" Condition="Exists('..\..\packages\XliffTasks.1.0.0-beta.20078.1\build\XliffTasks.targets')" />
</Project>

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу