diff --git a/Plugins/Flow.Launcher.Plugin.Shell/Main.cs b/Plugins/Flow.Launcher.Plugin.Shell/Main.cs
index 921c6bc21..a192b8900 100644
--- a/Plugins/Flow.Launcher.Plugin.Shell/Main.cs
+++ b/Plugins/Flow.Launcher.Plugin.Shell/Main.cs
@@ -279,6 +279,33 @@ namespace Flow.Launcher.Plugin.Shell
break;
}
+ case Shell.TerminalPWSH:
+ {
+ info.filename = "wt.exe"
+ info.ArgumentList.Add("pwsh");
+ if (_settings.LeaveShellOpen)
+ {
+ info.ArgumentList.Add("-NoExit");
+ }
+ info.ArgumentList.Add("-Command");
+ info.ArgumentList.Add(command);
+ break;
+ }
+ case Shell.TerminalCMD:
+ {
+ info.filename = "wt.exe"
+ info.ArgumentList.Add("cmd");
+ if (_settings.LeaveShellOpen)
+ {
+ info.ArgumentList.Add("/k");
+ }
+ else
+ {
+ info.ArgumentList.Add("/c");
+ }
+ info.ArgumentList.Add(command);
+ break;
+ }
default:
throw new NotImplementedException();
}
diff --git a/Plugins/Flow.Launcher.Plugin.Shell/Settings.cs b/Plugins/Flow.Launcher.Plugin.Shell/Settings.cs
index 6f47d5d17..75cc56618 100644
--- a/Plugins/Flow.Launcher.Plugin.Shell/Settings.cs
+++ b/Plugins/Flow.Launcher.Plugin.Shell/Settings.cs
@@ -39,5 +39,7 @@ namespace Flow.Launcher.Plugin.Shell
Powershell = 1,
RunCommand = 2,
Pwsh = 3,
+ TerminalPWSH = 4,
+ TerminalCMD = 5,
}
}
diff --git a/Plugins/Flow.Launcher.Plugin.Shell/ShellSetting.xaml b/Plugins/Flow.Launcher.Plugin.Shell/ShellSetting.xaml
index 2f02ef723..22f4ff22d 100644
--- a/Plugins/Flow.Launcher.Plugin.Shell/ShellSetting.xaml
+++ b/Plugins/Flow.Launcher.Plugin.Shell/ShellSetting.xaml
@@ -43,12 +43,14 @@
Content="{DynamicResource flowlauncher_plugin_cmd_always_run_as_administrator}" />
CMD
PowerShell
Pwsh
+ Terminal (Pwsh)
+ Terminal (CMD)
RunCommand
diff --git a/Plugins/Flow.Launcher.Plugin.Shell/ShellSetting.xaml.cs b/Plugins/Flow.Launcher.Plugin.Shell/ShellSetting.xaml.cs
index 24365f2aa..e981f8b74 100644
--- a/Plugins/Flow.Launcher.Plugin.Shell/ShellSetting.xaml.cs
+++ b/Plugins/Flow.Launcher.Plugin.Shell/ShellSetting.xaml.cs
@@ -91,6 +91,8 @@ namespace Flow.Launcher.Plugin.Shell
Shell.Cmd => 0,
Shell.Powershell => 1,
Shell.Pwsh => 2,
+ Shell.TerminalPWSH = 3,
+ Shell.TerminalCMD = 4,
_ => ShellComboBox.Items.Count - 1
};
@@ -101,6 +103,8 @@ namespace Flow.Launcher.Plugin.Shell
0 => Shell.Cmd,
1 => Shell.Powershell,
2 => Shell.Pwsh,
+ 3 => Shell.TerminalPWSH,
+ 4 => Shell.TerminalCMD,
_ => Shell.RunCommand
};
LeaveShellOpen.IsEnabled = _settings.Shell != Shell.RunCommand;