- Optimize HTML to Markdown conversion - Add smart line break handling - Preserve formatting while cleaning extra spaces - Update README with detailed format handling features - Add text processing highlights section
191 lines
4.1 KiB
Markdown
191 lines
4.1 KiB
Markdown
# LLMClipboard
|
||
|
||
一个跨平台的富文本捕获工具,提供现代化的GUI界面,支持一键将任何应用程序中的富文本内容转换为Markdown格式并保存。
|
||
|
||
## ✨ 特性
|
||
|
||
- 🖥️ 现代化图形界面,支持深色/浅色主题
|
||
- 📋 智能富文本捕获和格式保持
|
||
- ⚡ 快速双击右键保存
|
||
- 🔧 可视化配置界面
|
||
- 💾 自动保存为Markdown格式
|
||
- 🌐 完整的跨平台支持
|
||
- 🔄 系统托盘支持,后台运行
|
||
- 🎨 自适应系统主题
|
||
- 📝 优化的文本格式处理
|
||
|
||
## 🎯 功能亮点
|
||
|
||
### 智能格式转换
|
||
|
||
- **HTML 富文本**
|
||
- 保持原始格式(粗体、斜体、链接等)
|
||
- 保留图片和表格结构
|
||
- 智能处理段落和换行
|
||
- 清理多余空白行
|
||
|
||
- **纯文本处理**
|
||
- 自动识别文本编码
|
||
- 智能处理中文内容
|
||
- 保持段落结构
|
||
- 优化换行格式
|
||
|
||
- **Unicode 支持**
|
||
- 完整的 Unicode 字符支持
|
||
- 多语言文本兼容
|
||
- 保持特殊字符格式
|
||
|
||
### 格式优化
|
||
|
||
- 自动清理冗余空行
|
||
- 保持段落间距一致
|
||
- 优化列表和缩进结构
|
||
- 保持代码块格式
|
||
|
||
## 🚀 快速开始
|
||
|
||
### 环境要求
|
||
|
||
- Python >= 3.10
|
||
- Windows/Linux/MacOS
|
||
|
||
### 安装步骤
|
||
|
||
1. 克隆仓库:
|
||
```bash
|
||
git clone <repository-url>
|
||
cd llmclipboard
|
||
```
|
||
|
||
2. 创建虚拟环境:
|
||
```bash
|
||
uv venv .venv
|
||
```
|
||
|
||
3. 激活虚拟环境:
|
||
```bash
|
||
# Windows
|
||
.venv\Scripts\activate
|
||
# Linux/MacOS
|
||
source .venv/bin/activate
|
||
```
|
||
|
||
4. 安装依赖:
|
||
```bash
|
||
# Windows
|
||
.venv\Scripts\python.exe -m pip install -e .
|
||
# Linux/MacOS
|
||
.venv/bin/python -m pip install -e .
|
||
```
|
||
|
||
## ⚙️ 配置
|
||
|
||
编辑 `config.ini` 文件:
|
||
```ini
|
||
[Settings]
|
||
# 双击判定的时间阈值(秒)
|
||
double_click_threshold = 0.3
|
||
# Markdown文件保存路径
|
||
save_location = C:\Users\YourName\Documents\Markdown
|
||
```
|
||
|
||
## 📖 使用指南
|
||
|
||
### 启动程序
|
||
|
||
```bash
|
||
# Windows
|
||
.venv\Scripts\python.exe -m llmclipboard.app
|
||
# Linux/MacOS
|
||
.venv/bin/python -m llmclipboard.app
|
||
```
|
||
|
||
### 基本操作
|
||
|
||
1. **配置设置**
|
||
- 启动程序后,在GUI界面设置保存路径
|
||
- 根据需要调整双击阈值
|
||
- 点击"保存设置"应用更改
|
||
|
||
2. **开始使用**
|
||
- 点击"启动监听"按钮
|
||
- 选择任意文本内容
|
||
- 快速双击鼠标右键保存
|
||
- 文件自动保存为Markdown格式
|
||
|
||
3. **后台运行**
|
||
- 点击最小化按钮,程序会缩小到系统托盘
|
||
- 双击托盘图标可重新打开界面
|
||
- 右键托盘图标可访问快捷菜单
|
||
|
||
4. **退出程序**
|
||
- 点击"停止监听"停止服务
|
||
- 通过托盘菜单退出
|
||
- 或按ESC键退出
|
||
|
||
## 🔧 技术栈
|
||
|
||
- **GUI框架**: PyQt6
|
||
- **主题**: qt-material
|
||
- **系统集成**:
|
||
- pynput: 鼠标事件监听
|
||
- keyboard: 键盘事件处理
|
||
- pywin32: Windows系统集成
|
||
- **格式转换**: html2text
|
||
- **配置管理**: configparser
|
||
|
||
## 📁 项目结构
|
||
|
||
```
|
||
llmclipboard/
|
||
├── llmclipboard/ # 源代码目录
|
||
│ ├── __init__.py
|
||
│ ├── app.py # 主程序和服务逻辑
|
||
│ ├── gui.py # GUI界面实现
|
||
├── config.ini # 配置文件
|
||
├── README.md # 项目文档
|
||
├── pyproject.toml # 项目依赖配置
|
||
```
|
||
|
||
## 🛠️ 开发指南
|
||
|
||
### 安装开发依赖
|
||
|
||
```bash
|
||
uv pip install -e .
|
||
```
|
||
|
||
### 构建分发包
|
||
|
||
```bash
|
||
uv pip install build
|
||
python -m build
|
||
```
|
||
|
||
构建完成后,在 `dist` 目录下可以找到:
|
||
- `.tar.gz`: 源码分发包
|
||
- `.whl`: Python wheel包
|
||
|
||
## 🤝 贡献指南
|
||
|
||
1. Fork 本仓库
|
||
2. 创建特性分支 (`git checkout -b feature/AmazingFeature`)
|
||
3. 提交更改 (`git commit -m 'Add some AmazingFeature'`)
|
||
4. 推送到分支 (`git push origin feature/AmazingFeature`)
|
||
5. 提交 Pull Request
|
||
|
||
## 📄 许可证
|
||
|
||
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] |