Skip to content

Commit

Permalink
fix #4214 by integrating localized IntelliSense (#4259)
Browse files Browse the repository at this point in the history
fixes #4214

This change includes all the localized IntelliSense from the old
internal repo and includes logic to include it in the satellite packages
  • Loading branch information
analogrelay committed Nov 1, 2018
1 parent e8c1ac6 commit 77176d0
Show file tree
Hide file tree
Showing 86 changed files with 78,387 additions and 36 deletions.
37 changes: 37 additions & 0 deletions build/ImportIntelisense.ps1
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
<#
.SYNOPSIS Imports translated Intellisense files
#>
param(
[Parameter(Position = 0, Mandatory = $true)][string]$SourceDirectory,
[switch]$Force
)

$RepoRoot = Convert-Path "$PSScriptRoot\.."

$SkippedLanguages = @(
# We don't do PLOC builds any more
"PLOC",

# These are in "language" folders in the source :)
"net40",
"net45"
)

Get-ChildItem $SourceDirectory | ForEach-Object {
$language = $_.Name

if ($SkippedLanguages -notcontains $language) {
Get-ChildItem $_.FullName | ForEach-Object {
$packageId = [IO.Path]::GetFileNameWithoutExtension($_.FullName)
$dest = Join-Path $RepoRoot "src/$packageId/loc/intellisense/$language/$($_.Name)"

Write-Host "Importing $packageId intellisense for $language to $dest ..."

$destDir = Split-Path -Parent $dest
if (!(Test-Path $destDir)) {
mkdir $destDir | Out-Null
}
Copy-Item $_.FullName $dest
}
}
}
66 changes: 36 additions & 30 deletions build/loc/LocalizeDlls.targets
Original file line number Diff line number Diff line change
Expand Up @@ -5,34 +5,6 @@
<LocRoot>$(MSBuildProjectDirectory)\loc</LocRoot>
</PropertyGroup>

<Target Name="CalculateNoTfmLocalizationItems">
<ItemGroup>
<NoTfmTranslate Include="$(MSBuildProjectDirectory)\loc\$(PackageId).satellite.nuspec" Condition="Exists('$(MSBuildProjectDirectory)\loc\$(PackageId).satellite.nuspec')">
<LocaleName>%(TranslationLanguage.LocaleName)</LocaleName>
<TranslationInput>$(LocRoot)\lcl\%(TranslationLanguage.Identity)\$(PackageId).nuspec.lcl</TranslationInput>
<OutputFile>$(OutputPath)%(TranslationLanguage.PackageLocaleName)\$(PackageId).%(TranslationLanguage.PackageLocaleName).nuspec</OutputFile>

<!-- REVIEW: These are based on what the MSBuild task specified -->
<SettingsFiles>$/default.lss|$/locxml_OfficeTools_nuspec.lss</SettingsFiles>
<SettingsFiles Condition="'%(TranslationLanguage.Identity)' == 'CHS' Or '%(TranslationLanguage.Identity)' == 'CHT'">%(TfmTranslate.SettingsFiles)|$\INI_For_CHx_PTx.lss</SettingsFiles>
<SettingsFiles Condition="'%(TranslationLanguage.Identity)' == 'PTB'">%(TfmTranslate.SettingsFiles)|$\MCP_For_SpecificCulture.lss</SettingsFiles>
</NoTfmTranslate>

<!-- Now convert all these to Items that reference lsbuild.proj for parallelization -->
<NoTfmTranslateProjects Include="$(MSBuildThisFileDirectory)/lsbuild.proj">
<AdditionalProperties>
MicroBuildPluginDirectory=$(MicroBuildPluginDirectory);
TranslationInput=%(NoTfmTranslate.TranslationInput);
OutputFile=%(NoTfmTranslate.OutputFile);
InputFile=%(NoTfmTranslate.FullPath);
Locale=%(NoTfmTranslate.LocaleName);
Parser=%(NoTfmTranslate.Parser);
SettingsFiles=%(NoTfmTranslate.SettingsFiles)
</AdditionalProperties>
</NoTfmTranslateProjects>
</ItemGroup>
</Target>

<Target Name="CalculateLocalizationItems">
<ItemGroup>
<TfmTranslate Include="$(TargetDir)$(TargetFileName)" Condition="Exists('$(LocRoot)\lcl\%(TranslationLanguage.Identity)\lib\$(TargetFramework)\$(TargetName).resources.dll.lcl')">
Expand All @@ -47,7 +19,7 @@
</TfmTranslate>

<!-- Now convert all these to Items that reference lsbuild.proj for parallelization -->
<TfmTranslateProjects Include="$(MSBuildThisFileDirectory)/lsbuild.proj">
<TfmTranslateProjects Include="$(MSBuildThisFileDirectory)lsbuild.proj">
<AdditionalProperties>
MicroBuildPluginDirectory=$(MicroBuildPluginDirectory);
TranslationInput=%(TfmTranslate.TranslationInput);
Expand All @@ -74,7 +46,41 @@
</Target>

<!-- Localize TFM-non-specific content -->
<Target Name="OuterLocalize" AfterTargets="Build" Condition="'$(TargetFramework)' == ''" DependsOnTargets="CalculateNoTfmLocalizationItems" Inputs="@(NoTfmTranslate);@(NoTfmTranslate->'%(TranslationInput)')" Outputs="@(NoTfmTranslate->'%(OutputFile)')">
<Target Name="OuterLocalize" AfterTargets="Build" Condition="'$(TargetFramework)' == ''">
<ItemGroup>
<NoTfmTranslate Include="$(MSBuildProjectDirectory)\loc\$(PackageId).satellite.nuspec" Condition="Exists('$(MSBuildProjectDirectory)\loc\$(PackageId).satellite.nuspec')">
<LocaleName>%(TranslationLanguage.LocaleName)</LocaleName>
<TranslationInput>$(LocRoot)\lcl\%(TranslationLanguage.Identity)\$(PackageId).nuspec.lcl</TranslationInput>
<OutputFile>$(OutputPath)%(TranslationLanguage.PackageLocaleName)\$(PackageId).%(TranslationLanguage.PackageLocaleName).nuspec</OutputFile>

<!-- REVIEW: These are based on what the MSBuild task specified -->
<SettingsFiles>$/default.lss|$/locxml_OfficeTools_nuspec.lss</SettingsFiles>
<SettingsFiles Condition="'%(TranslationLanguage.Identity)' == 'CHS' Or '%(TranslationLanguage.Identity)' == 'CHT'">%(TfmTranslate.SettingsFiles)|$\INI_For_CHx_PTx.lss</SettingsFiles>
<SettingsFiles Condition="'%(TranslationLanguage.Identity)' == 'PTB'">%(TfmTranslate.SettingsFiles)|$\MCP_For_SpecificCulture.lss</SettingsFiles>
</NoTfmTranslate>

<!-- Now convert all these to Items that reference lsbuild.proj for parallelization -->
<NoTfmTranslateProjects Include="$(MSBuildThisFileDirectory)lsbuild.proj">
<AdditionalProperties>
MicroBuildPluginDirectory=$(MicroBuildPluginDirectory);
TranslationInput=%(NoTfmTranslate.TranslationInput);
OutputFile=%(NoTfmTranslate.OutputFile);
InputFile=%(NoTfmTranslate.FullPath);
Locale=%(NoTfmTranslate.LocaleName);
Parser=%(NoTfmTranslate.Parser);
SettingsFiles=%(NoTfmTranslate.SettingsFiles)
</AdditionalProperties>
</NoTfmTranslateProjects>
</ItemGroup>

<MSBuild Projects="@(NoTfmTranslateProjects)" Targets="Generate" BuildInParallel="true" />

<!-- Copy Intellisense files -->
<ItemGroup>
<IntellisenseFile Include="$(LocRoot)\intellisense\%(TranslationLanguage.Identity)\$(PackageId).xml" Condition="Exists('$(LocRoot)\intellisense\%(TranslationLanguage.Identity)\$(PackageId).xml')">
<OutputFile>$(OutputPath)%(TranslationLanguage.PackageLocaleName)\$(PackageId).xml</OutputFile>
</IntellisenseFile>
</ItemGroup>
<Copy SourceFiles="@(IntellisenseFile)" DestinationFiles="@(IntellisenseFile->'%(OutputFile)')" />
</Target>
</Project>
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@
<file src="net40\$Locale$\Microsoft.AspNet.SignalR.Client.resources.dll" target="lib\net40\$Locale$" />
<file src="net45\$Locale$\Microsoft.AspNet.SignalR.Client.resources.dll" target="lib\net45\$Locale$" />
<file src="netstandard1.3\$Locale$\Microsoft.AspNet.SignalR.Client.resources.dll" target="lib\netstandard1.3\$Locale$" />
<!-- <file src="Intellisense\Microsoft.AspNet.SignalR.Client.xml" target="lib\net45\en-US" /> -->
<file src="$Locale$\Microsoft.AspNet.SignalR.Client.xml" target="lib\net40\$Locale$" />
<file src="$Locale$\Microsoft.AspNet.SignalR.Client.xml" target="lib\net45\$Locale$" />
<file src="$Locale$\Microsoft.AspNet.SignalR.Client.xml" target="lib\netstandard1.3\$Locale$" />
</files>
</package>
Loading

0 comments on commit 77176d0

Please sign in to comment.