经历多次失败以后,终于在前几天从 macOS Mojave 10.14.5 成功升至 macOS Catalina 10.15,升级过程中版本号都直接从 Beta2 更新到了 Beta3,可以说是漫长的更新之旅。不过随之而来的问题是一些软件无法正常工作,其中最影响使用的便是 Karabiner-Elements。

问题

Karabiner-Elements 能正常运行,但所有的设定均不起作用,尝试退出应用,重启电脑等操作后,仍然没有效果。

无意间打开 Karabiner-EventViewer 的时候会提示需要在安全性与隐私中授权,然后发现新系统增加了输入监视,在里面增加 EventViewer 后便能正常获取输入键值。于是按图索骥把 Karabiner-Elements 手动加入其中,以为问题就此解决。不过遗憾的是,同样没有效果。

解决方法

最终在项目 Issues 中找到临时解决方法,首先增加两个文件到输入监视之中:

  • /Library/Application Support/org.pqrs/Karabiner-Elements/bin/karabiner_grabber
  • /Library/Application Support/org.pqrs/Karabiner-Elements/bin/karabiner_observer

要注意的是地址是/Library/Application Support/,而非/Users/name/Library/Application Support,否则的话是找不到 org.pqrs 这个目录的。

然后在终端中运行:sudo killall karabiner_observer karabiner_grabber 即可正常使用。

最后

这个方法虽然临时解决了 Karabiner-Elements 无法使用的问题,但一些配置仍然无法使用(如连按 ESC 切换为英文输入法),这个只能坐等官方更新了。

此外,使用过程中可能会再次出现相同的问题,这时重新在终端运行一次命令即可。

信息

版本

macOS:Mojave 10.15 Beta(19A487m)
Karabin-Elements:12.5.0

参考