如何根據是否快速按下或按住一秒或更長時間來重新映射鍵盤上的鍵?

如何根據是否快速按下或按住一秒或更長時間來重新映射鍵盤上的鍵?

我有一個新鍵盤(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

相關內容