所有 Keyboard Maestro 动作都可以抽象为“Trigger + Actions”的结构,USB Device Key Trigger 也不例外。这类触发方式追踪 USB 设备(包括蓝牙键鼠和内置键盘)的动静,几乎只要有按键,就可以重新编程。
但有一个遗憾:USB Device Key Trigger 区分设备,假设你在家里和公司各有一套蓝牙键鼠,那么就要分别设置。又如,当你更换了一套新外设时,也要手动重设所有用到 USB Device Key Trigger 的动作,非常耗时。
不过,Keyboard Maestro 动作可以被编码为纯文本文档,如果我们带着编辑文本的材料思维去处理 Keyboard Maestro 动作,就不必苦等官方救援。
以更换设备的场景为例,本文逐步分析如何将旧设备(MX Master 2S 鼠标)更换为新设备(MX Master 3S 鼠标)。首先在 Keyboard Maestro 编辑器中搜索所有带有“Master 2S”的动作,一般来说,设备型号具有高度的区分度,搜索结果基本都是将 Master 2S 鼠标作为触发机关的动作。

随后,先取一个进行实验。导出待修改的动作,表面上得到了一个 Keyboard Maestro 专有的 .kmmacros
文件,事实上,它是一个纯文本文件,相当于记录了一系列需 Keyboard Maestro 执行的指令和配置信息。只需系统自带的文本编辑器即可打开 Keyboard Maestro 动作,随后可以搜索 Master 2S
并找到所有载有 USB Device Key Trigger 信息之处。

接下来,无需多虑,直接将 MX Master 2S
替换为新设备 MX Master 2S
。保存,结束。

现在,尝试用 Keyboard Maestro 打开修改后的文件,即可看到 Trigger 已更改的动作。

确信上述方法可行后,不妨放开手脚,一次性处理多个动作。Keyboard Maestro 可以将多个 Macro 导出为一个 kmmacros 文件,如果你习惯这样操作,那么用系统自带文本编辑器批量替换设备名称即可;我更习惯分开保存每个动作,以便追溯旧版、长期维护,因而需要借用 BBEdit 等更高级的文本编辑器,批量替换多个文件。

如此粗暴的方法,何以奏效?很简单,不懂代码的读者,可能会觉得“动作”或“Macro”很神秘,但它说到底只是一个配置文件,就像一份食谱,裸露给你的配方不是恐吓,而是邀请。
