# 用 Keyboard Maestro 根据显示器切换触发角设置

> 本文公开全文。

原文：https://utgd.net/article/21009

触发角（Hot Corner）是 macOS 的特色功能，当你把鼠标箭头移到屏幕四角时，即可触发预先设定的功能——最常见者，例如往右上角刮一下就弹出通知中心，或者往右下角滑一下就锁定屏幕（假设使用者是个右撇子）。不少玩家的开机必备（Setup）都会提及触发角，仿佛不提出触发角就好像做菜不放葱姜蒜一样，总感觉缺了些东西。

然而，在多显示器环境中，统一的触发角设置反倒可能带来困扰，例如我在出差时和躲书房里的使用习惯就不同，在外面要考虑隐私以及客户信息，我和很多人一样，把电脑右下角设置为锁定屏幕的开关，当我起身去茶水间倒咖啡或者临时下楼拿快递时，顺手一滑就可以把电脑锁上；但是在自己的书房里，根本不需要担心外人看到电脑屏幕上的内容，此时如果因为肌肉记忆或者不小心撞到鼠标而把电脑锁上，反而不便。毕竟，除了最新款的 Apple 官方键盘以外，很难再找到一款带指纹识别的键盘，我还得敲上一段密码（很长）才能够解锁屏幕。这种感觉就好像你配了一把高端密码锁，在出门接过外卖一阵风吹过来把你所在的门外，虽然从新输一遍密码就能进门，但时不时来上这么一下，也非常烦人。

种种不如意的背后，意味着不同的工作环境需要专属的触发角设置（当然还有很多其他的习惯配置）。macOS 本身并没有提供途径，需要引入第三方软件。我依然选用 Keyboard Maestro，很快拼装出一个根据显示器切换触发角设置的动作。黑客文化的领导人之一，艾瑞克雷蒙德认为编程并不是辛苦的代码工作，而是改造环境，此言不虚。

原理不难理解：每次在屏幕布局（display layout）变化时，就检测一下当前屏幕的分辨率，据此区分目前连上了外接显示器，还是继续用内置屏幕，并进一步通过 Shell 命令调整触发角设置（可参阅《工具论ABC：个性设置的台本——系统偏好脚本化篇》）。我常用的外接显示器只有书房那一台，如果你在公司和家里有多块屏幕，也可以继续添加条件分支。

（请在电脑系统设置中检查当前的实际分辨率，因为 Mac 电脑的分辨率有软件在控制，而并非直接套用物理分辨率。）

调整触发角的命令有一整套，以关闭右下方的触发角为例，命令为：

```
defaults write com.apple.dock wvous-br-corner -int 0
killall Dock
```

第一行是调整触发角，第二行是重启相关进程，让改动生效。如果要重新启用右下角的锁屏功能，则把上面命令中的 0 改为 5。而 wvous\-br\-corner 中的 br 则用于指定触发角的位置，其他位置的代码是 tl（左上角）、tr（右上角）和 bl（左上角）。

```
defaults write com.apple.dock wvous-br-corner -int 5
killall Dock
```

以上两组命令足够自动开关触发角的锁屏功能，如果需要设置其他功能或配置修饰键，可参考这位老兄整理的配置信息。

触发角固然只是一个平凡的小例子，管中窥豹，所见却是场景切换的设计思路。场景、情景或模式等等貌似高级的说法，其实很容易分解成简单的组分，通过监测当前系统状态，然后执行对应操作，就可以设置高度自定义的情景模式——反观之下，iOS 上那种仿佛倾团队之力耗时数年才开发出来的 Focus 功能，就有些让人笑话了。

🛍 我撰写的付费栏目《Keyboard Maestro 进阶指引（增订版）》正在 UNTAG 售卖，详解 Keyboard Maestro Macro 高级设计思路，欢迎选购：付费内容链接

---

[前往标准阅读页](https://utgd.net/article/21009?audience=web)
