![是否可以使一个键在单独使用时作为其自身功能,而在组合使用时作为另一个键功能?](https://linux22.com/image/1445141/%E6%98%AF%E5%90%A6%E5%8F%AF%E4%BB%A5%E4%BD%BF%E4%B8%80%E4%B8%AA%E9%94%AE%E5%9C%A8%E5%8D%95%E7%8B%AC%E4%BD%BF%E7%94%A8%E6%97%B6%E4%BD%9C%E4%B8%BA%E5%85%B6%E8%87%AA%E8%BA%AB%E5%8A%9F%E8%83%BD%EF%BC%8C%E8%80%8C%E5%9C%A8%E7%BB%84%E5%90%88%E4%BD%BF%E7%94%A8%E6%97%B6%E4%BD%9C%E4%B8%BA%E5%8F%A6%E4%B8%80%E4%B8%AA%E9%94%AE%E5%8A%9F%E8%83%BD%EF%BC%9F.png)
例如,我可以让Space+J充当Ctrl+ J,并在单独按下时Space充当 吗?Space
答案1
是的,你可以使用自动热键(一款出色的免费键盘映射工具)。
下载并安装 AutoHotkey 后,您可以创建一个包含以下内容的脚本文件:
#NoEnv SendMode Input
~Space & j::
Send ^j
Return
然后只需运行该脚本文件(右键单击,运行脚本),当您按下 Space+J 时,AutoHotkey 将发送 Ctrl+J,如果您单独按下 Space,它将顺利通过。
答案2
除了Nathan的回答之外,如果您不想在使用+组合键后插入(空格),您可以使用以下脚本:spaceJ
Space & j:: Send ^j
return
Space:: Send {Space}
return
这将阻止您的所有组合中的空间,而不仅仅是注册的组合。这还会给您的空间增加一点延迟,并可能迫使您学习在空格后延迟击键。或者,您可以使用 Nathan 的解决方案,但添加Backspace:
~Space & j:: Send {BS}^j
return
space但是您必须注意,在除了插入空格之外还能做更多事情的情况下不要使用这些组合(例如,空格可以接受自动完成)。