- 主窗口:完整的剪贴板历史管理界面
- 快捷窗口:轻量级快速访问面板(Alt+V 唤起)
- 系统托盘:后台运行,随时可用
- 🎯 实时监控 - 自动捕获所有剪贴板内容变化
- 📋 多格式支持 - 文本、图片、HTML、文件路径等
- 🔗 链接识别 - 自动识别 http://、https://、www. 开头的链接
- 🔍 智能搜索 - 快速查找历史记录
- 🏷️ 自动分类 - 智能识别链接、图片、文本、文件
- 📅 按日期筛选 - 今天/昨天/前天/自定义日期范围/全部时间查看
- 📊 历史记录 - 完整的历史管理页面,支持分页浏览
- 🔍 多维度筛选 - 时间范围、内容类型、分类、关键字搜索
- 🗑️ 灵活删除 - 单条删除、批量删除、按类型删除、清空全部
- 📈 统计信息 - 实时显示各类型记录数量统计
- 🔗 链接预览 - 点击链接直接在浏览器中打开
- 🖼️ 图片预览 - 点击图片放大查看原图
- ⚡ 全局快捷键 - 默认 Alt+V,可自定义
- 🖱️ 一键粘贴 - 点击历史记录直接插入到当前输入框
- 🖼️ 图片缩略图 - 直观预览图片内容
- 💾 持久化存储 - SQLite 本地数据库
- 🎨 现代化 UI - 基于 Element Plus 的美观界面
- 🪟 跟随光标 - 快捷窗口智能定位,支持多显示器
- 🔒 不抢焦点 - 快捷窗口不影响当前输入框
- 🎯 自动粘贴 - 模拟 Ctrl+V,无缝插入内容
- 🌐 后台运行 - 系统托盘模式,不占用任务栏
- Node.js 16+
- Rust 1.70+
- pnpm (推荐) 或 npm
# 安装前端依赖
pnpm install
# 安装 Tauri CLI(如果未安装)
pnpm add -D @tauri-apps/cli# 启动开发服务器
pnpm tauri dev# 构建生产版本
pnpm tauri build构建完成后,可执行文件位于 src-tauri/target/release/ 目录。
- 启动应用 - 应用将在后台运行,系统托盘显示图标
- 查看历史 - 点击托盘图标打开主窗口
- 快速访问 - 按 Alt+V 在光标位置弹出快捷窗口
- 插入内容 - 点击任意历史记录,自动粘贴到当前输入框
- Alt+V - 唤起快捷窗口(可自定义)
- Ctrl+V - 自动触发(由应用模拟)
- 打开主窗口
- 点击 "设置快捷键" 按钮
- 输入新快捷键(格式:Alt+V, Ctrl+Shift+C 等)
- 重启应用生效
支持的修饰键:Ctrl, Alt, Shift, Win
支持的按键:A-Z 字母键
- 全部时间 - 显示所有历史记录
- 今天 - 显示今日的剪贴板记录
- 昨天 - 显示昨天的记录
- 前天 - 显示前天的记录
- 自定义范围 - 选择任意日期范围查看
- 🔗 链接 - http://、https://、www. 开头的网址(点击可直接打开)
- 📝 文本 - 普通文本内容
- 🖼️ 图片 - 剪贴板中的图片(点击可放大预览)
- 📁 文件 - 文件路径
-
筛选功能
- 时间范围:全部/今天/昨天/前天/自定义范围
- 分类筛选:链接/文本/图片/文件(支持多选)
- 关键字搜索:实时搜索内容
-
批量操作
- 批量删除:选中多条记录一次性删除
- 按类型删除:删除所有链接/文本/图片/文件
- 清空全部:删除所有历史记录
-
统计信息
- 实时显示各类型的记录数量
- 链接类型以绿色标签突出显示
- 左键点击 - 显示主窗口
- 右键菜单
- 显示主窗口
- 退出应用
- 框架: Vue 3 + TypeScript
- UI 库: Element Plus
- 构建工具: Vite
- 代码高亮: highlight.js
- 框架: Tauri 2.0
- 语言: Rust
- 数据库: SQLite (sqlx)
- 剪贴板: arboard
- 图片处理: image
- 全局快捷键监听 (tauri-plugin-global-shortcut)
- Windows API 集成 (光标位置、窗口定位、键盘模拟)
- 多显示器支持
- 异步运行时 (tokio)
paste_app/
├── src/ # 前端源码
│ ├── services/ # API 服务
│ ├── styles/ # 样式文件
│ ├── App.vue # 主窗口组件
│ ├── PopupWindow.vue # 快捷窗口组件
│ ├── main.ts # 主窗口入口
│ ├── popup.ts # 快捷窗口入口
│ └── types.ts # TypeScript 类型定义
├── src-tauri/ # Tauri 后端
│ ├── src/
│ │ ├── main.rs # 主入口和窗口管理
│ │ ├── clipboard.rs # 剪贴板监控
│ │ ├── db.rs # 数据库操作
│ │ ├── models.rs # 数据模型
│ │ └── classify.rs # 内容分类
│ ├── capabilities/ # 权限配置
│ └── icons/ # 应用图标
├── index.html # 主窗口 HTML
├── popup.html # 快捷窗口 HTML
└── package.json
欢迎贡献代码、报告问题或提出新功能建议!
- Fork 本仓库
- 创建特性分支 (
git checkout -b feature/AmazingFeature) - 提交更改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 提交 Pull Request
- 前端:遵循 Vue 3 Composition API 规范
- 后端:遵循 Rust 标准代码风格
- 提交信息:使用清晰的提交信息描述更改
如果您遇到任何问题或有功能建议,请在 Issues 页面提交。
提交 Issue 时请包含:
- 操作系统版本
- 应用版本
- 详细的问题描述
- 复现步骤
- 相关截图(如有)
- ✨ 新增历史管理页面
- 🔗 新增链接类型自动识别(支持 http://、https://、www.)
- 🔗 链接点击直接在浏览器中打开
- 📊 新增按分类统计功能
- 🗑️ 新增按类型删除功能(链接/文本/图片/文件)
- 🔍 新增分类筛选功能
- 🖼️ 图片点击放大预览
- 📅 时间筛选支持自定义日期范围和全部时间
- 🌐 分页组件中文化
- 🎨 优化筛选界面布局和用户体验
- ✨ 初始版本发布
- ✅ 剪贴板历史监控
- ✅ 多格式内容支持
- ✅ 全局快捷键
- ✅ 智能窗口定位
- ✅ 系统托盘集成
- ✅ 按日期筛选
- ✅ 可自定义快捷键
本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。
感谢以下开源项目:
- Tauri - 构建桌面应用的最佳框架
- Vue.js - 渐进式 JavaScript 框架
- Element Plus - Vue 3 组件库
- arboard - 跨平台剪贴板库
如果这个项目对你有帮助,请给我们一个 ⭐️