触发角(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 高级设计思路,欢迎选购:付费内容链接