如何根据快速按下或按住一秒或更长时间来重新映射键盘上的按键?

如何根据快速按下或按住一秒或更长时间来重新映射键盘上的按键?

我买了一个新键盘(Keychron K6),长话短说,我希望我的按键只有在按住一秒钟时Esc才会被映射。如果我像普通按键一样点击它,我需要将它改为反引号/波浪号键。Esc

所以:

  • Esc:结果~
  • 按住Esc一秒钟:结果为Esc

我查看了 PowerToys 上的键盘管理器工具,也摆弄了一下 AutoHotKey,它们两者似乎都非常强大,但似乎都无法考虑某个键是被按住还是短暂按下。

这可能吗?

干杯!

答案1

刚刚尝试了一下,这个 AutoHotKey 脚本应该可以工作

$esc::
 KeyWait,esc,T0.5 ;wait 0.5 seconds for release key
 If (ErrorLevel) ;more than 0.5 sec have passed
 {
  Send {esc}
  keyHeld = 1
  KeyWait,esc
 }
Return

$esc up::
 If (keyHeld = 0) ;If not held down
  Send ``
 Else
  keyHeld = 0
Return

shift & esc::
 Send ~
 keyHeld = 1
Return

相关内容