Apple Silicon MacBook

开盖用 Mac,
只留外接屏。

不用合盖,也不用把亮度调到 0。Clamless 会把内置屏从 macOS 显示布局里断开,Touch ID、摄像头、键盘和麦克风照常可用。

布局
内屏断开
面板
请求熄屏
操作
菜单栏

macOS 一直缺的桌面模式

不是调暗,也不是黑窗。

如果你想把 MacBook 打开放在桌面上,但又不想窗口和鼠标跑到内置屏,Clamless 做的就是这件事。

01

断开系统布局

内置屏会从 WindowServer 的活动桌面布局里移除,鼠标不会再滑进去。

02

关闭物理面板

断开布局后,再请求 Apple Silicon 的内置面板进入低功耗关闭状态。

03

尽量安全恢复

外接屏断开时,Clamless 会优先把内屏接回来,避免用户拔线后只剩黑屏。

安装

装好之后,就在菜单栏里用。

下载最新 DMG,把 Clamless 拖进 Applications 后启动即可。当前版本还没有 Apple notarize,第一次打开时可能需要右键点击应用并选择打开。

  1. 下载 最新 release
  2. 安装

    把 Clamless.app 拖进 Applications。

  3. 配置

    在设置里勾选哪些外接显示器可以触发自动开关。

工作原理

一个开关,其实动了两层系统。

SkyLight 布局控制

Clamless 使用私有 SkyLight 显示接口,把内置屏从当前桌面布局里断开或接回。

IOMobileFramebuffer 面板电源

布局断开之后,再通过 Apple Silicon framebuffer API 请求内置面板熄屏或唤醒。

拔线优先恢复

自动恢复结合轮询、显示器回调、IORegistry 事件和布局检查,外接屏消失时优先恢复内屏。

clamless-display status
clamless-display off --commit session
clamless-display on --commit session

内置 CLI

想自动化,也可以直接调 helper。

菜单栏应用和命令行 helper 走的是同一套显示控制逻辑。调试、自动化、查看状态时可以直接用它。

现实边界

它很实用,但不是 Apple 官方接口。

Clamless 依赖 macOS 私有 API。也正因为如此,它才能做到系统设置里没有的行为;但 Apple 未来也可能改掉这些接口。

不收集 telemetry。

不是黑色遮罩窗口。

不是只把亮度调低。

不声称内置面板会从 IORegistry 消失。