diff --git a/project/llmclipboard/README.md b/project/llmclipboard/README.md index 8c04ac7..e59f33a 100644 --- a/project/llmclipboard/README.md +++ b/project/llmclipboard/README.md @@ -1,123 +1,162 @@ # LLMClipboard -一个跨平台的富文本捕获工具,具有现代化的GUI界面,可以通过选择任何应用程序的富文本内容,快速双击鼠标右键将其保存为markdown格式文件,保持原有的图文样式。 +一个跨平台的富文本捕获工具,提供现代化的GUI界面,支持一键将任何应用程序中的富文本内容转换为Markdown格式并保存。 -## 功能特点 +## ✨ 特性 -- 现代化的图形用户界面 -- 支持从任何应用程序中捕获富文本 -- 保持原有的文本格式和样式 -- 自动转换为markdown格式 -- 简单的右键双击操作 -- 可配置的保存路径 -- 支持HTML、纯文本、Unicode文本格式 -- 系统托盘支持 -- 自适应深色/浅色主题 -- 跨平台支持 +- 🖥️ 现代化图形界面,支持深色/浅色主题 +- 📋 智能富文本捕获和格式保持 +- ⚡ 快速双击右键保存 +- 🔧 可视化配置界面 +- 💾 自动保存为Markdown格式 +- 🌐 完整的跨平台支持 +- 🔄 系统托盘支持,后台运行 +- 🎨 自适应系统主题 -## 安装步骤 +## 🚀 快速开始 -1. 创建虚拟环境: +### 环境要求 + +- Python >= 3.10 +- Windows/Linux/MacOS + +### 安装步骤 + +1. 克隆仓库: +```bash +git clone +cd llmclipboard +``` + +2. 创建虚拟环境: ```bash uv venv .venv ``` -2. 激活虚拟环境: +3. 激活虚拟环境: ```bash +# Windows .venv\Scripts\activate +# Linux/MacOS +source .venv/bin/activate ``` -3. 安装依赖: +4. 安装依赖: ```bash -.venv\Scripts\python.exe -m pip install pynput pywin32 html2text keyboard configparser PyQt6 darkdetect qt-material +# Windows +.venv\Scripts\python.exe -m pip install -e . +# Linux/MacOS +.venv/bin/python -m pip install -e . ``` -## 配置说明 +## ⚙️ 配置 -编辑 `config.ini` 文件,设置以下参数: +编辑 `config.ini` 文件: ```ini [Settings] +# 双击判定的时间阈值(秒) double_click_threshold = 0.3 -save_location = 你的保存路径 +# Markdown文件保存路径 +save_location = C:\Users\YourName\Documents\Markdown ``` -- `double_click_threshold`: 双击判定的时间阈值(秒) -- `save_location`: markdown文件的保存路径 +## 📖 使用指南 -## 使用方法 +### 启动程序 -1. 启动程序: ```bash +# Windows .venv\Scripts\python.exe -m llmclipboard.app +# Linux/MacOS +.venv/bin/python -m llmclipboard.app ``` -2. 使用步骤: - - 在GUI界面中设置保存路径和双击阈值 - - 点击"启动监听"按钮开始监听 - - 选择需要保存的富文本内容 - - 快速双击鼠标右键 - - 文件会自动保存到配置的路径中 - - 可以最小化到系统托盘继续运行 - - 按ESC键或点击"停止监听"按钮停止监听 +### 基本操作 -## 项目结构 +1. **配置设置** + - 启动程序后,在GUI界面设置保存路径 + - 根据需要调整双击阈值 + - 点击"保存设置"应用更改 + +2. **开始使用** + - 点击"启动监听"按钮 + - 选择任意文本内容 + - 快速双击鼠标右键保存 + - 文件自动保存为Markdown格式 + +3. **后台运行** + - 点击最小化按钮,程序会缩小到系统托盘 + - 双击托盘图标可重新打开界面 + - 右键托盘图标可访问快捷菜单 + +4. **退出程序** + - 点击"停止监听"停止服务 + - 通过托盘菜单退出 + - 或按ESC键退出 + +## 🔧 技术栈 + +- **GUI框架**: PyQt6 +- **主题**: qt-material +- **系统集成**: + - pynput: 鼠标事件监听 + - keyboard: 键盘事件处理 + - pywin32: Windows系统集成 +- **格式转换**: html2text +- **配置管理**: configparser + +## 📁 项目结构 ``` llmclipboard/ -├── llmclipboard/ +├── llmclipboard/ # 源代码目录 │ ├── __init__.py -│ ├── app.py -│ ├── gui.py -├── config.ini -├── README.md -├── pyproject.toml +│ ├── app.py # 主程序和服务逻辑 +│ ├── gui.py # GUI界面实现 +├── config.ini # 配置文件 +├── README.md # 项目文档 +├── pyproject.toml # 项目依赖配置 ``` -## 依赖说明 +## 🛠️ 开发指南 -- Python >= 3.10 -- pynput: 鼠标事件监听 -- pywin32: Windows API交互 -- html2text: HTML转Markdown转换 -- keyboard: 键盘事件处理 -- configparser: 配置文件处理 -- PyQt6: GUI框架 -- qt-material: 现代化主题 -- darkdetect: 系统主题检测 +### 安装开发依赖 -## GUI功能 - -1. **主要功能**: - - 可视化配置保存路径和双击阈值 - - 实时显示程序运行状态 - - 一键启动/停止监听 - - 系统托盘支持,最小化后继续运行 - - 自适应系统主题(深色/浅色) - -2. **系统托盘**: - - 双击托盘图标显示主窗口 - - 右键菜单支持显示/退出操作 - - 最小化时显示通知消息 - -## 开发说明 - -1. 安装开发依赖: ```bash uv pip install -e . ``` -2. 构建分发包: +### 构建分发包 + ```bash uv pip install build python -m build ``` -这将在项目根目录下生成 `dist` 目录,包含 `.tar.gz` 和 `.whl` 文件。 +构建完成后,在 `dist` 目录下可以找到: +- `.tar.gz`: 源码分发包 +- `.whl`: Python wheel包 -## 许可证 +## 🤝 贡献指南 -MIT License +1. Fork 本仓库 +2. 创建特性分支 (`git checkout -b feature/AmazingFeature`) +3. 提交更改 (`git commit -m 'Add some AmazingFeature'`) +4. 推送到分支 (`git push origin feature/AmazingFeature`) +5. 提交 Pull Request -## 贡献指南 +## 📄 许可证 -欢迎提交 Issue 和 Pull Request。 \ No newline at end of file +MIT License - 查看 [LICENSE](LICENSE) 文件了解更多详情 + +## 🙏 致谢 + +- [PyQt6](https://www.riverbankcomputing.com/software/pyqt/) - GUI框架 +- [qt-material](https://github.com/UN-GCPDS/qt-material) - 现代化主题 +- [html2text](https://github.com/Alir3z4/html2text) - HTML转Markdown工具 + +## 📞 支持与反馈 + +如果你遇到任何问题或有建议: +1. 提交 [Issue](../../issues) +2. 发送邮件至 [your-email@example.com] \ No newline at end of file