核心要义是利用这些软件调用脚本( bash 或 Automator ,macOS 其实开放了很多方便的命令),比如说 Karabiner Elements ,就是用它 Complex modifications 里的 `shell_command`(需要修改它的 JSON 配置文件,我会放在最后说)
我自己用了好几年的配置主要是用 Karabiner Elements 做键盘映射,ControlPlane 做情景感知,然后触发的都是脚本指令( Hammerspoon 几年前试过一下,弃用了,感觉 CPU 占用太高了,而且除了窗口排列相关的命令都可以用 Karabiner Elements + 脚本代替,不知道现在更新得怎么样了)
举几个代表性的例子:
Karabiner Elements:
右⇧ + d: 打开下载文件夹
右⇧ + delete:熄屏
⌥ ⌘ + F2(亮度+):禁止休眠并弹出一个常驻通知(点击通知以取消)
F3(任务控制) 和 F4(launchpad) 分别被映射为蓝牙和 WI-FI 的开关了
ControlPlane:
系统休眠前(合盖后)关 WI-FI ,系统唤醒后(开盖后)开 WI-FI
( ControlPlane 的作用相当于 iOS 快捷指令里的自动化,场景非常广,甚至有诸如当连接到特定显示器、摄像头光线传感器之类。可惜作者不主动维护了,Big Sur 还能用,就是不知道未来哪个 macOS 大版本就用不了了)
Karabiner Elements 的高级设置可以参看
https://karabiner-elements.pqrs.org/docs/manual/configuration/configure-complex-modifications/ 。先下载它的一些现成的配置,然后再找到它的 JSON 配置文件自己改。脚本命令的话,把自己的需求上网搜一下基本都能找到。