Mac 使用 Caps Lock 键切换输入法失灵问题解决

Mac 上的 Caps Lock 键在系统启用了多种输入法的情况下,除了切换大小写之外还承担着切换输入法的功能。理想情况下,轻按 Caps Lock 键会切换输入法,长按则会切换大小写。但是有时候这个功能会失灵,表现为轻按也会切换大小写。需要频繁切换输入法时这个问题很影响输入效率。在 V2EX 论坛了解到这个问题同样困扰着许多人:使用 caps lock 切换输入法偶尔失灵

取消触发延迟

后来发现 macOS 默认给 Caps Lock 键设置了一个极低的触发延迟,因此快速点按 Caps Lock 键是不会被系统检测到的。这就导致了快速切换输入法时出现的失灵问题。可以通过下面的命令关闭触发延迟:

hidutil property --set '{"CapsLockDelayOverride":0}'

可以将命令写入 ~/.zshrc 实现登录自动设置。

参考:

使用 Globe 键

我曾经使用过先将 Caps Lock 键映射为 ︎︎︎ 键,再将 ︎︎︎ 键的功能设置为 更改输入法 的方式来避免 Caps Lock 键意外切换大小写的问题。不过这种方法也会引入切换输入法提示弹窗的新问题:How do I disable language switch popup? | Ask Different

  1. 打开设置 > 键盘 > 键盘快捷键 > 修饰键,将 大写锁定 (⇪) 键 的操作改为 ︎︎地球仪键

    image

    如果你使用蓝牙键盘,记得在最上方的 选择键盘 处选中你的蓝牙键盘然后再进行相同的更改。

  2. 接下来,在键盘设置中,将 按下︎︎键时 的操作改为 更改输入法

    image

  3. 最后,在文字输入(输入法)的编辑菜单中,关闭 使用大写锁定键切换 “ABC” 输入法 的选项。

    image

现在,使用 Caps Lock 键时就再也不会意外切换大小写了。

posted @ 2024-06-17 18:19  Undefined443  阅读(2839)  评论(0)    收藏  举报