Loop 径向菜单窗口管理:一个按键让 macOS 窗口各就各位
【免费下载链接】LoopWindow management made elegant.项目地址: https://gitcode.com/GitHub_Trending/lo/Loop
如果你受够了在 macOS 上手动拖动、缩放每一个窗口,开源应用Loop可能正合适。它是一个macOS 窗口管理工具:按住一个键,屏幕边缘弹出径向菜单,把光标甩向某个方向,当前窗口就精准吸附到左半屏、四分之一或任意自定义区域。免费,完全开源。
为什么 macOS 的窗口管理这么让人头疼
macOS 原生缺少好用的窗口布局能力:分屏对照资料、双屏来回搬窗口、六个窗口各占一角,全靠鼠标抓住边角拖,而且很难一次拖得刚刚好。当键盘流用户想快速整理桌面时,这种反复的鼠标拖动往往是最打断心流的环节。
周边工具倒是不缺,但多数收费或闭源,有些快捷键方案记起来也费劲。Loop 的切入点很明确:免费、开源,用一个按键把窗口摆好位置,并且在落位前让你先看到结果。
Loop 的工作原理:从触发键到屏幕吸附
🧲 整个交互的核心可以概括为触发键 + 径向菜单。应用常驻后台监听全局键盘和鼠标事件,逻辑集中在 LoopManager.swift:它追踪当前目标窗口的位置,接收输入,再交给窗口引擎执行布局。
按住键,径向菜单跟着光标走
默认触发键是右 Command。按住它,光标处浮现一个环形菜单,指向哪个方向,窗口就落到对应位置——半屏、四分屏,或者你自定义的任意矩形。体验类似手柄的方向键,只是操作对象变成了窗口布局。不喜欢鼠标的话,把任意按键绑定到触发键,纯键盘也能一键完成。菜单的形状、宽度、颜色全部可调,和壁纸不搭就换个主题。
先预览,再落位
窗口真正移动之前,Loop 会先在目标区域画一个"幽灵框",你确认方向无误它才执行吸附,避免手滑放错位置。幽灵框的内边距、圆角、边框粗细都可以调。
另一项能力叫Cycles:重复按同一个组合键(或连续点击),就能依次执行一串布局动作,比如"左半屏 → 右半屏 → 下三分之一"循环进行。
实际场景:三件值得做的事
分屏对照。问题:编辑器写代码,右侧要放着文档窗口,每次拖动都对不齐。用 Loop:按住触发键向右一甩,窗口精准落在右半屏,左右各占 50%,一秒完成。
桌面收纳。问题:开了十几个窗口,屏幕像被占满的停车场。Stash 功能把暂不用的窗口推到屏幕边缘,只露出几个像素;鼠标靠近边缘它滑出来,移开又收回,等于"窗口随身带、桌面保持空"。
脚本自动化。Loop 注册了loop://URL 协议,终端里敲一行命令就能操作当前窗口:
open "loop://direction/right" # 当前窗口移到右半屏 open "loop://action/maximize" # 最大化当前窗口配合脚本串起来,就是"一键工作台"。完整命令列表见 URLCommandHandler.swift 文件头的说明。
三步装好并体验
第一步,安装:有 Homebrew 直接brew install loop;也可以从发布页下载 zip 解压后把 Loop 拖入"应用程序"。系统要求macOS 13 及以上。
第二步,授权:首次运行按提示在系统设置里开启辅助功能权限,否则应用无法控制其他应用的窗口。
第三步,上手:按住默认触发键(右 Command),光标右甩,窗口落到右半屏——到这里你已经会用了。之后在设置的行为页改触发键、开关预览、挑主题。想用 Caps Lock 当触发键,需先在系统设置里把它重映射为其他键。想折腾源码,可克隆仓库后打开 Xcode 工程自行构建。
局限与注意
- 仅支持 macOS,且必须授予辅助功能权限,属于常驻后台应用。
- 不支持把一组布局存成工作区一键恢复,需要借助 Cycles 或脚本来近似实现。
- 不支持触控板手势;Stash 同一时刻只展开一个窗口。
- 采用 GPLv3 许可,可免费使用,修改再分发时需遵循相应义务。
Loop 的思路不复杂:把"摆窗口"这件事的门槛降到按一个键的程度。如果你的 Mac 上常年开着七八个窗口,它可以省掉每天几十次无意义的拖动。
【免费下载链接】LoopWindow management made elegant.项目地址: https://gitcode.com/GitHub_Trending/lo/Loop
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考