跳到正文
发现
Defi:macOS 滚动平铺窗口管理器
桌面应用效率工具

Defi:macOS 滚动平铺窗口管理器

一款受 Niri 启发的 macOS 原生平铺窗口管理器,用横向滚动的列来排列窗口。

admin
发布于 2026-11-03
浏览
6
访问
0
下载
0
版本
v0.7.1
平台
macOS
该作品还没有经过官方审核。访问演示、下载或复制命令前,请自行确认来源可信。

详细介绍

项目简介

Defi 是一款 macOS 上的滚动式平铺窗口管理器,灵感来自 Niri。它把窗口排成横向长条上的列,打开新窗口长条就变长;当焦点移到屏幕外的窗口时,桌面会滚动把它带回视野。

它管理的是原生 macOS 窗口,点击窗口、在 Dock 中选中、Command-Tab 切换等习惯用法都照常可用。项目目前处于 Alpha 阶段,要求 Apple Silicon Mac 与 macOS 15.4 及以上系统。

主要功能

  • 自动平铺:打开窗口即自动进入布局,关闭窗口后剩余窗口自动重排。
  • 滚动列:窗口排列在横向长条上,可纵向堆叠,并可调整列宽。
  • 动态工作区:始终保留一个空工作区待用,也可为常驻任务保留命名工作区。
  • 应用规则与浮动窗口:可将应用送到指定命名工作区、保持浮动或设置初始列宽;任意窗口都能用快捷键切换为浮动。
  • 多显示器独立:每个显示器拥有各自的工作区与布局。
  • Overview 总览:浏览工作区、选择窗口,并在工作区之间拖动窗口,可开启窗口预览。
  • 窗口边框:高亮当前窗口,颜色、宽度及失焦边框均可配置。
  • 键盘控制与快捷键速查:快捷键可自定义,单独按住修饰键即可显示可用命令。
  • 鼠标重排:拖动平铺窗口即可调整顺序。
  • 实时配置:用 TOML 配置间距、动画、快捷键与规则,保存后自动重载。
  • CLI 与 SketchyBar 集成:可从脚本控制 Defi,并在状态栏展示工作区状态。

安装与使用

使用 Homebrew 安装:

brew install --cask qeude/tap/defi
open /Applications/Defi.app

不使用 Homebrew 时,可运行安装脚本:

curl -fsSL https://raw.githubusercontent.com/qeude/Defi/main/script/install.sh | sh

也可以从 latest release 下载 DMG 并拖入「应用程序」。由于应用未经过公证,首次启动会被 macOS 拦截:打开 Defi、关闭提示,再到「系统设置 › 隐私与安全性」点击「仍要打开」并确认,之后的更新不再需要这一步。此外还支持从源码构建。

首次启动时 Defi 会请求辅助功能权限,用于聚焦和排列窗口;授权后立即开始管理窗口,无需重启。随后会请求屏幕录制权限:由于很多应用会延迟应用窗口移动,逐帧移动真实窗口容易卡顿,Defi 改为截取每个窗口的画面,在覆盖层上对画面做动画,再在下面一次性移动真实窗口;Overview 卡片也使用同样的画面。这些画面只留在内存中,不写入磁盘、不外传。若不授权,窗口会直接移动,Overview 卡片不带预览图,可在 Defi 设置的「通用」中调整。

默认快捷键基于 Control + Option,例如:

操作 快捷键
聚焦某一列 Control + Option + ← / →
切换工作区 Control + Option + ↑ / ↓
在堆叠中聚焦窗口 Control + Option + J / K
左右移动列 Control + Option + Shift + ← / →
打开 Overview Control + Option + O

没有配置文件也能使用。如需覆盖间距、快捷键、命名工作区和应用规则,可编辑 ~/.config/defi/config.toml,保存后自动生效。应用自带 CLI,例如:

/Applications/Defi.app/Contents/MacOS/defi status
/Applications/Defi.app/Contents/MacOS/defi focus-column right

注意事项

  • 当前为 Alpha 版本,行为与配置在首个稳定版前可能变化。
  • Defi 管理的是自己的虚拟工作区,并非 macOS 原生 Spaces。
  • 部分应用会施加窗口尺寸限制或对辅助功能支持有限,遇到应用特定问题可向项目反馈。
  • 每天会向 GitHub 检查一次最新版本,不上传任何关于你或窗口的信息;可在设置中关闭,Homebrew 安装也可用 brew upgrade --cask defi 更新。
  • 若想让 Defi 随 macOS 启动,请在菜单栏开启 Launch at Login。
  • 完全卸载:Homebrew 安装可用 brew uninstall --cask --zap defi;手动安装可运行 /Applications/Defi.app/Contents/MacOS/defi uninstall --purge,会一并清除配置、状态、日志与隐私权限。

本作品整理自 GitHub 开源项目 qeude/Defi,原作者 @qeude,许可证 MIT。中文介绍由 AI 根据项目 README 整理,以原仓库为准。

更新记录

  1. v0.7.1当前版本

    支持 macOS 15.4;菜单栏菜单改为类似 macOS 工具菜单的样式,去掉图标并对菜单项分组排列。

评论