+ {{ store.query.value ? '没有匹配的记录' : '暂无剪贴板历史' }} +
++ {{ store.query.value + ? '换个关键词,或等待远端搜索结果' + : '复制任何内容后,会自动出现在这里' }} +
+diff --git a/plugins/y-clipboard/CHANGELOG.md b/plugins/y-clipboard/CHANGELOG.md new file mode 100644 index 000000000..02c68a52e --- /dev/null +++ b/plugins/y-clipboard/CHANGELOG.md @@ -0,0 +1,15 @@ +# Changelog + +## 0.1.0 - 2026-09-30 + +- 重写为剪贴板历史管理插件:文本 / 链接 / 代码 / 颜色值 / 图片 / 文件 六类自动分类 +- 本地即时过滤 + 宿主端补充搜索 +- 收藏:以快照形式独立持久化,清空历史后不丢 +- 键盘流:↑↓ 选择 / Enter 复制并粘贴 / Delete 删除 / Esc 退出 +- 虚拟滚动,千条记录保持流畅 +- 跟随 ZTools 深浅色主题与主题强调色 +- 新增插件 logo(闪电 + 剪贴板) + +## 1.0.0 - 2026-09-30 + +- 初次发布,将插件提交至 ZTools 插件仓库。 diff --git a/plugins/y-clipboard/README.md b/plugins/y-clipboard/README.md new file mode 100644 index 000000000..48de706f8 --- /dev/null +++ b/plugins/y-clipboard/README.md @@ -0,0 +1,45 @@ +# Y剪贴板 + +> ZTools 剪贴板历史管理插件 · Vue 3 + TypeScript + Vite + +分类清晰、响应飞快的剪贴板管理:文本 / 链接 / 代码 / 颜色 / 图片 / 文件自动分类,支持收藏、搜索与全键盘操作。 + +## 功能 + +- **自动分类**:复制的内容按 文本 / 链接 / 代码 / 颜色值 / 图片 / 文件 自动归类,侧栏一键切换 +- **即搜即得**:本地过滤即时出结果,同时防抖调用宿主搜索补充全量历史 +- **收藏**:星标记录存入插件独立存储(dbStorage),原历史被清空也不丢 +- **键盘流**:`↑` `↓` 选择 · `Enter` 复制并粘贴到原窗口 · `Delete` 删除 · `Esc` 退出 +- **主题适配**:跟随 ZTools 浅色 / 深色主题与主题强调色 +- **虚拟滚动**:固定行高窗口化渲染,千条记录依然流畅 + +## 开发 + +```bash +npm install +npm run dev # 浏览器打开 http://localhost:5173(自动使用 mock 数据) +npm run build # 构建到 src-ztools/dist/ +``` + +- 真实环境:ZTools 主窗口输入 `剪贴板` / `clipboard` / `clip` 触发 +- 开发模式:`plugin.json` 的 `development.main` 指向 dev server,改代码即时热更新 + +## 结构 + +``` +├── plugin.json # 插件配置(功能入口、触发指令) +├── preload/services.js # 预加载脚本(CommonJS,不可打包压缩) +└── src/ + ├── api.ts # 宿主 API 封装 + 字段归一化 + 开发 mock + ├── types.ts # 类型定义 + ├── utils/format.ts # 分类判定、时间格式化 + ├── composables/useStore.ts # 状态:分页加载 / 搜索 / 收藏 / 键盘导航 + └── components/ # Sidebar / Toolbar / VirtualList / ClipboardItem +``` + +## 发布 + +```bash +git add . && git commit -m "feat: clipboard plugin" +ztools publish +``` diff --git a/plugins/y-clipboard/design/index.html b/plugins/y-clipboard/design/index.html new file mode 100644 index 000000000..b7d1ad831 --- /dev/null +++ b/plugins/y-clipboard/design/index.html @@ -0,0 +1,134 @@ + + +
+ ++ {{ store.query.value ? '没有匹配的记录' : '暂无剪贴板历史' }} +
++ {{ store.query.value + ? '换个关键词,或等待远端搜索结果' + : '复制任何内容后,会自动出现在这里' }} +
+