Loop:免费开源的macOS窗口管理工具,一个键摆好所有窗口
【免费下载链接】LoopWindow management made elegant.项目地址: https://gitcode.com/GitHub_Trending/lo/Loop
Loop 是一款免费、开源的 macOS 窗口管理工具,解决一个很具体的问题:手动拖窗口边缘调大小很麻烦,而传统快捷键工具的组合键又难记。比如你一边写文档一边查资料,只希望浏览器一步到位放到右半屏;桌面堆满窗口时,又希望临时窗口能被一键收走。Loop 让你用一个键加一次鼠标移动,就能完成这些操作。
一分钟看懂:它是什么、适合谁
- 免费、开源(GPLv3 许可,见 LICENSE),支持 macOS 13 及以后的版本
- 核心机制是「触发键 + 方向」:按住触发键,把鼠标移向某个方向,当前窗口就摆到对应区域;也可以换成纯键盘组合键操作
- 摆窗口之前会先画出半透明预览框,确认后再生效
- 还可以把暂时不用的窗口藏到屏幕边缘(Stash),需要时再取回
适合:平时开着一堆窗口、希望一步摆好布局的人;不想背快捷键、更愿意「鼠标指哪摆哪」的人;想给窗口管理做个性化外观的人。不太适合:想要自动平铺、完全接管窗口布局的平铺窗口管理器用户;系统低于 macOS 13 的用户;不想给应用授予辅助功能权限的用户。
第一次使用:从安装到第一次见效
📦 按顺序做下面 5 步,大概一两分钟:
- 安装:在终端运行
brew install loop;如果不用 Homebrew,也可以到官方 Release 页下载最新的 zip 包,解压后把 Loop 拖进「应用程序」 - 授权:首次启动时,按提示在系统设置中给 Loop 授予「辅助功能」权限(它需要操作其他应用的窗口)
- 设置触发键:打开 Loop 的「设置 → Behavior(行为)」标签页,选一个修饰键作为触发键。最常用的做法:先在系统设置 → 键盘 →「键盘快捷键…」→「修饰键」里,把 Caps Lock 键映射成 Control 键,再回到 Loop 选择
Right Control作为触发键(每台连接的键盘都要映射一次) - 操作:打开任意应用窗口,按住触发键,把鼠标移向屏幕右侧
- 松手:看到窗口落位后松开按键
做完这一步你会看到:窗口已经贴到了屏幕右半屏。按住触发键时,光标周围会出现一个圆形径向菜单,上、下、左、右和四个斜角各对应一种布局(上半屏、左下四分之一等),光标停在哪个方向,松手时窗口就摆到哪个位置,整个过程带平滑动画。
功能拆解
径向菜单:按住一个键,方向选择器就出现在光标上
径向菜单是 Loop 的核心:按住触发键后,圆形菜单围绕光标展开,你用鼠标指方向,窗口就跟随移动和缩放。操作就三步:按住触发键 → 把光标移向目标方向(如右下)→ 松手。在「Radial Menu」设置标签页里,菜单的宽度、形状、颜色都可以改,菜单本身和鼠标方向感应也可以分别关闭。这对不想记任何组合键、习惯用触控板指方向的人最有用。

预览:调整窗口之前,先看到摆放结果
预览框会在窗口真正移动之前,用半透明轮廓标出它即将落到的位置。操作时轮廓会跟随你的选择实时更新;在「Preview」设置标签页里可以调轮廓的内边距、圆角、边框颜色和边框粗细。处理重要文档、或屏幕上有大量窗口时最有用——先确认再提交,省掉「摆错—撤销—重摆」的来回。

循环:一个组合键按多次,连续切换多套布局
循环(Cycles)把一串布局动作绑在同一个键位上:每按一次,就执行序列里的下一步。在「Keybinds(快捷键)」标签页里创建 Cycle 动作,选好顺序,比如「右半屏 → 右三分之二 → 右三分之一」,之后反复按这个组合键(或在菜单里反复点左键)即可循环切换。适合窗口在几个固定尺寸之间反复横跳的场景,一对快捷键顶用了三对。

按任务组合使用
任务一:写文档边查资料
推荐布局:编辑器占左半屏,浏览器占右半屏,资料多时编辑器扩到左三分之二。
- 切到编辑器窗口,按住触发键,鼠标移向左,松手——编辑器进入左半屏
- 切到浏览器,鼠标移向右,松手——浏览器进入右半屏
- 需要细看资料时,按你设好的循环键,在左半屏、左三分之二、左三分之一之间切换
任务二:盯住主屏边回消息
推荐布局:主窗口占左三分之二,聊天工具占右三分之一,临时窗口用 Stash 收走。
- 主窗口用径向菜单的「左三分之二」方向摆放(或用对应快捷键)
- 聊天工具摆到右三分之一,方便随时扫一眼
- 给「隐藏到屏幕边缘」(Stash)绑一个快捷键;不需要的窗口按一下就被收走,之后把鼠标悬停到那个屏幕边缘附近,或再按一次键,窗口就会取回
任务三:多显示器间挪窗口
- 用「Next Screen / Left Screen」等屏幕切换快捷键(或在 Keybinds 里自建)把窗口整体移到目标屏幕
- 移动过程中留意预览框,确认窗口落在副屏的哪个区域
- 到位后配合方向动作,把它摆进副屏的半屏或三分之一区域
进阶玩法与个性化
换一套主题外观
Loop 内置 12 套应用图标主题(Holo、Rose Pine、Synthwave Sunset、Black Hole 等),在「Icon」标签页里点选即换。径向菜单的宽度、形状、配色,以及预览框的边距、圆角、描边都能在对应标签页里逐项调。喜欢复古像素风的可以试试这套:

自定义快捷键
「Keybinds」标签页可以把任意按键与触发键组合,绑定到具体动作上,可用的动作覆盖:半屏(上下左右)、四分之屏、水平/垂直三分之一、居中、最大化、全屏、放大/缩小、四向移动、屏幕间切换、撤销,等等。还可以创建 Custom 动作,自定义窗口的位置和大小百分比再绑到键位上,做出官方预设之外的专属布局。
排除不需要管理的应用
打开「Excluded Apps」标签页,点「Add」把应用加入列表即可。加入列表后的应用窗口不会被 Loop 操作——适合把全屏游戏、演示模式下的设计软件排除在外,避免触发键误伤。
用 URL Scheme 自动化布局
Loop 支持通过命令行和 AppleScript 控制,格式是loop://命令/参数:
open "loop://direction/right" # 把窗口移到右半屏 open "loop://action/maximize" # 最大化窗口 open "loop://screen/next" # 移到下一个屏幕 open "loop://list/all" # 列出全部可用命令可以把多条命令写进 shell 脚本,一键还原你的常用布局;跑错命令时它也会返回可用命令列表,方便排查。
常见问题
Caps Lock 键会和系统功能冲突吗?建议按官方推荐处理:在系统设置「键盘快捷键」→「修饰键」里把 Caps Lock 映射成 Control,再在 Loop 的 Behavior 标签页选Right Control作触发键,这样就不占系统的 Caps Lock 行为。
触发键按了没反应怎么办?先确认 Loop 已获得辅助功能权限;再检查 Behavior 标签页里触发键的设定;如果你刚改过系统的修饰键映射,退出并重新打开 Loop 通常就能恢复。
总觉得径向菜单碍事,能关吗?可以。在 Radial Menu 标签页里,菜单显示和鼠标方向感应是独立开关,你可以只保留方向感应、不显示菜单,也可以整个关掉,只用键盘组合键模式。
多显示器下布局会乱吗?方向类动作以窗口当前所在的屏幕为基准计算,配合「Next Screen」「Left Screen」等动作可以把窗口搬到指定屏幕,再在目标屏内摆放。
免费吗?什么系统能用?完全免费,GPLv3 开源,macOS 13 及以上系统可用。
接下来可以做的三件事
- 完成触发键配置,把「按键 + 移动鼠标」的半屏操作练到形成肌肉记忆
- 在 Keybinds 标签页给最常用的窗口建一条「半屏 → 三分之二 → 三分之一」的循环,替换掉三对零散快捷键
- 在终端里试一条
open "loop://direction/left",感受用脚本还原布局的感觉
从触发键这一个键开始,逐步加上你自己的循环和自定义布局,桌面就会慢慢贴合你的工作节奏。想进一步了解项目细节,可以读一下 CONTRIBUTING.md 和相关源码。
【免费下载链接】LoopWindow management made elegant.项目地址: https://gitcode.com/GitHub_Trending/lo/Loop
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考