Repository navigation
Releases: tumingke0/LayoutKeeper
Release list
LayoutKeeper 0.6.3
LayoutKeeper 0.6.3
新功能(实验,默认关闭)
- 自动加减桌面(设置 → 通用 → 布局模式选「所有外接屏共用一套」后出现「实验功能」):
- 接上外接屏时,如果桌面不够,自动在调度中心按「+」补齐,然后按桌面顺序恢复窗口。
- 拔掉外接屏后,自动删掉 macOS 挪到内置屏上的空桌面。只删从外接屏挪过来、没有窗口、且不在使用中的桌面;内置屏原有的桌面不动。
- 不需要关闭 SIP,通过辅助功能操作调度中心完成(macOS 27 上调度中心界面由 WindowManager 提供),运行时调度中心会闪一下。
- 安全措施:每次最多 6 个、整体超时 20 秒、每一步都核对桌面数;有全屏 App 时不操作;任何一步不对就停下,改为提示你手动处理。
- 状态:已在一台 macOS 27 Mac 上验证加一个、删一个桌面;真实拔插显示器的完整流程尚未测试;Intel 版未在真机测试。遇到问题请关掉开关并反馈。
0.6.2 回顾
- 布局模式:所有外接屏共用一套:公司、家里只接一块外接屏时用同一套桌面和窗口,窗口按“第几个桌面”保存;桌面不够时提示补齐,补上后自动再恢复。
- 右上角提示都能关闭(× 按钮或点文字)。
- 去掉了接上屏幕时的选择弹窗,“先询问恢复”改为一条可关闭的提示,点「恢复布局」才恢复。
更新
0.6.1 及以上:菜单栏 → 检查更新… 即可,辅助功能权限保持有效。从 0.6.0 或更早版本升级需手动安装并重新授权一次。
下载哪个文件?
| 你的 Mac | 下载 |
|---|---|
| Apple 芯片(M1 / M2 / M3 / M4 / M5…) | LayoutKeeper-0.6.3-AppleSilicon.dmg |
| Intel 处理器 | LayoutKeeper-0.6.3-Intel.dmg |
.zip 和 appcast-*.xml 供应用内更新使用。本版本用自签名证书签名,未经 Apple 公证;第一次打开请右键 → 打开。
English
New (experimental, off by default)
- Automatic Space management in shared layout mode (Settings → General → Experimental): adds missing Spaces on the external display via Mission Control's + and then restores windows by Space ordinal; after unplugging, removes only the empty Spaces that macOS migrated from the external display (never ones with windows, the active one, or the built-in display's own Spaces).
- No SIP changes: it drives Mission Control through Accessibility (on macOS 27 the Mission Control UI is provided by WindowManager). Mission Control flashes briefly.
- Safeguards: at most 6 Spaces per run, 20 s timeout, Space count verified after every step, skipped while full-screen apps are active, and any failure stops and falls back to the manual notices.
- Status: add/remove of a single Space verified on one macOS 27 Mac; the real plug/unplug flow is untested; Intel build untested on real hardware.
Recap of 0.6.2: shared layout for all external monitors (by Space ordinal), closable notices, and the reconnect choice panel replaced by a single closable notice.
Updating: from 0.6.1 or later use Check for Updates… (检查更新…); Accessibility permission is kept. Self-signed, not notarized: right-click → Open on first launch.
LayoutKeeper 0.6.2
LayoutKeeper 0.6.2
新功能
- 布局模式:所有外接屏共用一套(设置 → 通用 → 布局模式)。公司、家里只接一块外接屏时,用同一套桌面和窗口:
- 窗口按“第几个桌面”和相对位置保存,不依赖系统的桌面编号,分辨率不同也能对上。你在家删掉多余的桌面,回公司照样按顺序恢复。
- 外接屏桌面不够时,多出来的窗口先放在最后一个桌面,右上角提示“少 N 个桌面”。在调度中心按「+」补上后,LayoutKeeper 会自动再恢复一次。
- 拔掉外接屏后,如果 macOS 把桌面挪到了内置屏,会提示你一共挪来了几个,可以自己在调度中心删掉(不会自动删除)。
- 接两块以上外接屏时自动按每块屏单独记。「显示器具有单独的空间」关闭时会提示。
- 第一次切换时,用当前这块屏(或最近保存的)布局作为共用布局;原来各屏的记录都保留,可以随时切回「每块屏单独记」。
- 右上角提示都能关了:每个提示右上角都有 × 按钮,点提示文字也能关闭。
改动
- 去掉了接上屏幕时的选择弹窗(「以后自动恢复?」「恢复这块屏幕保存的窗口布局?」)。现在“先询问恢复”模式下,接上屏幕时右上角只出一条可关闭的提示,点「恢复布局」才恢复,不点就什么都不动;“自动恢复”和“关闭恢复”不变。之前为某块屏记住的选择仍然有效。
更新
0.6.1 用户:菜单栏 → 检查更新… 即可,辅助功能权限保持有效。从 0.6.0 或更早版本升级,需要最后一次手动安装并重新授权(见 0.6.1 说明)。
下载哪个文件?
| 你的 Mac(苹果菜单 → 关于本机) | 下载 |
|---|---|
| Apple 芯片(M1 / M2 / M3 / M4 / M5…) | LayoutKeeper-0.6.2-AppleSilicon.dmg |
| Intel 处理器 | LayoutKeeper-0.6.2-Intel.dmg |
.zip 和 appcast-*.xml 是给应用内更新用的。Intel 版为交叉编译,尚未在真实 Intel Mac 上测试。本版本用自签名证书签名,未经 Apple 公证;第一次打开请右键 → 打开。
English
New
- Layout mode: shared by all external monitors (Settings → General). With exactly one external monitor attached, home and office use one shared set of Spaces and windows. Windows are stored by Space ordinal and relative position, so different resolutions and re-created Spaces map correctly. With too few Spaces, extra windows go to the last Space and a closable notice asks you to add N Spaces with Mission Control's +; LayoutKeeper restores again once they exist. After unplugging, Spaces that macOS moved to the built-in screen are reported (never deleted automatically). With two or more external monitors it falls back to per-monitor layouts; a hint appears if "Displays have separate Spaces" is off. Per-monitor records are kept untouched.
- Every top-right notice can be closed with its × button or by clicking its text.
Changed
- The reconnect choice panel is disabled. In Ask mode a closable notice with a single Restore layout button appears instead; nothing moves unless you click it. Auto and Off are unchanged.
Update: 0.6.1 users can use 检查更新… (Check for Updates); the Accessibility permission is kept. Self-signed, not notarized; Intel build untested on real hardware.
SHA-256
5ab79110f50666b0159a3208f8f3a95bc56400b098d5f63a7087b4551ec8bede LayoutKeeper-0.6.2-AppleSilicon.dmg
3c090cd8ce255fcb2798186025b3afa2d9b1a3414661641df4659074e174cf55 LayoutKeeper-0.6.2-Intel.dmg
3a54493616662faaca532702abf21a0503ca12130ee1deb1b48b27c3d1159555 LayoutKeeper-0.6.2-AppleSilicon.zip
de43646fa47807445ee5339072ab65e3a1d6d6e96742fc3f58ca2ec99b377675 LayoutKeeper-0.6.2-Intel.zip
LayoutKeeper 0.6.1
LayoutKeeper 0.6.1
新功能
- 应用内更新:菜单栏 → 检查更新…,或设置 → 通用 → 自动检查更新(默认开启,每天一次)。有新版本时显示说明,可一键安装。
- 更新后不用重新授权:从这个版本起,每个版本都用同一个签名证书签名,通过“检查更新”安装的新版本会保留辅助功能权限。
- 隐私:检查更新只连接 GitHub(获取版本信息和安装包),不发送任何个人数据;更新包必须带有正确的 EdDSA 签名才会安装。可在设置里关闭自动检查。
⚠️ 从 0.6.0 或更早版本升级:需要最后一次手动操作
旧版本使用的是临时(ad-hoc)签名,系统会把 0.6.1 当成新应用:
- 从菜单栏退出 LayoutKeeper,打开
.dmg,把 LayoutKeeper 拖到“应用程序”并选择替换。 - 第一次打开:右键 → 打开(或在“系统设置 → 隐私与安全性”点“仍要打开”)。
- 在“系统设置 → 隐私与安全性 → 辅助功能”里最后一次重新打开 LayoutKeeper 的开关;若显示已打开但不生效,先用“−”移除再重新添加。
之后的更新都可以直接用“检查更新…”完成,权限保持有效。
下载哪个文件?
点屏幕左上角 苹果菜单 → 关于本机,看“芯片”(或“处理器”)一行:
| 你的 Mac | 下载 |
|---|---|
| 芯片显示 Apple M1 / M2 / M3 / M4 / M5…(Apple 芯片) | LayoutKeeper-0.6.1-AppleSilicon.dmg |
| 处理器显示 Intel Core … | LayoutKeeper-0.6.1-Intel.dmg |
.zip 和 appcast-*.xml 是给应用内更新用的,不需要手动下载。
Intel 版说明: 交叉编译构建,已核对为 x86_64 架构、最低 macOS 14,但尚未在真实 Intel Mac 上测试。
首次打开(未经 Apple 公证)
本版本用自签名证书签名,未经 Apple 公证(not notarized)。第一次请右键 → 打开,或在“系统设置 → 隐私与安全性”点“仍要打开”,或在终端运行:xattr -dr com.apple.quarantine /Applications/LayoutKeeper.app
系统要求
macOS 14 或更新;跨桌面(Space)恢复需要 macOS 26 或更新(启动时自动检测)。
SHA-256
6d0747daf07e368a351dc9c13823de4e632cd86f4c19afc51a4834a7ecac5baa LayoutKeeper-0.6.1-AppleSilicon.dmg
8a0fe210b08ec9eadb021e5a665432a07fe180fc6b8291a167e2d49823235cca LayoutKeeper-0.6.1-Intel.dmg
f490d53b8aabac1e2180e08393addc2943a485bffa7a93ff47b44acc7b7d4faf LayoutKeeper-0.6.1-AppleSilicon.zip
b010ba2b7a631e7274016838d2d7d2797073f1f772223ea85d9894e89192fc32 LayoutKeeper-0.6.1-Intel.zip
English
- In-app updates (Sparkle 2): menu bar → 检查更新… (Check for Updates), or Settings → General → 自动检查更新 (automatic daily check, on by default).
- Updates keep the Accessibility permission: every release from now on is signed with the same certificate.
- Privacy: update checks contact GitHub only and send no personal data; updates must carry a valid EdDSA signature. Automatic checks can be turned off.
- Upgrading from 0.6.0 or earlier: install 0.6.1 manually one last time (drag to Applications, replace), right-click → Open, and re-grant Accessibility one last time (remove and re-add if needed). After that, use Check for Updates.
- Which file? Apple chip →
LayoutKeeper-0.6.1-AppleSilicon.dmg; Intel →LayoutKeeper-0.6.1-Intel.dmg(verified x86_64 / macOS 14+, not tested on real Intel hardware). The.zipandappcast-*.xmlassets are for the updater. - Not notarized: right-click → Open the first time, or
xattr -dr com.apple.quarantine /Applications/LayoutKeeper.app. - Requirements: macOS 14+; cross-Space restore needs macOS 26+. GPL-3.0-only; includes Sparkle (MIT).
LayoutKeeper 0.6.0
LayoutKeeper 0.6.0
新功能
- 全新主窗口(两栏):左侧列出所有保存过的屏幕(接着的标“当前”,没接上的变淡并写“未连接”),右键可重命名或删除(删除可撤销);右侧是所选屏幕的卡片、版式和历史版本。
- 版式:同一块屏幕可以存多套命名布局,例如“写代码”“开会”。点 另存为版式… 保存当前布局(或某个历史版本),之后点 应用 一键切换并恢复窗口,提示里可撤销。版式一直保留,不会被自动清理。
- 菜单栏「切换版式」:直接在菜单栏切换当前外接屏的版式,勾选的是正在使用的那个。
- 历史版本:每块屏幕自动保留最近 5 个旧版本,每行标明来源:「来自:写代码」或「手动保存」。可以预览、恢复(可撤销),也可以右键加名字,让它永久保留。
- 自动恢复用哪个布局? 这块屏幕最近一次保存或应用的布局。
- 「接上屏幕时」改名:关闭恢复 / 先询问恢复 / 自动恢复(菜单栏和设置 → 通用一致),行为不变。
- 移除设置里的“高级”页(旧的按窗口组手动恢复和演示工具)。按住 Option 时菜单里的设置项现在是“诊断…”。
升级后已有布局照常可用;旧版保留的上一版(.previous.json)会自动成为第一条历史版本。
下载哪个文件?
点屏幕左上角 苹果菜单 → 关于本机,看“芯片”(或“处理器”)一行:
| 你的 Mac | 下载 |
|---|---|
| 芯片显示 Apple M1 / M2 / M3 / M4 / M5…(Apple 芯片) | LayoutKeeper-0.6.0-AppleSilicon.dmg |
| 处理器显示 Intel Core … | LayoutKeeper-0.6.0-Intel.dmg |
Intel 版说明: 交叉编译构建,已核对为 x86_64 架构、最低 macOS 14,但尚未在真实 Intel Mac 上测试。
安装 / 升级
先从菜单栏退出正在运行的 LayoutKeeper,打开 .dmg,把 LayoutKeeper 拖到“应用程序”文件夹并选择替换。
首次打开(未经 Apple 公证)
本版本为 ad-hoc 签名,未经 Apple 公证(not notarized)。任选一种方式:
- 在“应用程序”中右键(或按住 Control 点按)LayoutKeeper → 打开,再点“打开”。
- 或先双击一次,然后前往 系统设置 → 隐私与安全性,点 “仍要打开”。
- 或在终端运行:
xattr -dr com.apple.quarantine /Applications/LayoutKeeper.app
辅助功能权限
需要“辅助功能”权限来读取和移动窗口(系统设置 → 隐私与安全性 → 辅助功能)。替换 ad-hoc 签名的旧版本后,系统可能要求重新打开该开关;若显示已打开但不生效,先用“−”移除 LayoutKeeper 再重新添加。
系统要求
macOS 14 或更新;跨桌面(Space)恢复需要 macOS 26 或更新(启动时自动检测)。
SHA-256
b60493ecfda75338b1e41fddc1a32567fa5a9eaff32319c8442bf5e389f1bab5 LayoutKeeper-0.6.0-AppleSilicon.dmg
f7fd25683a3be15fefa064e6d09faa3172735cf31bd7115ca7e04ce2b07d9f97 LayoutKeeper-0.6.0-Intel.dmg
English
- New two-column main window: saved monitors on the left (connected one marked, disconnected ones dimmed; rename/delete via right-click, delete is undoable); the selected monitor's card, named layouts and history on the right.
- Named layouts (版式): keep several named layouts per monitor (e.g. "coding", "meeting"); Save as layout… from the current layout or a history version, then Apply to switch and restore windows in one click (undoable). Never auto-deleted.
- Menu bar "Switch layout" submenu for the connected monitor.
- Version history: last 5 versions per monitor, each tagged with its origin (a named layout or a manual save); preview, restore (undoable), or label a version to keep it permanently.
- Automatic restore uses the monitor's most recently saved or applied layout.
- Renamed reconnect options: Off / Ask / Automatic restore (behaviour unchanged). The Settings "Advanced" tab has been removed.
- Which file? Apple menu → About This Mac. "Chip: Apple M…" →
LayoutKeeper-0.6.0-AppleSilicon.dmg; "Processor: Intel…" →LayoutKeeper-0.6.0-Intel.dmg(verified x86_64 / macOS 14+, not tested on real Intel hardware). - Install/upgrade: quit the running copy, open the DMG, drag to Applications (replace).
- First launch (not notarized): right-click → Open; or System Settings → Privacy & Security → "Open Anyway"; or
xattr -dr com.apple.quarantine /Applications/LayoutKeeper.app. - Accessibility: after replacing an ad-hoc-signed build you may need to re-enable (or remove and re-add) LayoutKeeper in Privacy & Security → Accessibility.
- Requirements: macOS 14+; cross-Space restore needs macOS 26+. GPL-3.0-only.
LayoutKeeper 0.5.2
⚠️ 此版本安装包已下线,请下载最新版本 / Assets removed; please download the latest release: https://github.com/tumingke0/LayoutKeeper/releases/latest
LayoutKeeper 0.5.2
修复:应用图标在访达 / 启动台中显示为空白。 应用现在同时带有资源目录图标(Assets.car,macOS 26 及以上优先使用)和传统 AppIcon.icns。功能与 0.5.1 相同。
如果升级后图标仍是空白
这是系统图标缓存仍保留着旧的无图标版本:
- 先推出之前挂载的 LayoutKeeper 磁盘映像(访达侧边栏点 ⏏),尤其是 0.5.0 的。
- 在终端运行以下命令(只清理当前用户的程序坞图标缓存,系统会自动重建):
rm -f "$(getconf DARWIN_USER_CACHE_DIR)com.apple.dock.iconcache" /System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -f /Applications/LayoutKeeper.app killall Dock Finder
下载哪个文件?
点屏幕左上角 苹果菜单 → 关于本机,看“芯片”(或“处理器”)一行:
| 你的 Mac | 下载 |
|---|---|
| 芯片显示 Apple M1 / M2 / M3 / M4 / M5…(Apple 芯片) | LayoutKeeper-0.5.2-AppleSilicon.dmg |
| 处理器显示 Intel Core … | LayoutKeeper-0.5.2-Intel.dmg |
Intel 版说明: 交叉编译构建,已核对为 x86_64 架构、最低 macOS 14,但尚未在真实 Intel Mac 上测试。
安装 / 升级
先从菜单栏退出正在运行的 LayoutKeeper,打开 .dmg,把 LayoutKeeper 拖到“应用程序”文件夹并选择替换。
首次打开(未经 Apple 公证)
本版本为 ad-hoc 签名,未经 Apple 公证(not notarized)。任选一种方式:
- 在“应用程序”中右键(或按住 Control 点按)LayoutKeeper → 打开,再点“打开”。
- 或先双击一次,然后前往 系统设置 → 隐私与安全性,点 “仍要打开”。
- 或在终端运行:
xattr -dr com.apple.quarantine /Applications/LayoutKeeper.app
辅助功能权限
需要“辅助功能”权限来读取和移动窗口(系统设置 → 隐私与安全性 → 辅助功能)。替换 ad-hoc 签名的旧版本后,系统可能要求重新打开该开关;若显示已打开但不生效,先用“−”移除 LayoutKeeper 再重新添加。
系统要求
macOS 14 或更新;跨桌面(Space)恢复需要 macOS 26 或更新(启动时自动检测)。
English
Fix: blank app icon in Finder/Launchpad. The app now ships an asset-catalog icon (Assets.car, preferred on macOS 26+) in addition to AppIcon.icns. Otherwise identical to 0.5.1.
- Still blank after upgrading? Eject any mounted older LayoutKeeper disk images (especially 0.5.0), then run:
rm -f "$(getconf DARWIN_USER_CACHE_DIR)com.apple.dock.iconcache",lsregister -f /Applications/LayoutKeeper.app(full path above),killall Dock Finder. - Which file? Apple menu → About This Mac. "Chip: Apple M…" →
LayoutKeeper-0.5.2-AppleSilicon.dmg; "Processor: Intel…" →LayoutKeeper-0.5.2-Intel.dmg(verified x86_64 / macOS 14+, not tested on real Intel hardware). - Install/upgrade: quit the running copy, open the DMG, drag to Applications (replace).
- First launch (not notarized): right-click → Open; or System Settings → Privacy & Security → "Open Anyway"; or
xattr -dr com.apple.quarantine /Applications/LayoutKeeper.app. - Accessibility: after replacing an ad-hoc-signed build you may need to re-enable (or remove and re-add) LayoutKeeper in Privacy & Security → Accessibility.
- Requirements: macOS 14+; cross-Space restore needs macOS 26+. GPL-3.0-only.
LayoutKeeper 0.5.1
⚠️ 此版本安装包已下线,请下载最新版本 / Assets removed; please download the latest release: https://github.com/tumingke0/LayoutKeeper/releases/latest
LayoutKeeper 0.5.1
新增应用图标。 之前在访达、启动台和 DMG 里显示为系统默认的空白图标;现在使用 LayoutKeeper 自己的图标(DMG 卷也带图标)。功能与 0.5.0 相同。
下载哪个文件?
点屏幕左上角 苹果菜单 → 关于本机,看“芯片”(或“处理器”)一行:
| 你的 Mac | 下载 |
|---|---|
| 芯片显示 Apple M1 / M2 / M3 / M4 / M5…(Apple 芯片) | LayoutKeeper-0.5.1-AppleSilicon.dmg |
| 处理器显示 Intel Core … | LayoutKeeper-0.5.1-Intel.dmg |
Intel 版说明: 交叉编译构建,已核对为 x86_64 架构、最低 macOS 14,但尚未在真实 Intel Mac 上测试。
安装 / 升级
打开 .dmg,把 LayoutKeeper 拖到“应用程序”文件夹(升级时选择替换)。如果旧版本正在运行,请先从菜单栏退出它。
首次打开(未经 Apple 公证)
本版本为 ad-hoc 签名,未经 Apple 公证(not notarized)。任选一种方式:
- 在“应用程序”中右键(或按住 Control 点按)LayoutKeeper → 打开,再点“打开”。
- 或先双击一次,然后前往 系统设置 → 隐私与安全性,点 “仍要打开”。
- 或在终端运行:
xattr -dr com.apple.quarantine /Applications/LayoutKeeper.app
辅助功能权限
需要“辅助功能”权限来读取和移动窗口(系统设置 → 隐私与安全性 → 辅助功能)。ad-hoc 签名的新版本替换旧版本后,系统可能要求重新打开一次该开关;若开关显示已打开但不生效,先用“−”移除 LayoutKeeper 再重新添加。
系统要求
- macOS 14 或更新;跨桌面(Space)恢复需要 macOS 26 或更新(启动时自动检测)。
English
Adds an app icon (previously the generic blank icon in Finder, Launchpad and the DMG; the DMG volume now has an icon too). Otherwise identical to 0.5.0.
- Which file? Apple menu → About This Mac. "Chip: Apple M…" →
LayoutKeeper-0.5.1-AppleSilicon.dmg; "Processor: Intel…" →LayoutKeeper-0.5.1-Intel.dmg(verified x86_64 / macOS 14+, not tested on real Intel hardware). - Install/upgrade: quit the running copy, open the DMG, drag LayoutKeeper to Applications (replace).
- First launch (not notarized): right-click → Open; or System Settings → Privacy & Security → "Open Anyway"; or
xattr -dr com.apple.quarantine /Applications/LayoutKeeper.app. - Accessibility: after replacing an ad-hoc-signed build you may need to re-enable (or remove and re-add) LayoutKeeper under Privacy & Security → Accessibility.
- Requirements: macOS 14+; cross-Space restore needs macOS 26+. GPL-3.0-only.
LayoutKeeper 0.5.0
⚠️ 此版本安装包已下线,请下载最新版本 / Assets removed; please download the latest release: https://github.com/tumingke0/LayoutKeeper/releases/latest
LayoutKeeper 0.5.0
LayoutKeeper 是一个 macOS 菜单栏小工具:为每块外接显示器保存窗口布局(位置、大小、所在桌面),重新接上屏幕时一键或自动恢复。只在本机工作,不联网,不读取窗口内容。
下载哪个文件?
先确认你的 Mac 用的是哪种芯片:点屏幕左上角 苹果菜单 → 关于本机,看“芯片”(或“处理器”)一行。
| 你的 Mac | 下载 |
|---|---|
| 芯片显示 Apple M1 / M2 / M3 / M4 / M5…(Apple 芯片) | LayoutKeeper-0.5.0-AppleSilicon.dmg |
| 处理器显示 Intel Core … | LayoutKeeper-0.5.0-Intel.dmg |
Intel 版说明: Intel 版本为交叉编译构建,已核对为 x86_64 架构、最低 macOS 14,但尚未在真实 Intel Mac 上测试。遇到问题欢迎提 issue。
安装
打开下载的 .dmg,把 LayoutKeeper 拖到“应用程序”(Applications)文件夹。
首次打开(未经 Apple 公证)
本版本为 ad-hoc 签名,未经 Apple 公证(not notarized),首次打开时 Gatekeeper 会拦截。任选一种方式:
- 在“应用程序”中右键(或按住 Control 点按)LayoutKeeper → 打开,在弹窗中再点“打开”。
- 或先双击一次,然后前往 系统设置 → 隐私与安全性,在页面下方点 “仍要打开”。
- 或在终端运行:
xattr -dr com.apple.quarantine /Applications/LayoutKeeper.app
授予“辅助功能”权限
LayoutKeeper 需要“辅助功能”权限来读取和移动窗口。首次启动的引导会带你打开 系统设置 → 隐私与安全性 → 辅助功能,打开 LayoutKeeper 的开关即可。
系统要求
- macOS 14 或更新。
- 跨桌面(Space)恢复需要 macOS 26 或更新,且系统存在所需的私有接口(启动时自动检测,缺失时自动关闭此功能)。
校验:shasum -a 256 LayoutKeeper-0.5.0-*.dmg
English
LayoutKeeper is a macOS menu-bar utility that saves window layouts (position, size, and desktop/Space) per external monitor and restores them when you reconnect — manually or automatically. Local only, no network, never reads window contents.
- Which file? Apple menu → About This Mac. "Chip: Apple M…" →
LayoutKeeper-0.5.0-AppleSilicon.dmg; "Processor: Intel…" →LayoutKeeper-0.5.0-Intel.dmg. The Intel build is verified as x86_64 / macOS 14+ but has not been tested on real Intel hardware. - Install: open the DMG and drag LayoutKeeper to Applications.
- First launch (not notarized): right-click the app → Open; or System Settings → Privacy & Security → "Open Anyway"; or run
xattr -dr com.apple.quarantine /Applications/LayoutKeeper.app. - Permission: grant Accessibility access (the onboarding opens the right Settings pane).
- Requirements: macOS 14+. Cross-Space restore requires macOS 26+ with the required private APIs (detected at launch).
- License: GPL-3.0-only.