窗口管理类应用非常之多——知名度比较高的 Moom、实惠简约的 Magnet、主打模仿 Win 系统的 HyperDock,适合鼠标依赖者的 Window TinyMosaic 等等。然而我不禁要问,当我们讨论窗口管理的时候,我们在讨论什么?其实,讨论的重点应该放在窗口管理的使用习惯和场景上,其次才是 App 的选择。但大多数人一开始并不知道自己的习惯,所以本文中从个人使用习惯出发,给大家提供参考。我的 MacBook 接在一个大屏幕下,然后使用 USB 键盘 + 蓝牙鼠标,所以触摸板几乎用不到了。

鼠标

习惯触摸板的朋友可以略过这一节。

如果你常玩 FPS 游戏你可能会理解鼠标左中右键之外的功能键的重要性。我使用的罗技 M558 鼠标,有两处功能键可以极大地方便我进行多窗口/多桌面切换

M558 两处功能键设置

M558 的鼠标滚轮不仅是鼠标中键,还是一个可以左右拨动的「摇杆」,手感十分不错,在桌面间切换很方便。对于普通用户,鼠标可以完成一些键盘不便完成的操作,比如文件拖拽、文件选择等,这些操作大多会与多窗口/桌面切换操作联动。因此,将此类操作放在鼠标上对我而言是最简洁方便的。

当然,具备功能键的鼠标不只有 M558,你也可以选购自己喜欢的鼠标外形和品牌。

HyperDock —— 高效的窗口动态调整方案

HyperDock 可以实现以下两点功能:

  1. 窗口屏幕边缘自适应(类似 Win7 系统的屏幕边缘布局功能,没什么好说的)
  2. 鼠标拖动窗口 + 鼠标调整窗口大小

其中,2. 功能可以说是我购买 HyperDock 的主要原因,在进入 macOS 之前,我用过 Ubuntu 系统,它原生支持 Alt 键 + 鼠标点击窗口任意部位来拖动窗口。我原以为 macOS 是基于 UNIX 的系统之一,应该也具备这样的功能,然而最后还是需要 HyperDock 来弥补。

HyperDock 还允许你在窗口任意位置按住鼠标拖拽来调整窗口大小(只能从右下角调整,见图),降低了操作的精细度要求——你不必精确瞄准窗口边缘等指针变成双向箭头来调整了。

HyperDock

当然,HyperDock 功能不止这些,少数派中有详细的介绍文章,大家可以移步 HyperDock:我眼中最好用的 Mac 窗口管理

Moom/Magnet —— 高效的窗口静态布局方案

超七成情况下,我都在利用鼠标功能键 + HyperDock 来动态调整窗口。另外不足三成,我会通过键盘快捷键来实现高效的窗口静态布局。Moom(或 Magnet)可以帮助我完成这些不到三成的静态布局操作:

  1. 全屏浏览器(不是⌃⌘ + F那种独占式全屏)
  2. 浏览器 + 写作 App、PDF 阅读 + 笔记 App 等 —— 双 App 形式的 1/2 分屏
  3. 快速居中一个屏幕边缘的窗口

Magnet 可实现 HyperDock 的 1. 窗口屏幕边缘自适应功能,而且还支持快捷键操作。不过 Magnet 只能让窗口占上/下/左/右半屏、全屏、居中。对于普通用户而言,Magnet 完全可以顶替下文的 Moom,而且如果你不需要鼠标拖动和调整窗口,它甚至可以取代 HyperDock。

Magnet

Moom 则是高级版的 Magnet,它可以将屏幕分割成 a × b (0<a, b<26)区块,然后自定义快捷键让窗口填充到这些区块中。比如你可以自定义快捷键让窗口占 13/17屏——是不是角度刁钻?简言之,Moom 可以满足许多特殊需求。

Moom

Moom 中还能自定义多应用窗口的组合排列。比如在利用 Ulysses 写作时,你可能需要打开 Evernote 来参考之前拟好的大纲,同时在 Safari 中搜索必要信息。你可以把这三窗口固定的排列模式设置为 Moom 的快捷键,当三个应用同时打开时,按下快捷键就能自动排列——非常地 Professional,对我而言这些功能过剩了,不过 Moom 还是有相当多的目标用户。

下面是一个 Safari + Evernote 组合排列的例子,无论如何调整两个应用窗口的大小和位置,都能一键还原到预设大小和位置。

Moom 中的设置(左上图标起到预览作用)
Safari · Evernote 组合排列

Moom 详解请看少数派这篇文章:OS X 是了不起的操作系统:窗口控制应用 Moom 体验详解

Drag & Drop 方式调整窗口

Window Tidy 和 Mosaic 都属于「Drag & Drop + 浮动面板」形式:拖动窗口时屏幕中会出现面板,其中包含许多预设和自定义排列方案,将窗口移动到其中一种上就能调整大小和位置。下面是 Window Tidy 的操作演示
Window Tidy 操作演示

我个人不习惯这种操作:一方面,这种操作要求一定的操作精确度——在网格较多的情况下容易造成误操作,而且要把窗口从左侧屏幕移动到右侧的浮动面板中,效率不见得到提高;另一方面,浮动面板会挡住屏幕一部分,像 iOS 11 之前系统中的音量面板一样烦人。

尾巴

本来计划写窗口管理 App 合辑,洋洒写到一半,突然发现自己仅是在简单罗列 App 而已。反思后,觉得结合使用习惯,附带 App 介绍的形式更具有参考价值。便有此文。