Answers:
是的,使用Karabiner(以前称为KeyRemap4Macbook)。
首先,进入“键盘”偏好设置面板,单击“修饰键...”,然后将Caps Lock更改为Control。然后,进入Karabiner并搜索以下选项:
Control_L到Control_L
(仅在键入Control_L时发送Escape时为+)
检查一下,您就完成了。使用Karabiner,您可以做更多有趣的事情,例如将您的(现在已经是无用的)Escape键映射到具有更多键绑定的Hyper键。
Karabiner当前与MacOS Sierra不兼容。另一个对Sierra友好的解决方案是使用Keyboard Maestro(它不是免费的)。像其他人建议的那样,通过System Preferences
-> Keyboard
-> 将Caps-Lock键的行为更改为Control Modifier Keys
。
然后在Keyboard Maestro中,按如下所示设置宏:
USB Device Key Trigger
^
Text
->Type a keystroke
^
与大写锁定一起按下才能触发动作。这根本不是问题所需要的。
^
修饰符,该操作将永远不会触发。
要使用支持macOS 10.12及更高版本的Karabiner Elements进行操作,请打开~/.config/karabiner/karabiner.json
,然后将以下规则添加到rules
阵列中。
{
manipulators: [
{
description:
"Change caps_lock to control when used as modifier, escape when used alone",
from: {
key_code: "caps_lock",
modifiers: {
optional: ["any"]
}
},
to: [
{
key_code: "left_control"
}
],
to_if_alone: [
{
key_code: "escape",
modifiers: {
optional: ["any"]
}
}
],
type: "basic"
}
]
}
您也可以尝试将ControlEscape.spoon与Hammerspoon结合使用。
to_if_alone
节中的修饰符(关键字和全部),否则我无法使用它。但是感谢您的摘录。这是超级有用的。