macOS 窗口管理免费方案:Loop 用 1 个径向菜单搞定分屏、暂存和自定义
【免费下载链接】LoopWindow management made elegant.项目地址: https://gitcode.com/GitHub_Trending/lo/Loop
在 macOS 上排布多个窗口,拖边框、抓四角、改完再撤销,这套动作每天都在消耗你的耐心。Loop 是一款免费开源的 macOS 窗口管理工具:按住触发键弹出径向菜单,光标朝哪个方向动,窗口就落到哪个位置。它把分屏、跨屏切换、窗口暂存甚至外观定制都装进一个菜单里,支持 macOS 13 及以上版本。
它到底是什么:一套菜单覆盖四类操作
Loop 的核心逻辑只有一个"触发键",围绕它展开四种控制方式:
- 径向菜单:按住触发键,光标向某方向移动,当前窗口随即执行对应的缩放或移动,松手即完成
- 操作前预览:窗口真正移动前,屏幕会画出一个半透明轮廓,先看清效果再决定要不要
- 键盘快捷键:触发键 + 任意按键即可触发动作,内置操作覆盖最大化、居中、半屏、四分之一屏、水平/垂直三等分、跨屏移动、窗口放大缩小等类别(完整清单见 WindowDirection.swift)
- 循环(Cycles):同一组快捷键连按,或在径向菜单里连续左键,窗口会在一系列布局间依次切换,比如反复按"右移"让宽度比例一轮轮推进
另外还有个隐藏技能:Loop 注册了loop://的 URL 协议,可以从终端或 AppleScript 直接下发指令(实现文档写在 URLCommandHandler.swift 开头)。不想用菜单?可以整体禁用,只保留快捷键。
安装与授权,两分钟搞定
有 Homebrew 直接装:
brew install loop没有的话,去项目发布页下载最新的.zip包,解压后把 Loop 拖进"应用程序"文件夹即可。首次启动时系统会请求辅助功能权限,必须在"系统设置 → 隐私与安全性 → 辅助功能"里给 Loop 打开开关——它靠辅助功能接口来读取和控制窗口(对应源码 AccessibilityManager.swift)。不开这个权限,菜单弹得出来,窗口却一动不动。
三步完成首次配置
第一步:定触发键
触发键是全局开关,所有操作都以它为起点。默认是Function(Fn)键。想改用 Caps Lock 的话,先在"系统设置 → 键盘 → 键盘快捷键 → 修饰键"里把 Caps Lock 重映射为 Control,再回到 Loop 的设置面板("Settings" 区 → "Behavior" 标签)把触发键设为 Control。介面与键位细节在 BehaviorConfiguration.swift。触发键也支持多键组合。
第二步:给常用动作绑键
在 Keybinds 标签里给"触发键 + 某个键"的组合指定动作。建议只绑三个:左半屏、右半屏、最大化。其余的交给径向菜单,避免记太多键位。
第三步:外观与排除列表
在"Theming"标签下可调整径向菜单的宽度、形状、颜色,预览窗口的边距、圆角、边框颜色和粗细;图标主题提供 12 套可选(从 Classic 到 Synthwave Sunset,见 IconConfiguration.swift)。有全屏游戏或视频应用不想被窗口管理"插手"?在排除列表里加进去就行(ExcludedAppsConfiguration.swift)。
按任务上手:三种角色的用法
写代码的人:编辑器和浏览器左右对半分是最高频动作——径向菜单向左一推再向右一推,两下完成。多显示器接上后,用"Next Screen"动作把窗口整块挪到外接屏开会演示。想更省事,可以在终端里直接下发单行指令:open "loop://action/maximize"最大化、open "loop://screen/next"换屏、open "loop://list/actions"查看全部可用动作。
设计师:参考图太多时,把不常用的窗口用暂存(Stash)动作推到屏幕边缘,桌面立刻清爽;需要时鼠标悬停到屏幕边,窗口又滑回来。预览窗口的半透明轮廓在摆位前就能帮你确认构图,少试错几轮。
追求效率的人:把 Cycles 和自定义动作结合,例如把"右 1/3 → 右 2/3 → 右 3/3"排成一个循环,同一个键反复按就能在三种宽度间切换;配合 URL 协议还能把窗口布局写进 shell 脚本,一条命令还原整套工作台。
它比同类工具强在哪
下表数据整理自官方 README 的对比表(Rectangle 免费版、Rectangle Pro、Moom):
| 能力 | Loop | Rectangle | Rectangle Pro | Moom |
|---|---|---|---|---|
| 价格 | 免费 | 免费 | $9.99 | $15 |
| 开源 | ✅ | ✅ | ❌ | ❌ |
| 主题定制(菜单/预览样式) | ✅ | ❌ | ❌ | ❌ |
| 修饰键 + 鼠标控制窗口 | ✅ | ❌ | ✅ | ❌ |
| 窗口暂存(Stash) | ✅ | ❌ | ❌ | ✅ |
| 操作循环(Cycles) | ✅ | ✅ | ✅ | ✅ |
| 操作前预览 | ✅ | ✅ | ✅ | ✅ |
一句话概括差异:大多数窗口管理工具是"快捷键的封装",Loop 额外给了你鼠标方向输入、外观定制和暂存这三样东西,而且完全免费、GPLv3 开源,行为和权限都摆在源码里可查。
高频疑问
需要给哪些权限?只需在系统设置中授予辅助功能权限,用于读取和控制窗口。
支持哪些系统版本?macOS 13 及以后。
不用径向菜单行不行?可以。菜单可以完全禁用,只保留触发键 + 快捷键的工作方式。
某个 App 被误调整了怎么办?把该 App 加入排除列表,Loop 就不会再动它的窗口。
改错了布局能撤销吗?可以,操作列表里内置了 Undo 和 Initial Frame(恢复初始位置尺寸)两个动作。
装好 Loop、给好权限、把触发键定成你顺手的那一个——今天下班前,你会发现自己一次都没再手动拖过窗口边框。
【免费下载链接】LoopWindow management made elegant.项目地址: https://gitcode.com/GitHub_Trending/lo/Loop
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考