Karabiner Elements (之前是 Karabiner,更早的时候是 KeyRemap4MacBook)是功能强大且稳定的 macOS 键盘定制器。
特征:
-
简单修改:将普通按键映射到任意按键功能
-
复杂修改:通过复杂规则映射按键。例如,按键到修饰键、修饰键+按键到按键、单独按下时发送按键事件等
-
功能键:将功能键映射到任意键功能
-
设备:仅对指定键盘应用修改
-
配置文件:支持创建多个配置文件,用户可以在配置文件之间切换
-
修改器标志同步:在所有连接的键盘上同步修改器标志
-
安全键盘输入支持:在安全键盘输入环境中工作良好,例如密码提示、具有安全键盘输入的终端等
什么是新的
版本 15.0:
重大变更
-
macOS 11 和 macOS 12 不再支持,后台服务管理方式改为兼容 macOS 13 及以上版本,因此后台服务需要权限才能运行。
-
启用多点触控扩展的方法已经改变。
重要说明
-
现在,安装过程中会生成一个名为 karabiner_machine_identifier 的唯一随机 ID。此 ID 用于特定于机器的设置,可能包含在 karabiner.json 文件中。
新功能
-
增加了禁用复杂修改规则的功能。
-
增加了复制和重新排序配置文件的功能。
-
增加了从菜单重新启动 Karabiner-Elements 的功能。
-
增加了重置当前未连接的设备设置的功能。
改进
-
改进了“{device} 暂时被忽略,直到再次按下 {key_code}”消息,使其更易于理解。(感谢@adamnovak)
-
添加了“启用 Karabiner 通知窗口”配置,您可以通过关闭此设置来隐藏通知窗口。(感谢@jwodnicki)
-
支持 al_consumer_control_configuration 键,用作音乐键。(感谢@kambala-decapitator)
-
使用游戏手柄摇杆作为指点设备时的行为得到改善。
-
改进了 to_if_alone 行为,以便在发送事件时使用按下按键时的修饰标志。
-
向 set_variable 添加了 {"type": "unset"} 选项。
-
将 karabiner_observer 函数集成到 karabiner_grabber 中,并移除 karabiner_observer,减少后台进程数量,解决部分环境下进程间通信导致的性能问题。
-
引入了自定义 JSON 格式化程序,以更紧凑的格式保存 JSON。
-
保存配置文件的过程已经优化,以便未更改其默认值的设置不会包含在karabiner.json中。
-
内部变化:改进了 libkrbn 的接口,以尽量减少 Swift 中不安全指针的使用。
兼容性
macOS 11.0 或更高版本
Apple Silicon 或 Intel Core 处理器