我如何使大写锁定工作像Esc在Mac OS X?


当前回答

在macOS Sierra中,将Caps Lock键映射为Esc键要容易得多。

打开系统首选项→键盘。 点击右下角的修改键按钮。 单击要重新映射的硬件键旁边的下拉框,然后选择Escape。 单击“确定”并关闭“系统首选项”。

https://9to5mac.com/2016/10/25/remap-escape-key-action-macbook-pro-macos-sierra-10-12-1-modifier-keys/

其他回答

Seil还不能在macOS Sierra上工作,所以我使用Karabiner Elements,从https://pqrs.org/latest/karabiner-elements-latest.dmg下载。

要么使用GUI,要么将以下内容放入~/.karabiner.d/configuration/karabiner.json:

{
  "profiles" : [
    {
      "name" : "Default profile",
      "selected" : true,
      "simple_modifications" : {
        "caps_lock" : "escape"
      }
    }
  ]
}

如果你不想安装第三方应用程序,并且你真的只关心iTerm中的vim,下面的方法是有效的:

如上所述,将CapsLock重新映射为Help。

短版本:使用plutil或类似编辑~/Library/Preferences/ByHost/. globalpreferences *。Plist,它应该看起来像这样:

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

重新启动!简单的登出和登录对我来说不起作用。

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

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

In order to actually swap the escape key with the caps lock key (not just map one to the other) using both PCKeyboardHack and KeyRemap4MacBook, you have to follow the instructions in this thread, mapping the caps lock key to a keycode not used by the keyboard but accounted for by KeyRemap4MacBook (eg. 110). Then, in PCKeyboardHack, select the appropriate option that maps that keycode to escape (in the case of 110, it's "Application Key to Escape"). Here's what your KeyRemap4MacBook preferences should look like (provided you've selected the "show enabled only" checkbox).

我最初试图发布这个信息作为cwd的优秀答案的编辑,但它被拒绝了。我鼓励任何想要走我描述的路线的人先读一下他/她的回答。

在macOS Sierra中,将Caps Lock键映射为Esc键要容易得多。

打开系统首选项→键盘。 点击右下角的修改键按钮。 单击要重新映射的硬件键旁边的下拉框,然后选择Escape。 单击“确定”并关闭“系统首选项”。

https://9to5mac.com/2016/10/25/remap-escape-key-action-macbook-pro-macos-sierra-10-12-1-modifier-keys/

我知道怎么做的唯一一件事是将大写锁定映射到控制,或选项,或命令。这可以通过系统首选项的键盘和鼠标面板来完成。点击左下角的“修改键”,你就可以将“大写锁定”、“控制”、“选项”和“命令”重新映射到其中任何一个。

@Craig: 这表明,Caps Lock可以用作普通的(即非切换键)键。在我的MacBook上,由于我将“Caps Lock”重新映射为“Control”,“Caps Lock”指示灯就再也亮不起来了。它就像Control键一样。