article_image

大约在2018年以前,macOS 上的窗口管理工具仍然百花齐放,但亦已渐现颓势。

在第一条叙事线上,各种既得利益者和企图分一杯羹的新秀像烤箱里的鱿鱼一样——疯狂内卷:老牌软件 Moom 仍然有一批传教士,但它似乎陷入各种畸形的窗口比例,让人怀疑是否有必要把笔记本电脑的屏幕搞成监控屏幕、铺满那么多窗口;AutoLayout 为代表的一批新软件则开始推广所谓智能窗口管理,宣称可以自动将当前窗口铺满屏幕,但是这种蒙得里安瓷砖画式的、将屏幕空间压榨到一个像素点都不剩的布局^1,恐怕只考虑了利用率而完全不管用户是否会患上斜眼症。换言之,这些工具已经高度特化、进入军备竞赛的最后阶段,只为不同而不同,不断通过推出新奇但基本没有用的功能来吸引用户,完全陷入了功能主义。

第二条叙事线人迹罕至。我从一开始就避开所有图形化的窗口管理工具,取道基于 Lua 脚本语言的 Hammerspoon^2——刚好在我为数不多的游戏经历中,接触过 Lua 语言。Hammerspoon 让我意识到,窗口管理,主要是调整窗口的大小位置,而那些华丽到令人发笑的演绎,也不出此道。Hammerspoon 固然太晦涩,但它留给我的“第一性原理”,则在 Keyboard Maestro 中继续发力。

2018年前后,我因故将所有窗口管理工作迁移到 Keyboard Maestro 上,由于其过于全能,当时我宣称,“窗口”(Window)只是窗口管理的中等颗粒度层级,往下还有标签页(Tab),往上则有虚拟桌面(Desktop),并各编写了一系列动作。时过境迁,事实证明标签页管理还是过于细碎,我又转向了 LaunchBar^3;但窗口和桌面两个层级,仍然可供 Keyboard Maestro 纵横。

基础的分屏操作

自 OS X(当时的称呼)引入左右分屏功能以降,分屏功能就涤清了异端魔法的身份,正式进入 macOS。但是,Apple 仅提供了最基础的左右分屏,并未在此道上继续深入,macOS 上的探索甚至不如 iPad。这就给窗口管理工具留下发展余地。^4

从最经典的各种分屏操作入手,最容易理解窗口管理是什么——前面也已经提过了——调整窗口的大小和位置。本质就是这两项参数。我提供的示例动作也非常传统,典型的用法就是左边阅读材料、右边做笔记。所涉 Macro 如下:

  • 通过快捷键 ⌃Control-⌥Option-⌘Command-<,将窗口分配到左边半屏;
  • 通过快捷键 ⌃Control-⌥Option-⌘Command->,将窗口分配到右边半屏;
  • 通过快捷键 ⌃Control-⌥Option-⌘Command-?,将窗口移到屏幕正中间;
  • 通过快捷键 ⌃Control-⌥Option-⌘Command-",恢复窗口到上一步的位置(未避免复杂化,仅记忆一次操作)。
Alt text
左右分屏以及恢复原始窗口
本文选自《Keyboard Maestro 进阶指引》第二章,限时试读已结束,欢迎选购完整作品。
Keyboard Maestro 进阶指引
Keyboard Maestro 进阶指引(增订版)

author_avatar

Lawyer, macOS/iOS Automation Amateur