summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Joannon <hello@pauljoannon.com>2023-01-25 18:12:26 +0100
committerPaul Joannon <hello@pauljoannon.com>2023-02-07 16:48:23 +0100
commitc70c82b0fbc9fcff73b4b46cb92daf83ab42f480 (patch)
treed6992cd519c44bdf43af69aa73ad8df394f06263
parent9bf2a0bcda3207c5fe1aa63555e22f8131fd009b (diff)
Try and match MSBuild and Godot UI languages
-rw-r--r--modules/mono/editor/GodotTools/GodotTools/Build/BuildSystem.cs22
1 files changed, 14 insertions, 8 deletions
diff --git a/modules/mono/editor/GodotTools/GodotTools/Build/BuildSystem.cs b/modules/mono/editor/GodotTools/GodotTools/Build/BuildSystem.cs
index d04fe7c2a4..d6549c1b70 100644
--- a/modules/mono/editor/GodotTools/GodotTools/Build/BuildSystem.cs
+++ b/modules/mono/editor/GodotTools/GodotTools/Build/BuildSystem.cs
@@ -23,9 +23,11 @@ namespace GodotTools.Build
if (dotnetPath == null)
throw new FileNotFoundException("Cannot find the dotnet executable.");
+ var editorSettings = GodotSharpEditor.Instance.GetEditorInterface().GetEditorSettings();
+
var startInfo = new ProcessStartInfo(dotnetPath);
- BuildArguments(buildInfo, startInfo.ArgumentList);
+ BuildArguments(buildInfo, startInfo.ArgumentList, editorSettings);
string launchMessage = startInfo.GetCommandLineDisplay(new StringBuilder("Running: ")).ToString();
stdOutHandler?.Invoke(launchMessage);
@@ -36,6 +38,8 @@ namespace GodotTools.Build
startInfo.RedirectStandardError = true;
startInfo.UseShellExecute = false;
startInfo.CreateNoWindow = true;
+ startInfo.EnvironmentVariables["DOTNET_CLI_UI_LANGUAGE"]
+ = ((string)editorSettings.GetSetting("interface/editor/editor_language")).Replace('_', '-');
// Needed when running from Developer Command Prompt for VS
RemovePlatformVariable(startInfo.EnvironmentVariables);
@@ -84,9 +88,11 @@ namespace GodotTools.Build
if (dotnetPath == null)
throw new FileNotFoundException("Cannot find the dotnet executable.");
+ var editorSettings = GodotSharpEditor.Instance.GetEditorInterface().GetEditorSettings();
+
var startInfo = new ProcessStartInfo(dotnetPath);
- BuildPublishArguments(buildInfo, startInfo.ArgumentList);
+ BuildPublishArguments(buildInfo, startInfo.ArgumentList, editorSettings);
string launchMessage = startInfo.GetCommandLineDisplay(new StringBuilder("Running: ")).ToString();
stdOutHandler?.Invoke(launchMessage);
@@ -96,6 +102,8 @@ namespace GodotTools.Build
startInfo.RedirectStandardOutput = true;
startInfo.RedirectStandardError = true;
startInfo.UseShellExecute = false;
+ startInfo.EnvironmentVariables["DOTNET_CLI_UI_LANGUAGE"]
+ = ((string)editorSettings.GetSetting("interface/editor/editor_language")).Replace('_', '-');
// Needed when running from Developer Command Prompt for VS
RemovePlatformVariable(startInfo.EnvironmentVariables);
@@ -125,10 +133,9 @@ namespace GodotTools.Build
}
}
- private static void BuildArguments(BuildInfo buildInfo, Collection<string> arguments)
+ private static void BuildArguments(BuildInfo buildInfo, Collection<string> arguments,
+ EditorSettings editorSettings)
{
- var editorSettings = GodotSharpEditor.Instance.GetEditorInterface().GetEditorSettings();
-
// `dotnet clean` / `dotnet build` commands
arguments.Add(buildInfo.OnlyClean ? "clean" : "build");
@@ -168,10 +175,9 @@ namespace GodotTools.Build
}
}
- private static void BuildPublishArguments(BuildInfo buildInfo, Collection<string> arguments)
+ private static void BuildPublishArguments(BuildInfo buildInfo, Collection<string> arguments,
+ EditorSettings editorSettings)
{
- var editorSettings = GodotSharpEditor.Instance.GetEditorInterface().GetEditorSettings();
-
arguments.Add("publish"); // `dotnet publish` command
// Solution