You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何修改AutoHotKey脚本:仅切换小键盘绑定,保留Home/End绑定

修改后的AutoHotKey脚本

这里是满足你需求的修改版脚本,核心是用一个开关变量单独控制小键盘绑定的启用/禁用,同时让Home/End的绑定始终保持生效:

; 初始化小键盘绑定的开关变量,默认处于开启状态
NumPadToggle := true

; 仅当小键盘绑定开关开启时,触发以下小键盘热键
#If NumPadToggle
    ; 小键盘数字键映射为常规数字键(如果你的原脚本是输入Unicode字符,把对应逻辑放在这里即可)
    Numpad0::0
    Numpad1::1
    Numpad2::2
    Numpad3::3
    Numpad4::4
    Numpad5::5
    Numpad6::6
    Numpad7::7
    Numpad8::8
    Numpad9::9
#If ; 结束条件判断,恢复全局热键规则

; Home键始终绑定为Ctrl+左箭头(不受小键盘开关影响)
Home::Send ^Left
; End键始终绑定为Ctrl+右箭头(不受小键盘开关影响)
End::Send ^Right

; Apps键用于切换小键盘绑定的状态
AppsKey::
    NumPadToggle := !NumPadToggle ; 反转开关的启用/禁用状态
    ; 弹出临时提示告知当前状态
    ToolTip, 小键盘绑定已% (NumPadToggle ? "启用" : "禁用")
    SetTimer, ToolTip, -1500 ; 1.5秒后自动关闭提示框
return

关键修改说明

  • 开关变量控制逻辑:新增NumPadToggle变量作为小键盘绑定的专属开关,通过#If NumPadToggle限定小键盘热键的生效范围,只有当变量为true时,小键盘的映射才会触发。
  • 分离绑定规则:Home/End的绑定代码放在#If块之外,完全不受开关变量影响,始终保持功能生效。
  • Apps键功能替换:把原来暂停整个脚本的逻辑,改成切换小键盘绑定的状态,同时用ToolTip给出直观的状态反馈,避免你混淆当前绑定是否生效。

如果你的原脚本中小键盘绑定是用于输入特定Unicode字符的复杂逻辑,只需要把对应代码替换到#If NumPadToggle#If之间的区块里即可,核心控制逻辑不需要改动。

内容的提问来源于stack exchange,提问作者Alain D'Ettorre

火山引擎 最新活动