poc/project/llmclipboard/README.md
zhukang 4a4710e70a docs: 更新 README.md
1. 全面重写文档结构,使其更加清晰和专业
2. 添加项目目录结构和核心模块说明
3. 更新最近的功能改进
2025-01-15 23:14:27 +08:00

184 lines
4.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# LLMClipboard
智能剪贴板增强工具,专注于提供高质量的文本捕获和处理体验。支持智能标题提取、自动分类、关键词标签等功能,让您的笔记管理更轻松高效。
## ✨ 核心特性
### 📋 智能文本处理
- 智能标题提取,自动从内容中识别最合适的标题
- 多格式支持HTML、Markdown、纯文本等
- 保持原文格式,包括段落、换行、列表等
- 智能清理,去除冗余内容和空白行
### 🏷️ 自动分类和标签
- 基于内容智能分类,自动归档到合适目录
- 使用 NLP 技术提取关键词作为标签
- 支持自定义分类规则和标签规则
- YAML front matter 元数据支持
### 🎨 现代化界面
- 简洁优雅的用户界面
- 支持深色/浅色主题
- 系统托盘常驻
- 快捷键操作支持
## 🚀 快速开始
### 系统要求
- Python 3.8+
- Windows 10/11
### 安装步骤
1. 克隆仓库
```bash
git clone https://github.com/yourusername/llmclipboard.git
cd llmclipboard
```
2. 创建虚拟环境
```bash
python -m venv .venv
.venv\Scripts\activate
```
3. 安装依赖
```bash
pip install -r requirements.txt
```
4. 运行程序
```bash
python -m llmclipboard.app
```
## 📁 项目结构
```
llmclipboard/
├── llmclipboard/ # 主程序包
│ ├── __init__.py # 包初始化文件
│ ├── app.py # 主程序入口
│ ├── document_processor.py # 文档处理核心逻辑
│ ├── gui.py # 图形界面实现
│ ├── categories.json # 分类配置文件
│ └── tests/ # 测试目录
│ ├── __init__.py
│ ├── test_clipboard.py # 剪贴板功能测试
│ ├── test_data.py # 数据处理测试
│ └── test_document_processor.py # 文档处理测试
├── docs/ # 文档目录
├── .python-version # Python 版本配置
├── config.ini # 程序配置文件
├── pyproject.toml # 项目依赖配置
├── README.md # 项目说明文档
└── text_capture.log # 日志文件
```
### 核心模块说明
- **app.py**: 程序入口,包含主要的应用逻辑和事件循环
- **document_processor.py**: 文档处理核心,实现了标题提取、内容清理、标签生成等功能
- **gui.py**: 图形界面实现,包含主窗口和托盘图标的设计
- **categories.json**: 预设的文档分类规则配置
- **tests/**: 单元测试集合,确保核心功能的正确性
## 📝 使用说明
### 基本操作
1. 双击右键:快速保存剪贴板内容
2. 系统托盘图标:
- 左键单击:打开主界面
- 右键单击:显示菜单选项
### 配置说明
配置文件位于 `~/.llmclipboard/config.yaml`
```yaml
save_location: "文档保存位置"
default_category: "默认分类"
auto_save: true # 是否自动保存
dark_mode: auto # 主题模式light/dark/auto
```
### 文档保存格式
```markdown
---
title: 自动提取或手动设置的标题
date: 2025-01-15 21:00:00
tags: [自动提取的标签]
category: 自动分类的目录
---
正文内容...
```
### 目录结构
```
save_location/
├── 技术/ # 技术相关文档
├── 学习/ # 学习笔记
├── 工作/ # 工作文档
├── 想法/ # 想法和灵感
└── 其他/ # 未分类文档
```
## 🔧 核心功能说明
### 标题提取算法
- 智能识别文档主题和重点
- 处理多种标题格式Markdown、HTML等
- 标点符号智能处理
- 长度自动优化
### 文本清理功能
- 保持原文格式和换行
- 智能去除冗余内容
- 优化空白行和段落间距
- 特殊字符处理
### 自动分类系统
- 基于内容的智能分类
- 关键词匹配
- 自定义分类规则
- 默认分类支持
## 🔄 最近更新
### 2025-01-15
- 🔍 改进标题提取算法
- 优化对 Markdown 格式的处理
- 改进代码块标题处理
- 智能处理标点符号
- 保持标题简洁明了
- 📝 优化文本格式处理
- 保持原文换行格式
- 智能清理空白行
- 改进中文标点处理
- 🔧 改进日志输出
- 添加详细的调试信息
- 确保 UTF-8 编码支持
- 优化日志格式和可读性
## 🤝 贡献指南
1. Fork 项目
2. 创建特性分支 (`git checkout -b feature/AmazingFeature`)
3. 提交更改 (`git commit -m 'feat: 添加一些特性'`)
4. 推送到分支 (`git push origin feature/AmazingFeature`)
5. 提交 Pull Request
### 编码规范
- 遵循 PEP 8 规范
- 使用类型注解
- 编写单元测试
- 添加详细注释
## 📄 许可证
本项目采用 MIT 许可证。详见 [LICENSE](LICENSE) 文件。
## 🙋‍♂️ 问题反馈
如果您遇到问题或有建议:
1. 提交 [Issue](../../issues)
2. 加入讨论组:[Discussions](../../discussions)
3. 发送邮件至:[your-email@example.com]