升级 macOS 后,原有的翻页时钟屏保出现了一些兼容性问题,于是我用 SwiftUI 做了 Grace Clock。它致敬经典机械翻页时钟的视觉设计,同时提供主题、布局、动画和多显示器等定制能力。
免费软件,永不收费。 欢迎提交 Issue、分享使用体验,或一起改进它。
- 机械翻页效果:原生渲染的小时、分钟翻页动画,可选择快速、经典或舒缓速度
- 三款内置主题:经典黑、暖白、黑金,并可调节亮度、尺寸、圆角、卡片间距和阴影
- 灵活的时间显示:跟随系统、12 小时制或 24 小时制,可控制前导零
- 自适应布局:支持横向、纵向和自动排列,适配 4:3、16:9、16:10、21:9 与 32:9 屏幕
- 多显示器支持:可选择所有显示器、仅主显示器,或让每块屏幕独立适配
- 实时预览:修改参数时直接查看不同屏幕比例下的显示效果
- 本地优先:无需联网,不读取屏幕、摄像头、麦克风或个人文件,不包含分析与崩溃上传
- macOS 14 Sonoma 或更高版本
- Apple Silicon 或 Intel Mac
- 前往 Releases 下载最新版本。
- 将
GraceClock.app移入“应用程序”文件夹并打开。 - 在 Grace Clock 的“总览”页面点击“安装屏保”。
- 打开“系统设置 → 屏幕保护程序”,选择 Grace Clock。
修改外观后,点击“应用到屏幕保护程序”,即可同步最新设置并刷新屏保。
需要安装 Xcode,并具备支持 Swift 6 的 macOS SDK。
git clone https://github.com/leechenxiang/GraceClock.git
cd GraceClock
./script/build_and_run.sh脚本会构建 Debug 版本并启动应用。也可以直接使用 Xcode 打开 GraceClock.xcodeproj,选择 GraceClock Scheme 后运行。
# 仅构建
xcodebuild \
-project GraceClock.xcodeproj \
-scheme GraceClock \
-configuration Debug \
-derivedDataPath DerivedData \
CODE_SIGNING_ALLOWED=NO \
build
# 运行单元测试
xcodebuild \
-project GraceClock.xcodeproj \
-scheme GraceClock \
-destination 'platform=macOS' \
CODE_SIGNING_ALLOWED=NO \
test项目包含两个主要 Target:
GraceClock:SwiftUI 设置与预览应用GraceClockSaver:原生 macOS.saver屏幕保护程序
应用和屏保共用时钟设置与视觉参数,确保应用内预览和实际屏保效果保持一致。
部分 macOS 版本及多显示器组合对传统 .saver 屏保存在系统级兼容性问题,可能出现某一显示器黑屏、延迟启动或未加载。Grace Clock 会持续优化适配策略,但最终显示行为仍受 macOS 屏保宿主管理。
如果遇到问题,请在应用的“隐私与数据”页面复制诊断信息,并通过 Issues 反馈。
Grace Clock 完全离线运行。应用不会收集或上传个人数据,也不会访问屏幕内容、摄像头、麦克风或个人文件。
欢迎提交 Issue 和 Pull Request。提交代码前,请确保项目可以正常构建且测试通过;对于视觉或交互调整,建议同时附上截图或录屏。
本项目基于 MIT License 开源。
由 @风间影月 开发与维护。
如果 Grace Clock 对你有帮助,欢迎点亮一个 ⭐️。

