之前升级Big Sur的时候,Karabiner就失效了,因为之前一直也只用到了一些简单的key map,所以直接用系统的keyboard modification了,不过键盘的F1到F12就没有用了,有的时候调整音量之类的还挺麻烦的,之前有看到过hidutil的介绍,但是一直没有去了解,今天尝试去看了一下,发现还挺容易用的
首先可以在这个网站
hidutil-generator.netlify.app 生成自己喜欢的key map,界面和Karabiner基本一致,要手动绑定F1到F12的键位(没有找到F3到F6对应的功能)
然后会在下面生成一个plist文件,按照网站的写法,copy到~/Library/LaunchAgents/com.local.KeyRemapping.plist就好了
然而我们通常不希望这套key map应用到所有的键盘,所以我们先要找到我们要map的键盘的标识
通过 About This Mac -> System Report -> Hardware -> Bluetooth (or USB) 找到自己键盘的ProductID,假如是0x123
然后打开刚刚生成的plist文件,找到ProgramArguments下的<string>property</string>在下面加入两行
<string>--matching</string>
<string>{"ProductID”:你的ProductID}</string>,就行啦,以后在每次登录用户的时候,就会自动key map了(经过实测,在开机后不会立刻map好,大概有半分钟的延迟)