window 如何为微软商城安装的应用分配启动快捷键(支持 win 快捷键)。可以借助开源的 AutoHotkey 实现

本文介绍了如何为WindowsTerminal配置快捷键,包括创建快捷方式、获取实际路径、使用Windows自带配置以及借助AutoHotkey编写脚本来实现自定义快捷键,同时提到了避免Ctrl键额外触发的问题。
摘要由CSDN通过智能技术生成

需求:为 Windows Terminal 配置快捷键

写完这篇文章后,才发现 windows ternimal 本身支持 Win+` 快捷键😨。

开始之前,先找到对应程序

在开始解决需求之前,得先获取到程序的路径,可以选择实际路径或者为其创建一个快捷方式。

  • 方式一:创建快捷方式:

    1. 通过 win + r 运行 shell:AppsFolder 可以打开应用程序列表,微软商城安装的应用都可在里面找到
    2. 找到需要的程序,在这里我们要找的是 “ternimal” 程序
    3. 将其拖到桌面或其他任意位置即可创建快捷方式。(tips: 拖拽文件时按下 alt 键可以更方便地创建快捷链接)

    在这里插入图片描述

  • 方式二:获取实际路径

    1. 打开 pwsh (powershell)
    2. 运行 explorer $env:LOCALAPPDATA\Microsoft\WindowsApps 打开目录
    3. 该文件夹中的 wt.exe 就是 window ternimal 启动程序

获取实际路径的另外一种方法:

  1. 先打开 window ternimal
  2. 然后 ctrl + shift + esc 打开任务管理器
  3. 然后在属性栏中右键勾选上“命令行”
  4. 此时找到 window ternimal 进程,展开它,就可以看到其执行路径了
    在这里插入图片描述
    这种方式获取到的路径不够“灵活”,所以仅做了解即可。

解决方案一:借助 win 自带的配置快捷键

为要配置快捷键的程序创建一个快捷方式,然后打开其属性(alt + 双击),点击快捷方式,就可以看到“快捷键”选项。

文件属性中的快捷键

这种创建方式非常简单,但也有很多局限 —— 仅支持 “ctrl + alt + 自定义的按键”。如果你习惯 ubuntu 的快捷键(ctrl + alt + t),那么这种方式足矣。但对于我这种资深 OneNote + win 用户,我更希望能够设置 win 快捷键。

解决方案二:借助 AutoHotkey

AutoHotkey 支持通过脚本配置快捷键,这里我仅给出解决方案,不会深入介绍 AutoHotkey

步骤如下:

  1. 下载并安装 AutoHotkey v2.0 版本(推荐以管理员进行安装并且不要修改安装路径)
  2. 在你喜欢的位置上新建一个后缀名为 ahk 的文件,比如 shortcut-wt.ahk
  3. 打开该文件,写入下面内容。然后运行文件即可(将打开方式设置为 AutoHotkey)。
#Requires AutoHotkey v2.0

; ahk 文件中冒号 `;` 表示注释。
; windowTernimalPath := Format("{1}\Terminal.lnk", A_Desktop)
windowTernimalPath := Format("C:\Users\{1}\AppData\Local\Microsoft\WindowsApps\wt.exe", A_UserName)

#T::Run windowTernimalPath

上面代码中提供了两种路径,被注释掉的是“通过快捷方式启动”,未被注释掉的是更加通用的,无需你自行创建快捷方式,只需要你有安装 window ternimal 即可。

文件中的 #T 表示的就是 win + t 快捷键,# 字符代表 win 按键。其他一些常见的按键所对应的字符如下:

  • # 表示 win
  • ! 表示 alt
  • ^ 表示 ctrl
  • + 表示 shift

文件中的 A_DesktopA_UserName 是 ahk 提供的变量,更多变量可参考官方文档

如果你使用 vscode 进行开发,那么你可以安装 thqby.vscode-autohotkey2-lsp 插件,这样可以更方便的运行脚本。运行后状态栏中应该有对应的图标

图标

将脚本设置为开机自启

  1. win + r 运行 shell:startup 可以打开 startup(启动)文件夹
  2. 将刚刚创建的脚本在 startup 文件夹中添加一个快捷方式(或者直接复制整个文件也可以)

记得要将 .ahk 文件的打开方式设置为 AutoHotkey,这样开机时才能正确运行。

在这里插入图片描述

(附加)关于额外触发 ctrl 按键问题

如果配置了包含 winalt 的热键,可能会导致额外的模拟按键被触发(默认是 ctrl)。通过“步骤记录器”可以看到效果:

步骤记录器中记录到 ctrl-win-ctrl 按键

虽然这在日常使用中并不会感知到,但如果你不喜欢,可以在脚本中修改默认触发的虚拟按键:A_MenuMaskKey := "vkE8"

#Requires AutoHotkey v2.0

A_MenuMaskKey      := "vkE8"
windowTernimalPath := Format("C:\Users\{1}\AppData\Local\Microsoft\WindowsApps\wt.exe", A_UserName)

#T::Run windowTernimalPath

现在,额外的模拟按键将会是 vkE8 键码,因为这个键码暂时并未被微软使用。想要了解更多内容,请查阅官方文档对 A_MenuMaskKey 的介绍

不会触发 ctrl 按键

  • 20
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在 AutoHotkey 中,Window Spy 功能可以用来查看窗口的详细信息,包括窗口标题、类名、句柄、位置和大小等。在 Window Spy 窗口中,有两个参数可供选择:Screen 和 Window。 Screen 参数是指将光标移动到屏幕上的某个位置,然后 Window Spy 窗口会显示这个位置所在的窗口的信息。 Window 参数是指将光标移动到某个窗口上,然后 Window Spy 窗口会显示这个窗口的信息。 因此,区别就在于,Screen 参数是指在屏幕上的某个位置,而 Window 参数是指在某个窗口上。 ### 回答2: 在Autohotkey中,Window Spy工具用于检测和获取当前鼠标指针下窗口的相关信息。其中,Window Spy工具有两个参数:Screen和Window。这两个参数的区别如下: 1. Screen参数:在Window Spy工具中,选择Screen参数可以获取与当前鼠标指针所在位置相关的屏幕信息。当选择Screen参数后,会显示当前鼠标指针所在位置的屏幕坐标、屏幕区域、屏幕宽度和高度等信息。这些信息可用于判断鼠标指针所在位置的屏幕属性。 2. Window参数:在Window Spy工具中,选择Window参数可以获取当前鼠标指针所在窗口的相关信息。当选择Window参数后,会显示当前鼠标指针所在窗口的标题、类名、进程ID等信息。这些信息可用于判断鼠标指针所在位置的窗口属性。 综上所述,Screen参数主要用于获取鼠标指针位置的屏幕信息,而Window参数则用于获取鼠标指针所在窗口的信息。两者的作用不同,但都可以帮助我们获取当前鼠标指针下的相关信息,从而实现一些自动化脚本的编写。 ### 回答3: AutoHotkey中的Window Spy是一个工具,可以用来获取当前鼠标所在位置和鼠标所在窗口的相关信息。它包含两个参数,分别是screen和window。 Screen参数指的是整个屏幕,它用来获取鼠标所在位置的屏幕坐标。使用该参数可以获取鼠标在屏幕上的横坐标和纵坐标。例如,screenX和screenY分别代表了鼠标在屏幕上的X轴和Y轴坐标。 Window参数指的是鼠标所在的窗口,它用来获取鼠标所在窗口的相关信息。使用该参数可以获取窗口的标题、类名、句柄和位置等信息。例如,windowTitle代表了窗口的标题,windowClass代表了窗口的类名,windowHandle代表了窗口的句柄。 所以,screen和window参数的区别在于获取的信息不同。screen参数用来获取鼠标所在位置的屏幕坐标,而window参数用来获取鼠标所在窗口的相关信息。两者可以用来精确地定位和操作鼠标所在的位置和窗口。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值