在Mac OS X中将Caps Lock用作Esc

落花浮王杯 提交于 2020-02-26 09:15:09

如何在Mac OS X中使Caps Lock像Esc一样工作?


#1楼

我唯一知道的方法是将Caps Lock映射到Control,Option或Command。 这可以通过“系统偏好设置”的“键盘和鼠标”面板来完成。 单击左下角的“修改键”,您将能够将Caps Lock,Control,Option和Command重新映射到其中的任何一个。

@Craig:这表明可以将Caps Lock用作普通键(即非切换键)。 在MacBook上,由于我已重新将Caps Lock映射到Control,因此Caps Lock灯永远不会点亮。 它只是像Control键一样。


#2楼

如果您不想安装第三方应用程序,而实际上只在意iTerm中的vim,则可以使用以下方法:

重映射的CapsLock为描述帮助这里

短版:使用plutil或类似文件来编辑~/Library/Preferences/ByHost/.GlobalPreferences*.plist ,它应类似于以下内容:

<key>HIDKeyboardModifierMappingDst</key>
<integer>6</integer>
<key>HIDKeyboardModifierMappingSrc</key>
<integer>0</integer>

重新开始! 简单的注销和登录对我不起作用。

在iTerm中,为“帮助”添加一个新的键映射:发送对应于Escape的十六进制代码0x1b。

我知道这并不是所要的,但我认为许多人正在寻找这样的解决方案,实际上是这个更专业的变体。


#3楼

这是可能的。

解决方案1

一个arcticle上TrueAffection.net。

  • 下载并安装PCKeyboardHack。
  • 转到“系统偏好设置”中的PCKeyboardHack。
  • 启用“更改大写锁定”并将键码设置为53。

解决方案2

该解决方案不涉及修补键盘驱动程序,而是为您提供了Vim特定的解决方案。

OS X支持将Caps Lock键映射到一大堆键,但是您必须“手动”编辑.plist文件。 本文介绍了该过程。 作为该提示的补充,我建议您首先在“系统偏好设置”中将Caps-Lock设置为“无”,然后只需更改.plist文件中的一个值即可。 另外,您当然可以使用属性列表编辑器,而不用执行XML转换步骤。

诀窍是将Caps Lock键映射到Help键(代码6),大多数键盘上没有。 但是如果是这样,它将被当作插入键,您可能根本不会使用它,因为您要求重新映射Caps Lock以防止伸出手;)

然后,您可以将Help和Insert键映射到vim中的Esc 。

map  <Help> <Esc>
map! <Help> <Esc>
map  <Insert> <Esc>
map! <Insert> <Esc>

这将适用于gvim(Vim.app)。 我没有将它与终端中的vim一起使用,也没有使用MacVim对其进行测试。

因此,这是一个复杂的,半生半熟的解决方案,或者是安装了第三方黑客。 您的选择;)

编辑:刚刚注意到解决方案3,如果您使用MacVim ,则可以将Ctrl , Option和Command用作Esc 。 使用“系统偏好设置”可以轻松地将Caps Lock映射到这些键之一。


#4楼

您还可以使用DoubleCommand重新映射此键和其他键。

IIRC,它将Caps Lock映射到Esc。


#5楼

Seil尚未在macOS Sierra(10.12 beta)上可用。 因此,我一直在使用Keyboard Maestro进行以下设置:

归功于这个github评论: https : //github.com/tekezo/Seil/issues/68#issuecomment-230131664

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!