# LLMClipboard 一个跨平台的富文本捕获工具,具有现代化的GUI界面,可以通过选择任何应用程序的富文本内容,快速双击鼠标右键将其保存为markdown格式文件,保持原有的图文样式。 ## 功能特点 - 现代化的图形用户界面 - 支持从任何应用程序中捕获富文本 - 保持原有的文本格式和样式 - 自动转换为markdown格式 - 简单的右键双击操作 - 可配置的保存路径 - 支持HTML、纯文本、Unicode文本格式 - 系统托盘支持 - 自适应深色/浅色主题 - 跨平台支持 ## 安装步骤 1. 创建虚拟环境: ```bash uv venv .venv ``` 2. 激活虚拟环境: ```bash .venv\Scripts\activate ``` 3. 安装依赖: ```bash .venv\Scripts\python.exe -m pip install pynput pywin32 html2text keyboard configparser PyQt6 darkdetect qt-material ``` ## 配置说明 编辑 `config.ini` 文件,设置以下参数: ```ini [Settings] double_click_threshold = 0.3 save_location = 你的保存路径 ``` - `double_click_threshold`: 双击判定的时间阈值(秒) - `save_location`: markdown文件的保存路径 ## 使用方法 1. 启动程序: ```bash .venv\Scripts\python.exe -m llmclipboard.app ``` 2. 使用步骤: - 在GUI界面中设置保存路径和双击阈值 - 点击"启动监听"按钮开始监听 - 选择需要保存的富文本内容 - 快速双击鼠标右键 - 文件会自动保存到配置的路径中 - 可以最小化到系统托盘继续运行 - 按ESC键或点击"停止监听"按钮停止监听 ## 项目结构 ``` llmclipboard/ ├── llmclipboard/ │ ├── __init__.py │ ├── app.py │ ├── gui.py ├── 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` 文件。 ## 许可证 MIT License ## 贡献指南 欢迎提交 Issue 和 Pull Request。