折腾WindowsTerminal
工位电脑重装系统,折腾一下WindowsTerminal。
内网环境安装起来也比较麻烦
好像win10不是最新版,直接用AppPackage安装是不能运行的?而且也不能设置成默认终端
WindowsTerminal github发布页面下载.zip文件解压之后可以使用
Powershell下载地址可以在微软官网找到msi安装包
开机后启动
打开任务计划程序(taskschd.msc), 创建基本任务,触发器登录时,操作启动wt
启动后执行
"文档"文件夹下(我这里是"D:\Documents")创建配置文件,
如D:\Documents\PowerShell\Microsoft.PowerShell_profile.ps1
启动pwsh后会自动执行这个脚本
(powershell5.x是另一个配置文件D:\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
, 如果想要公用可以拉一个软链接)
通过这个脚本可以创建一些cmdlet用来快捷操作
快捷键唤醒窗口
想达到的效果是如果没有wt正在运行,打开窗口,否则显示窗口
使用PowerToys来定义快捷键
键盘管理器 -> 重映射快捷键
操作"运行程序", 输入wt的路径,如果正在运行"显示窗口"
但PowerToys好像没有那么给力,每次按快捷键都会打开一个新窗口
新建脚本
# openwt.ps1
$script = @"
[DllImport("user32.dll")]
public static extern bool ShowWindow(IntPtr hWnd, int nCmdShow);
"@
$_T = Add-Type -MemberDefinition $script -Name TempUtils -PassThru
$SW_SHOWNORMAL = 1
$SW_MINIMIZE = 6
function local:Main()
{
$open = $true
Get-Process "WindowsTerminal" -ErrorAction SilentlyContinue | ForEach-Object {
$hWnd = $_.MainWindowHandle
$_T::ShowWindow($hWnd, $SW_MINIMIZE) | Out-Null
$_T::ShowWindow($hWnd, $SW_SHOWNORMAL) | Out-Null
$open = $false
}
if ($open)
{
wt
}
}
Main
快捷键修改为启动powershell执行这个脚本,如果正在运行"启动另一个",可见性"隐藏"