要点速览
- ⌘Tab 切换的是应用,而非单个窗口。两个 Chrome 窗口只对应一个应用图标。
- macOS 提供同应用窗口切换快捷键,美式键盘上通常是 ⌘`。具体按键会随键盘变化,可用性也取决于应用和快捷键设置。
- Mission Control 和 App Exposé 用缩略图展示窗口。偶尔找窗口很方便,频繁在同几个窗口之间切换时则多了一步。
- Open Contexts 默认接管 ⌘Tab,按最近使用顺序列出每个窗口,并提供可保存的窗口分组。免费、开源,支持 macOS 13 Ventura 及以上,无需账户或云服务。
macOS 自带的窗口切换方式
先从 Mac 上已有的工具开始。下面四种方式均由 macOS 13 Ventura 及后续版本提供,无需另外下载应用。
⌘Tab 切换应用,不直接列出窗口
按下 ⌘Tab,macOS 会按最近使用顺序显示正在运行的应用,每个应用一个图标。按住 ⌘,继续按 Tab 向前切换,或按 Shift–Tab 向后切换,松开 ⌘ 确认。选中 Google Chrome 时,切换目标仍是整个应用;切换器不会把它的第二个窗口列为独立选项。
同应用窗口快捷键取决于键盘与应用
Apple 官方将 Command 加反引号列为切换当前应用窗口的系统快捷键(Mac 键盘快捷键)。在美式键盘上,通常是 ⌘`,反引号键位于 Tab 上方。不同键盘上这个键的字符可能不同,因此不能把字面上的 ⌘` 当作适用于所有 Mac 的统一操作。
它只能在当前应用内切换,而且是依次循环窗口,不会弹出可选择的窗口列表。如果按下后没有反应,请检查应用是否支持相应行为,以及系统分配的快捷键。在“系统设置 → 键盘 → 键盘快捷键”中查找“将焦点移到下一个窗口”,确认当前按键设置。
Mission Control 展示所有窗口与空间
Mission Control 会把打开的窗口与桌面空间展开到屏幕上。默认快捷键是 Control–上箭头,许多 Apple 键盘的 F3 键也有这个功能(在 Mission Control 中查看窗口与空间)。使用多个桌面时,可用 Control–左箭头或右箭头切换空间。它能同时展示不同应用的窗口,但需要先进入总览,再寻找目标。
App Exposé 展示当前应用的窗口
按下 Control–下箭头,macOS 会以缩略图展开当前应用的窗口(查看 Mac 上打开的窗口)。它适合回答“这个应用开了哪些窗口”,但当 Chrome 还不是当前应用时,它不会直接帮你找到另一个 Chrome 窗口。
为什么同一应用有很多窗口时,⌘Tab 不够用
当你同时使用五个应用、二十个窗口时,按应用切换就容易失去精度。单是 Chrome,就可能因为多个用户配置和桌面空间而打开许多窗口。在 ⌘Tab 中,它们仍然只有一个位置。
于是你开始使用替代操作:右键点击 Dock 中的应用图标,从窗口菜单选择;先用 ⌘Tab 切到应用,再使用可用的同应用窗口快捷键;或把窗口放到不同桌面,方便在缩略图中识别。这些操作都会增加步骤。缺少的是一个能用键盘直接选择、同时包含不同应用窗口的列表。
同一应用的多个窗口,系统快捷键能解决多少
如果你想切换 Chrome 的多个窗口,可以先让 Chrome 成为当前应用,再尝试系统中设置的同应用窗口快捷键。美式布局上通常是 ⌘`,也可以从 Chrome 的“窗口”菜单选择。使用多个 Chrome 用户配置时,需要管理的窗口数量也可能增加(使用多个 Chrome 用户配置)。
系统快捷键可用时,会依次切换窗口,不展示标题或预览列表。窗口少时通常够用;窗口多时,就很难预先知道下一个是哪一个。而且它的范围始终是当前应用。Open Contexts 默认用 ⌘` 打开当前应用的窗口标题列表,用 ⌘Tab 打开跨应用的窗口列表。这两个快捷键都可以在 Open Contexts 设置中修改。
五种 Mac 窗口切换方式对比
在小屏幕上,可以横向滚动表格查看完整对比。
| 方式 | 快捷键 | 显示内容 | 同应用多个窗口 | 费用 |
|---|---|---|---|---|
| 系统应用切换器 | ⌘Tab | 每个应用一个图标 | 不单独列出 | 系统内置 |
| 将焦点移到下一个窗口 | 通常为 ⌘`,请检查键盘设置 | 在支持的应用中循环窗口 | 部分满足 | 系统内置 |
| Mission Control | Control–↑ | 窗口与桌面空间的缩略图 | 以缩略图展示 | 系统内置 |
| App Exposé | Control–↓ | 当前应用的窗口缩略图 | 仅当前应用 | 系统内置 |
| Open Contexts | 默认 ⌘Tab / ⌘`,可自定义 | 按最近使用顺序排列的窗口标题列表 | 逐个列出窗口 | 免费,Apache 2.0 |
Open Contexts:每个窗口,一个 ⌘Tab
Open Contexts 是免费开源的 macOS 窗口切换器与窗口管理工具。默认情况下,它接管 ⌘Tab,改变列表中的内容:每个应用一个图标,变成每个窗口一个选项,并带有应用图标与窗口标题。两个 Chrome 窗口因此就是两个可选项。默认的 ⌘` 则打开当前应用的窗口标题列表。两个快捷键均可在设置中自定义。
它是一款原生 Swift 应用,支持 macOS 13 Ventura 及以上版本,下载一个 DMG,只需授予辅助功能权限。无需账户、云服务或订阅,窗口分组保存在 Mac 上 Application Support 目录中的一个 groups.json 文件里。
按最近使用顺序排列
窗口列表采用类似 Windows 的最近使用顺序。当前窗口在最上方,快速按下并松开 ⌘Tab 会切到第二行,也就是刚刚使用的上一个窗口。这种快速返回的操作,是很多人安装窗口切换器的原因。GitHub 项目采用 Apache 2.0 许可,你可以阅读源码、自行构建或 Fork。
保存窗口分组
常驻应用栏可以放在每个显示器的左侧、右侧或底部,在应用图标与 Dock 标记旁列出窗口标题。点击一行即可激活对应窗口,即使它已经最小化或隐藏。你也可以把窗口整理到“代码”“聊天”“资料”等分组,重启后仍然保留分组位置。可保存的自定义窗口分组,是付费应用 Contexts 未提供的功能。
两分钟完成设置
- 从 GitHub Releases 页面下载 DMG。
- 将 Open Contexts 拖到“应用程序”目录并打开。
- 在 macOS 提示时授予辅助功能权限。
- 按下默认快捷键 ⌘Tab,即可看到按最近使用顺序排列的窗口列表。
Open Contexts 目前的边界
Open Contexts 目前没有窗口搜索、缩略图网格或触控板手势,显示的是紧凑的标题列表,而非窗口预览。它需要辅助功能权限;未授权或应用关闭时,不会接管系统的 ⌘Tab。如果你依赖视觉缩略图,AltTab 是值得比较的选择。如果你需要按最近使用顺序排列的标题列表和可保存分组,Open Contexts 更贴近这种使用方式。
常见问题
如何只用键盘在 Mac 上切换窗口? 用 ⌘Tab 切换应用。同一应用内的窗口,请查看系统分配的“将焦点移到下一个窗口”快捷键,美式布局上通常是 ⌘`。Open Contexts 默认用 ⌘Tab 打开跨应用的窗口标题列表。
为什么 ⌘` 有时没有反应? 实际按键可能随键盘布局变化,快捷键也可能被修改,或应用不支持预期的窗口切换行为。请在“系统设置 → 键盘 → 键盘快捷键”中检查“将焦点移到下一个窗口”。Open Contexts 也允许单独设置自己的同应用窗口快捷键。
如何在 Mac 上切换 Chrome 窗口? 先切到 Chrome,再使用它的“窗口”菜单或系统中配置的同应用窗口快捷键。美式布局上通常是 ⌘`。窗口很多时,Open Contexts 可以直接列出标题供你选择。
Open Contexts 真的免费吗? 是的。项目采用 Apache License 2.0 开源,全部功能均可使用,没有试用限制、账户或订阅。需要 macOS 13 Ventura 或更高版本。
让每个窗口都可直接选择
系统自带的快捷键有各自的用途。当你按窗口而非应用组织工作时,Open Contexts 可以把窗口逐个列出来。
参考资料
- Apple — Mac 键盘快捷键
- Apple — 在 Mission Control 中查看窗口与空间
- Apple — 查看 Mac 上打开的窗口
- Google — 使用多个 Chrome 用户配置
- GitHub — Open Contexts,Apache 2.0