使用AutoHotKey重新映射NumLock

时间:2016-08-14 15:59:22

标签: autohotkey

目的:在电子表格中执行公式时,我希望能够在不将手从键盘上移开的情况下添加括号。

如何使用AutoHotKey重新映射NumLock以执行以下操作:

  1. 单按=更改NumLock状态(如果为ON,则为OFF。如果为OFF,则为ON。)
  2. 双击,然后是NumpadDiv =左括号
  3. 双击,然后是NumpadMult =右括号
  4. 双击,后面没有任何内容=没有任何变化(超时)
  5. 我的代码:

    ~NumLock::
    if (A_PriorHotkey <> "~NumLock" or A_TimeSincePriorHotkey > 400)
    
    {
        ; Too much time between presses, so this isn't a double-press.
        send {numlock}
        return
    }
    
    SetTimer, WatchKeys, 200
    
    return
    
    
        WatchKeys:
            if GetKeyState("NumpadDiv") 
                SendInput, {(}
            else if GetKeyState("NumpadMult") 
                SendInput, {)}
            else
                SetTimer, WatchKeys, off
                SetNumlockState, on
            return
    

1 个答案:

答案 0 :(得分:0)

我建议使用 Numlock 作为修饰键,就像 Shift ,所以你按住 Numlock 然后按 / 表示左括号。它可能会尝试一些尝试,但后来感觉很自然(我使用基于Numlock的媒体播放器控制几年)。

整个脚本将是:

NumLock & NumpadDiv::send (
NumLock & NumpadMult::send )