如何劫持Caps Lock键以进行剪切,复制,粘贴键盘操作

时间:2009-10-11 06:28:42

标签: windows keyboard hotkeys hook capslock

这是我想要完成的事情:

  1. 要复制,请按下并释放大写锁定 ONCE
  2. 要粘贴,请快速按下并释放 Caps Lock TWICE
  3. 要剪切,请按 Ctrl + 大写锁定
  4. 我想要这样做的原因通常是我发现自己向下看按正确的X / C / V键,因为它们彼此相邻(至少在QWERTY键盘上)。

    如何在标准键盘(使用Windows)上执行此操作,以便它适用于整个系统,并且对所有应用程序(包括Windows资源管理器)都是透明的?如果用标准键盘不可能,任何“可编程数字键盘”都可以这样做吗?

    在上面,“透明”我的意思是“应用程序永远不应该知道这个键击已被翻译。它只能获得常规 Ctrl + X / C / V 代码,因此它没有任何问题“。

    聚苯乙烯。不确定所有适合此问题的标签,因此可以随意添加更多标签。

    解决。更新: 感谢@Jonno_FTW向我介绍AutoHotKey。 我通过在My Documents文件夹中的默认AutoHotKey.ahk文件中添加以下AHK脚本来管理所有这三个要求:

    Ctrl & CapsLock::
      Send ^x
    Return      
    CapsLock::
    If (A_PriorHotKey = A_ThisHotKey and A_TimeSincePriorHotkey < 1000)
      Send ^v
    Else
      Send ^c
    Return
    

    这很简单!

    未完全解决。 UPDATE: 以上工作在记事本中,但不在资源管理器(例如复制文件)或MS Office(甚至文本复制不起作用)。因此,我需要更多地了解AutoHotKey或其他解决方案。当我找到解决方案时,会在这里发布解决方案 在此期间,如果有人可以让AutoHotKey为我需要的一切工作,请回复!

    全部解决了。 UPDATE: 我所要做的就是将大写“C”/ X / Z改为小写“c”/ x / z。所以发送^ C成为发送^ c。它现在适用于包含Windows资源管理器的所有程序!修正了上述代码以反映此更改。

3 个答案:

答案 0 :(得分:5)

我相信您正在寻找的计划是AutoHotkey

答案 1 :(得分:3)

您需要Global Keyboard Hook

答案 2 :(得分:2)

非常好!一直在找这样的东西。

我的脚本略有不同,使用移位或控制组合进行剪切/复制,然后CapsLock自己总是粘贴。

Ctrl & CapsLock::
  Send ^x
Return

Shift & CapsLock::
  Send ^c
Return

CapsLock::
  Send ^v
Return

如果您想保留保留Caps Lock功能的选项,我认为您可以始终重新映射,例如Alt-CapsLock为此。当我尝试它时,我无法正确切换它。