每块显示器顶部一条标签栏,列出这块屏上的所有窗口。点一下,就是它。
飞书、Chrome、Figma、终端、微信,同一条标签栏里。系统原生只能合并同一个 App 的窗口,TabStrip 不挑。
按住标签,拖到另一块显示器的标签栏上松手,窗口就过去了。同一条标签栏内拖动可以排顺序。
选中的窗口默认铺满整块屏,互不重叠。想让某个窗口保持小窗,双击它的标签,或者直接拖它的边框,它会记住。
把一个标签拖到另一个标签的中间,目标标签亮起蓝框,松手就合并成一个分屏标签:两个窗口各占一半,中间的分隔条可以拖,永远不重叠。悬停到分屏标签的某一半,那一半会亮起,按住拖出去就把它单独拆出来;双击切换上下,⊟ 整体拆分。
打开「终端」,粘贴运行。全程约 30 秒,只需授权一次。
curl -fsSL https://tabstrip.wwei.ai/install.sh | bash脚本会安装 Hammerspoon(TabStrip 的运行环境,约 10MB)并放入配置。已装过的直接跳过。
系统设置会自动打开,在列表里把 Hammerspoon 打开。这是 macOS 对所有窗口工具的统一要求。
授权后两秒内,每块屏幕顶部出现标签栏。以后开机自动启动,菜单栏有一个 ⧉ 图标可随时暂停。
卸载:curl -fsSL https://tabstrip.wwei.ai/uninstall.sh | bash
全部用 ⌃⌘ 前缀,不和任何 App 自己的快捷键冲突。鼠标在哪块屏,就作用于哪块屏。
一个开源十年的 macOS 自动化工具,把系统的窗口、屏幕、快捷键能力开放给脚本。TabStrip 是跑在它里面的一个约 300 行的脚本。装它相当于装了 TabStrip 的运行环境,你不需要碰它。
要读取和移动别的 App 的窗口,macOS 只允许通过「辅助功能」接口,Rectangle、Magnet、uBar 全都一样。TabStrip 代码开源,不联网、不收集任何数据。Hammerspoon 由 Apple 公证签名。
默认每块屏只做一件事:让选中的窗口铺满标签栏以下的区域。你自己拖过边框的窗口(比如想让访达小一点),它会记住这个尺寸,不再强制铺满;双击标签或 ⌃⌘↩ 随时恢复铺满。整块屏都不想管,按 ⌃⌘⇧T 关掉,标签栏只负责切换。
macOS 原生全屏会独占一个「空间」,TabStrip 在那里不显示,退出全屏就回来。建议用 TabStrip 的铺满代替原生全屏,切换快得多。
终端运行 curl -fsSL https://tabstrip.wwei.ai/uninstall.sh | bash,会移除配置并询问是否一并删除 Hammerspoon。
两个,左右或上下。这是刻意的限制:三个以上就回到了「找窗口」的老问题。要看三个,用两块屏。
macOS 13 及以上,Intel 与 Apple Silicon 都可以。多显示器、笔记本刘海屏都测试过。