{"id":23418721,"url":"https://github.com/pdmaker/clean-copy","last_synced_at":"2025-04-09T08:28:12.405Z","repository":{"id":268579901,"uuid":"899625292","full_name":"pdmaker/Clean-Copy","owner":"pdmaker","description":"CleanCopy，Copy and keep formatting, no Markdown","archived":false,"fork":false,"pushed_at":"2024-12-17T16:13:10.000Z","size":246,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-15T02:42:59.057Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://chromewebstore.google.com/detail/jbdmbmgkjmigfnfiibojpmcmfbaclnbn","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pdmaker.png","metadata":{"files":{"readme":"docs/README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2024-12-06T16:53:01.000Z","updated_at":"2024-12-17T17:05:36.000Z","dependencies_parsed_at":"2024-12-17T17:23:07.587Z","dependency_job_id":"d838af2f-d3cf-4fb0-95be-54d5299669fc","html_url":"https://github.com/pdmaker/Clean-Copy","commit_stats":null,"previous_names":["pdmaker/clean-copy"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pdmaker%2FClean-Copy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pdmaker%2FClean-Copy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pdmaker%2FClean-Copy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pdmaker%2FClean-Copy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pdmaker","download_url":"https://codeload.github.com/pdmaker/Clean-Copy/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248002378,"owners_count":21031589,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":[],"created_at":"2024-12-23T00:33:55.579Z","updated_at":"2025-04-09T08:28:12.378Z","avatar_url":"https://github.com/pdmaker.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Clean Copy - ChatGPT 智能复制插件，粘贴得心应手\n\n一个浏览器插件，用于优化 ChatGPT 等AI 对话内容的复制体验。支持自动转换 Markdown 格式，根据粘贴环境智能适配富文本或纯文本格式。\n\n代码开源，期待感兴趣的小伙伴一起共创，支持更多的 AI 平台。（比如 Claude.ai \\ Perplexity.ai 、Google Gemini 等）\n\n已上架 Chrome 应用商店，[免费下载](https://chromewebstore.google.com/detail/clean-copy-%E7%AE%80%E5%87%80%E5%A4%8D%E5%88%B6%EF%BC%8C%E5%A4%8D%E5%88%B6%E5%87%BA%E6%9B%B4%E5%B9%B2%E5%87%80%E7%9A%84-g/jbdmbmgkjmigfnfiibojpmcmfbaclnbn)\n\n预览图：\n![image](https://github.com/user-attachments/assets/2282fa14-5b6c-4da5-bbc1-3430930fd026)\n\n\n## 功能特点\n\n- 🎯 智能复制按钮：在 ChatGPT 对话界面添加专用的复制按钮\n- 📝 格式智能转换：自动识别并转换 Markdown 格式\n- 🔄 双格式支持：同时生成富文本和纯文本格式\n- 🎨 智能粘贴：根据目标编辑器自动选择合适的格式\n- ⚡️ 快速开关：通过浏览器工具栏快速启用/禁用插件\n\n## 实现机制\n\n### 复制原理\n- 利用 `ClipboardItem` API 同时支持富文本和纯文本格式\n- 直接使用 ChatGPT 渲染好的 HTML 内容，确保格式完全一致\n- 智能清理 Markdown 标记，生成干净的纯文本版本\n\n### 平台适配\n- 富文本环境（如 Mac 备忘录、飞书文档）：\n  - 自动选择 HTML 格式\n  - 完整保留文本样式（加粗、斜体等）\n  - 保持字体和样式的一致性\n- 纯文本环境（如微信、代码编辑器）：\n  - 自动选择纯文本格式\n  - 智能移除所有格式标记\n  - 保持文本的整洁性\n\n### 用户体验\n- 复制按钮位于操作栏末端，避免干扰原有功能\n- 鼠标悬停时显示功能提示\n- 复制时提供视觉反馈\n- 操作结果有清晰的成功/失败提示\n\n### 支持的 Markdown 语法\n\n- 文本格式化（加粗、斜体）\n- 标题（H1-H6）\n- 列表（有序、无序）\n- 引用\n- 代码块\n- 链接\n\n## 安装方法\n\n1. 下载项目代码\n2. 打开 Chrome 扩展管理页面 (`chrome://extensions/`)\n3. 开启\"开发者模式\"\n4. 点击\"加载已解压的扩展程序\"\n5. 选择项目目录\n\n## 使用办法\n\n1. 在 ChatGPT 对话页面中，每条回复下方会出现 Clean Copy 按钮\n2. 点击按钮即可复制内容\n3. 粘贴到目标位置时会自动使用合适的格式\n4. 可通过浏览器工具栏的插件图标快速开关功能\n\n### 平台兼容性\n\n- 微信对话框 - 纯文本\n- Mac 备忘录 - 富文本\n- 飞书文档 - 富文本\n- Sublime Text - 纯文本\n\n## 项目结构 \nclean-copy/\n├── manifest.json # 插件配置文件\n├── src/\n│ ├── content/ # content script\n│ │ ├── index.js # 主要逻辑\n│ │ └── styles.css # 样式文件\n│ ├── popup/ # 弹出窗口\n│ │ ├── popup.html # 弹窗页面\n│ │ ├── popup.css # 弹窗样式\n│ │ └── popup.js # 弹窗逻辑\n│ └── assets/ # 资源文件\n└── icons/ # 插件图标\n\n## 开发\n\n### 环境要求\n\n- Chrome 浏览器\n- Node.js (可选，用于开发)\n\n### 本地开发\n\n1. 克隆仓库：\n```bash\ngit clone [repository-url]\ncd clean-copy\n```\n\n2. 在 Chrome 中加载插件：\n- 打开 `chrome://extensions/`\n- 开启\"开发者模式\"\n- 点击\"加载已解压的扩展程序\"\n- 选择项目目录\n\n3. 修改代码后刷新插件即可看到效果\n\n## 贡献指南\n\n欢迎提交 Pull Request 或创建 Issue。\n\n## 许可证\n\nMIT License\n\n## 更新日志\n\n### v0.1.0\n- 初始版本\n- 实现基础复制功能\n- 支持 ChatGPT 网站\n- 支持核心 Markdown 语法转换\n- 优化复制机制，直接使用渲染后的 HTML\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpdmaker%2Fclean-copy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpdmaker%2Fclean-copy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpdmaker%2Fclean-copy/lists"}