在Mac OS X中将Caps Lock用作Esc

时间:2020-03-06 14:40:00  来源:igfitidea点击:

在Mac OS X中,如何使"大写锁定"像" Esc"一样工作?

解决方案

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

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

这是可能的。

解决方案1

从TrueAffection.net上的小标题。

Download PCKeyboardHack and install it.
    Go to PCKeyboardHack in System Preferences.
    Enable ‘Change Caps Lock’ and set the keycode to 53.

解决方案2

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

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

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

然后,我们可以在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映射到这些键之一。

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

IIRC,它将Caps Lock映射到Esc。

我在寻找相同功能时遇到了这个旧线程。到目前为止,我发现该实用工具似乎很有效(在10.5.6上),并且无需付出太多努力:

http://www.pqrs.org/tekezo/macosx/keyremap4macbook/extra.html

尝试了其中几种解决方案后,我有一些注意事项:

DoubleCommand不允许我们交换esc和caps-lock。

PCKeyboardHack将允许我们将大写锁定映射为转义,但不具有将转义映射为大写锁的功能。最新版本将允许我们通过编辑两个键来执行完整的交换。

这可能不足或者不足以满足需求(我知道这是我的)。