一个最小可用的 macOS 原生状态栏剪贴板工具。
- 常驻在 macOS 菜单栏
- 监听剪贴板文本变化
- 保存历史记录到本地
UserDefaults - 点击菜单栏图标展示剪贴板面板
- 点击历史项后重新复制到剪贴板
- 连续复制相同文本时自动去重
- 全局快捷键
Command + Shift + V:打开或关闭剪贴板面板 Up / Down:切换历史项Enter:重新复制当前项并关闭面板Command + F或直接输入:进入搜索Delete:删除当前项Esc:关闭面板
Package.swift:Swift Package 配置Sources/main.swift:应用入口Sources/ClipboardMonitor.swift:剪贴板监听Sources/ClipboardHistoryStore.swift:历史记录持久化Sources/StatusBarController.swift:状态栏入口Sources/ClipboardPanelController.swift:剪贴板面板和键盘交互Sources/GlobalHotKeyManager.swift:全局快捷键注册
当前仓库是一个原生 AppKit 的 Swift Package。
- 使用完整 Xcode 打开这个目录
- 让 Xcode 生成并运行可执行目标
MiniPasteboard - 运行后会在 macOS 菜单栏看到一个剪贴板图标
如果本机只安装了 Command Line Tools,swift build 可能会因为缺少完整 macOS SDK 平台信息而失败。
如果你已经安装了完整 Xcode,但系统默认还没切过去,可以直接这样构建:
cd /Users/liuqihao/Downloads/mini-pasteboard
DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer ./scripts/build_app.sh生成结果:
dist/MiniPasteboard.appdist/MiniPasteboard-v0.1-macos.zip