{"id":51508770,"url":"https://github.com/hunlongyu/hopy","last_synced_at":"2026-07-08T04:00:25.046Z","repository":{"id":369281199,"uuid":"1288114530","full_name":"Hunlongyu/hopy","owner":"Hunlongyu","description":"Lightweight cross-platform clipboard manager — Qt 6 (Widgets) + SQLite, static single-file build on Windows","archived":false,"fork":false,"pushed_at":"2026-07-04T12:43:48.000Z","size":1210,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-07-04T14:10:27.303Z","etag":null,"topics":["clipboard","clipboard-history","clipboard-manager","cpp","cpp20","desktop-app","productivity","qt","qt6","sqlite","windows"],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Hunlongyu.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-07-03T09:35:44.000Z","updated_at":"2026-07-04T12:43:52.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/Hunlongyu/hopy","commit_stats":null,"previous_names":["hunlongyu/hopy"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/Hunlongyu/hopy","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hunlongyu%2Fhopy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hunlongyu%2Fhopy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hunlongyu%2Fhopy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hunlongyu%2Fhopy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Hunlongyu","download_url":"https://codeload.github.com/Hunlongyu/hopy/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hunlongyu%2Fhopy/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35251017,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-08T02:00:06.796Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["clipboard","clipboard-history","clipboard-manager","cpp","cpp20","desktop-app","productivity","qt","qt6","sqlite","windows"],"created_at":"2026-07-08T04:00:19.023Z","updated_at":"2026-07-08T04:00:25.032Z","avatar_url":"https://github.com/Hunlongyu.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# hopy\n\n轻量 · 跨平台**剪贴板管理器** —— Qt 6 (Widgets) + SQLite，在 Windows 下静态编译为**单个无依赖 exe**。\n**插入符跟随、永不抢焦点**：窗口就在光标处弹出，回贴精准落回原位。\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"docs/showcase.png\" alt=\"hopy 界面总览：颜色值卡片 / 图片卡片 / 鼠标悬浮 / 实时预览\" width=\"100%\"\u003e\n\u003c/p\u003e\n\n## ✨ 功能特性\n\n- **🎯 插入符跟随 · 不抢焦点** —— 窗口在编辑器**文本光标处**弹出；全程不夺取焦点，原窗口的插入符始终存活，因此回贴精准落回原光标位置。\n- **🚀 全局热键唤起** —— 默认 `Alt + C`，可在设置里改成任意单键或组合键。\n- **🎨 智能内容识别** —— 自动区分**文本 / 图片 / 文件**三类，各自渲染。\n- **🌈 颜色值卡片** —— 自动识别 `#hex`（3/4/6/8 位）、`rgb()` / `rgba()`、裸 hex，行首直接画出色块。\n- **🖼️ 图片缩略图** 与 **📄 文件名 / 路径** 卡片，一眼可辨。\n- **🔗 内容感知打开** —— 对 URL / 邮箱 / 文件路径 / 文件条目，按 `O` 或**右键**一键打开（浏览器 / 默认邮箱 / 资源管理器）；触发键可在设置里改（支持鼠标中键或关闭）。\n- **👁️ 实时预览 + 信息条** —— 鼠标悬浮或按空格弹出预览；顶部信息条显示**类型 · 字数 · 时间 · 可打开提示**，长文可滚动，鼠标侧键 `M4 / M5` 翻页。\n- **🕒 相对时间** —— 卡片显示「刚刚 / N 分钟前 / 昨天 …」，完整时间戳在预览信息条中可见。\n- **🔍 搜索 + 筛选** —— 搜索支持大小写 `Aa`、全词 `W`；按类型 / 收藏快速过滤。\n- **📌 置顶 · ⭐ 收藏 · 🗑️ 删除** —— 键盘、**点击卡片右上角图标**、或逐条管理常用内容。\n- **⌨️ 全键盘 + 双击回贴** —— **双击卡片**或 `Enter` 回贴到原窗口，`Shift` 走纯文本，数字键 `1–5` 秒贴，`Home / End` 跳首尾。\n- **🌗 亮 / 暗双主题** \u0026 **🌍 中英双语** —— 一键切换（默认暗色 / 跟随系统语言），卡片、色块、缩略图、图标全部自适应。\n- **🔄 检查更新** —— 内置检查更新：发现新版本可下载、SHA-256 校验后自替换并重启（Windows）。\n- **💾 SQLite 持久化** —— 历史落盘，重启不丢。\n- **📦 静态单文件** —— 无 Qt DLL 依赖，拷贝即用。\n\n## 🌗 亮 / 暗双主题\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"docs/showcase-themes.png\" alt=\"hopy 亮色与暗色主题并排对比\" width=\"100%\"\u003e\n\u003c/p\u003e\n\n## ⌨️ 快捷键\n\n| 按键 | 功能 |\n| --- | --- |\n| `Alt + C` | 全局唤起窗口（默认，可自定义） |\n| `双击卡片` / `Enter` | 回贴选中项到原窗口 |\n| `Shift + Enter` | 以纯文本回贴 |\n| `1 – 5` | 选取并回贴第 N 条 |\n| `↑ / ↓` | 上一条 / 下一条 |\n| `Home / End` | 跳到第一条 / 最后一条 |\n| `← / → / Tab` | 切换内容类型（筛选） |\n| `/` | 聚焦搜索框 |\n| `O` / `右键` | 打开链接 / 邮箱 / 文件（可自定义触发键） |\n| `F` | 收藏 / 取消收藏 |\n| `T` | 置顶 / 取消置顶 |\n| `Delete` / `D` | 删除选中项 |\n| `Space` | 预览当前项 |\n| `M4 / M5` | 预览翻页（侧键：M4 下翻 / M5 上翻） |\n| `Esc` | 隐藏窗口 |\n\n## 🔨 构建（Windows，静态单文件）\n\n需要位于 `CMakePresets.json` 所引用前缀处的静态 Qt 6.11.1（MSVC 2026 x64），外加 Ninja 与 MSVC 2026 工具链。\n\n```powershell\ncmake --preset win-static-release\ncmake --build --preset win-static-release\nctest --preset win-static-release\n```\n\n产物：`build/win-static-release/hopy.exe` —— 单个自包含可执行文件，不依赖任何 Qt DLL。\n\n## 🧱 技术栈\n\n- **UI**：Qt 6 Widgets（自绘 `RecordDelegate` 卡片，`QSS` 主题 + `QPalette` 调色板）\n- **存储**：SQLite\n- **平台层**：全局热键、低级输入钩子、插入符探测、前台窗口回贴（Windows / MSVC 2026 x64 静态链接），架构面向跨平台\n- **构建**：CMake + Ninja + CMake Presets\n\n\u003e 展示图源文件为 [`docs/showcase.svg`](docs/showcase.svg) 与 [`docs/showcase-themes.svg`](docs/showcase-themes.svg)（矢量，可编辑），README 中引用的 PNG 由其渲染生成。\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhunlongyu%2Fhopy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhunlongyu%2Fhopy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhunlongyu%2Fhopy/lists"}