Initial commit: skills library
- 70 skills with code and documentation - Add .gitignore (ignore __pycache__, output/, temp/, venv/) - Clean up test intermediates and caches
This commit is contained in:
@@ -0,0 +1,152 @@
|
||||
# DOC to Tables Skill
|
||||
|
||||
## 简介
|
||||
将Word文档(.docx)转换为结构化Markdown表格,再生成专业HTML表格文件的完整工作流技能。专门用于处理比赛获奖名单、考级成绩、荣誉证书等非结构化文档的整理工作。
|
||||
|
||||
## 安装依赖
|
||||
|
||||
### 必需依赖
|
||||
```bash
|
||||
# 安装pandoc (用于DOCX转Markdown)
|
||||
# Windows: 从 https://pandoc.org/installing.html 下载安装
|
||||
# macOS: brew install pandoc
|
||||
# Linux: sudo apt-get install pandoc
|
||||
```
|
||||
|
||||
### 可选依赖
|
||||
```bash
|
||||
# 如果需要PDF生成功能
|
||||
pip install fpdf2
|
||||
```
|
||||
|
||||
## 使用方法
|
||||
|
||||
### 基本用法
|
||||
```bash
|
||||
cd .opencode/skills/doc-to-tables/scripts
|
||||
python doc_to_tables.py "input.docx" "output"
|
||||
```
|
||||
|
||||
这将生成:
|
||||
- `output_md.md` - 结构化Markdown文件
|
||||
- `output_html.html` - 专业HTML表格文件
|
||||
|
||||
### 高级选项
|
||||
```bash
|
||||
# 自定义列宽比例
|
||||
python doc_to_tables.py "input.docx" "output" --three-col-widths "25,50,25" --two-col-widths "60,40"
|
||||
|
||||
# 不处理教师奖项(保留原始格式)
|
||||
python doc_to_tables.py "input.docx" "output" --no-process-teacher-awards
|
||||
|
||||
# 生成带表头的HTML(默认无表头)
|
||||
python doc_to_tables.py "input.docx" "output" --with-headers
|
||||
```
|
||||
|
||||
## 典型使用场景
|
||||
|
||||
### 1. 音乐比赛获奖整理
|
||||
**输入**:包含多个钢琴比赛获奖名单的Word文档
|
||||
**输出**:
|
||||
- Markdown表格按比赛分类,包含学生、奖项、指导教师
|
||||
- HTML表格可直接用于制作年度喜报海报
|
||||
|
||||
### 2. 考级成绩汇总
|
||||
**输入**:英皇、音协等考级成绩Word文档
|
||||
**输出**:
|
||||
- 结构化表格包含学生姓名、性别、级别、分数、评级、指导教师
|
||||
- 专业HTML格式适合打印和展示
|
||||
|
||||
### 3. 年度汇总报告
|
||||
**输入**:年度各项活动获奖情况Word文档
|
||||
**输出**:
|
||||
- 按活动类型分类的标准化表格
|
||||
- 可直接导入Photoshop进行海报设计
|
||||
|
||||
## 技术特点
|
||||
|
||||
### ✅ 智能数据处理
|
||||
- **跨比赛匹配**:自动关联同一学生在不同比赛中的指导教师
|
||||
- **数据去重**:相同奖项的教师合并显示,避免重复
|
||||
- **缺失值处理**:缺失的指导教师信息留空,方便后续补充
|
||||
|
||||
### ✅ 专业格式输出
|
||||
- **Markdown兼容**:在Obsidian等编辑器中完美显示
|
||||
- **HTML响应式**:表格自适应任何屏幕尺寸
|
||||
- **精确列宽控制**:三列表格(20%/60%/20%),两列表格(70%/30%)
|
||||
- **打印友好**:支持直接"打印为PDF"
|
||||
|
||||
### ✅ 错误处理
|
||||
- 自动检测和修复常见格式问题
|
||||
- 保留原始数据完整性
|
||||
- 详细的错误提示和日志
|
||||
|
||||
## 示例
|
||||
|
||||
### 输入Word文档内容:
|
||||
```
|
||||
###### 英国(牛津)2025国际钢琴公开赛-深圳赛区获奖名单
|
||||
许和欣 一等奖
|
||||
蔡达然 一等奖
|
||||
张靖彤 一等奖
|
||||
李芊妤 二等奖
|
||||
朱梓安 二等奖
|
||||
```
|
||||
|
||||
### 输出Markdown:
|
||||
```markdown
|
||||
#### **英国(牛津)2025国际钢琴公开赛-深圳赛区获奖名单**
|
||||
|
||||
|获奖学生|奖项|指导老师|
|
||||
|---|---|---|
|
||||
|许和欣|一等奖||
|
||||
|蔡达然|一等奖||
|
||||
|张靖彤|一等奖||
|
||||
|李芊妤|二等奖||
|
||||
|朱梓安|二等奖||
|
||||
```
|
||||
|
||||
### 输出HTML:
|
||||
专业的HTML表格,可直接用于海报制作。
|
||||
|
||||
## 配置选项
|
||||
|
||||
配置文件位于:`config/settings.json`
|
||||
|
||||
可自定义:
|
||||
- 默认列宽比例
|
||||
- 是否处理教师奖项
|
||||
- 输出格式偏好
|
||||
- 依赖项设置
|
||||
|
||||
## 扩展性
|
||||
|
||||
此技能支持轻松扩展:
|
||||
- **多格式输入**:Excel、PDF、PPT等
|
||||
- **自定义样式**:不同的CSS主题
|
||||
- **批量处理**:自动化处理多个文件
|
||||
- **多语言支持**:中文、英文、日文等
|
||||
|
||||
## 故障排除
|
||||
|
||||
### 常见问题
|
||||
1. **"pandoc not found"**:确保已安装pandoc并添加到PATH
|
||||
2. **中文乱码**:确保系统支持中文编码,使用UTF-8
|
||||
3. **表格格式错误**:检查源文档的标题层级是否正确
|
||||
|
||||
### 调试模式
|
||||
```bash
|
||||
# 启用详细日志
|
||||
python doc_to_tables.py --debug "input.docx" "output"
|
||||
```
|
||||
|
||||
## 版本历史
|
||||
|
||||
- **v1.0.0**:初始版本,支持基本的DOCX到表格转换
|
||||
- **计划v1.1.0**:支持Excel输入,批量处理功能
|
||||
|
||||
## 许可证
|
||||
MIT License
|
||||
|
||||
## 作者
|
||||
小小莫 - OhMyOpenCode AI Manager
|
||||
Reference in New Issue
Block a user