MAC shift切换中英文实现手段

使用Karabiner实现,这是一个键盘映射工具,主要是用来机械键盘的映射。我们用这个来吧shift映射到f18,这样就能实现和win一样的中英切换和大小写切换。

下载

下载地址:https://karabiner-elements.pqrs.org/
下载好之后有两个工具,Karabiner-Elements和Karabiner-EventViewer,主要设置在前者,后者可以查看按键输入具体是什么,可以用来检查设置是否成功。

提供权限(十分重要)

打开下面的权限

选择Device,打开Apple internal Keyboard

映射设置

软件自带的映射按键可能会不够用,我们这里使用自定义映射。(而且直接映射到Caps Lock会有点问题)
终端中运行:

nano ~/.config/karabiner/assets/complex_modifications/shift_switch.json

添加下面内容保存(主意f18是小写)

{
  "title": "Shift 切换中英文",
  "rules": [
    {
      "description": "单按 Left Shift 触发 F18",
      "manipulators": [
        {
          "type": "basic",
          "from": {
            "key_code": "left_shift",
            "modifiers": {
              "optional": ["any"]
            }
          },
          "to": [
            {
              "key_code": "left_shift"
            }
          ],
          "to_if_alone": [
            {
              "key_code": "f18"
            }
          ]
        }
      ]
    }
  ]
}

打开Add predefind rule就能看到刚才添加的规则,打开。

最后可以用Eventsviewer检查一下

viewer

关闭 Mac 原本的 Caps Lock 切换

为了防止系统机制互相打架,我们需要把之前的设置关掉:
进入 Mac 的 系统设置 -> 键盘 -> 文字输入 (编辑),取消勾选 “使用大写锁定键 (Caps Lock) 切换中英文输入法”

让 Mac 认识 F18

现在我们单按 Shift,Karabiner 已经会发出 F18 的信号了,但 Mac 还不认识它。我们需要手动绑定一下:
打开 Mac 的 系统设置 -> 键盘 -> 键盘快捷键 -> 输入法。
找到 “选择上一个输入法”(或者“选择输入法菜单中的下一个来源”)。
双击它后面现有的快捷键(比如 ^空格 或 ⌘空格),让它变成可编辑的输入状态。
单击一下shift,就可以设置上f18。

posted @ 2026-05-27 11:51  ROCOO  阅读(18)  评论(0)    收藏  举报