macOS 修改或禁用系统默认快捷键

macOS有大量系统全局快捷键。其中部分快捷键可以在 设置 -> 键盘 -> 键盘快捷键 中修改。但大部分系统快捷键无法在设置中修改,本文将介绍修改这些系统快捷键的方法。

系统快捷键的配置文件介绍

macOS的所有系统快捷键都保存在一个名为com.apple.symbolichotkeys.plist的配置文件中,这个文件位于~/Library/Preferences/目录下,修改该配置文件即可修改系统快捷键,建议在修改之前先备份。如果安装了 Xcode ,那么直接在终端运行以下命令即可打开该文件:

open ~/Library/Preferences/com.apple.symbolichotkeys.plist

打开该文件如图:
打开配置文件


该文件是一个类似于JSON的键值表,每个对象有Key, Type, Value三个属性,其中Key是快捷键的ID,每个快捷键都有一个唯一ID。例如 Command + Option + Space 这一快捷键的ID就是65。Value则是该快捷键的详细配置。找到Key为65的快捷键,查看其详细配置信息如下:
详细配置信息

其中:

  • enabled是一个布尔值,表示了该快捷键是否启用。将enabled的值设为YES即启用,设为NO即禁用。
  • parameters是一个数组,该数组定义了快捷键包含的按键。数组中有3个值:
    • Item 0: 快捷键中字符的 ASCII 码。例如 Command + Option + Space 中的字符是空格符,其ASCII码是32,所以Item 0的值就是32。如果某个字符不属于 ASCII 编码,那么Item 0的值则设为65535
    • Item 1: 快捷键中字符的键盘码(Key Code)。键盘上每一个按键都有一个键盘码,使用 Key Codes 软件可以方便地查看每个按键的键盘码。例如空格键的键盘码为49,于是Item 1的值就设为49
    • Item 2: 快捷键中所有修饰符的键盘码的总和。每个修饰符对应的键盘码如下:
      - Shift : 131072
      - Control : 262144
      - Option : 524288
      - Command : 1048576
      例如 Command + Option + Space 中包含 Command 和 Option 这两个修饰符,计算 1048576 + 524288 = 1572864 ,于是Item 1的值设为1572864

修改配置文件

通过以上规则,计算得到想要修改的快捷键的parameters数组。使用 Command + F 在文件中查找,找到想要修改的快捷键并修改其参数。保存后重启系统即可。