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:
hmo
2026-04-26 19:27:40 +08:00
commit 04db423416
861 changed files with 210414 additions and 0 deletions
+135
View File
@@ -0,0 +1,135 @@
# DOC to Tables Skill
## 概述
将Word文档(.docx)转换为结构化Markdown表格,再生成专业HTML表格文件的完整工作流技能。适用于需要从非结构化文档中提取比赛获奖、考级成绩、荣誉证书等信息并转换为标准化表格格式的场景。
## 适用场景
- 钢琴/音乐比赛获奖名单整理
- 考级成绩汇总
- 教师荣誉奖项统计
- 学生获奖情况整理
- 年度汇总报告制作
- 任何需要从Word文档提取结构化数据并生成表格的场景
## 输入要求
### 源文档格式
- Word文档(.docx)包含获奖/成绩/荣誉信息
- 文档中通常包含:
- 比赛/考级名称作为标题
- 学生姓名、奖项、指导教师等信息
- 可能包含重复或不完整的指导教师信息
### 预期输出
- 结构化的Markdown文件(带正确表格格式)
- 专业的HTML文件(可直接用于海报制作)
## 工作流程
### 阶段1:文档分析与数据提取
1. **DOCX转Markdown**:使用pandoc保留原始标题层级结构
2. **数据模式识别**:分析文档中的信息模式(学生姓名、组别奖项、指导教师)
3. **重复数据去重**:识别相同奖项的多个获奖者,合并教师姓名
### 阶段2Markdown表格整理
1. **统一表格结构**
- 三列表格:`|获奖学生|组别和奖项|指导老师|`
- 两列表格:`|赛事/活动|奖项/荣誉|`
2. **智能标题适配**
- 简单奖项使用"奖项"列标题
- 复杂奖项使用"组别和奖项"列标题
- 考级项目保持完整信息(性别、级别、分数、评级)
3. **教师奖项优化**
- 相同奖项的教师合并到同一行
- 使用逗号分隔多个教师姓名
- 特殊奖项单独列出
### 阶段3HTML表格生成
1. **响应式设计**:表格宽度100%自适应
2. **精确列宽控制**
- 三列表格:20% | 60% | 20%
- 两列表格:70% | 30%
3. **专业样式**
- 表格边框和交替背景色
- 教师奖项使用缩小字体
- 支持打印和PDF导出
## 使用方法
### 基本用法
```bash
# 将Word文档转换为Markdown和HTML表格
python doc_to_tables.py "input.docx" "output"
```
### 高级选项
```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" --process-teacher-awards
# 生成无表头HTML(适合海报制作)
python doc_to_tables.py "input.docx" "output" --no-headers
```
## 输出文件
- `{output}_md.md` - 结构化Markdown文件
- `{output}_html.html` - 专业HTML表格文件
## 技术特点
### 智能数据匹配
- 跨比赛匹配学生与指导教师
- 自动补全缺失的指导教师信息
- 处理双人/多人项目的指导教师合并
### 格式优化
- Markdown表格在Obsidian中完美显示
- HTML表格适合Photoshop导入和海报制作
- 支持中文字符和特殊符号
### 错误处理
- 自动检测和修复格式问题
- 缺失数据留空供后续补充
- 保留原始数据完整性
## 示例场景
### 音乐比赛获奖整理
**输入**:包含多个钢琴比赛获奖名单的Word文档
**输出**
- Markdown表格按比赛分类,包含学生、奖项、指导教师
- HTML表格可直接用于制作年度喜报海报
### 考级成绩汇总
**输入**:英皇、音协等考级成绩Word文档
**输出**
- 结构化表格包含学生姓名、性别、级别、分数、评级、指导教师
- 专业HTML格式适合打印和展示
## 注意事项
1. **标题层级**:源文档应使用适当的标题层级(H1-H6)
2. **数据一致性**:学生姓名和教师姓名应保持一致拼写
3. **特殊字符**:支持中文、英文、数字和常见符号
4. **空值处理**:缺失的指导教师信息会留空,方便后续补充
## 依赖项
- pandoc (DOCX转Markdown)
- Python 3.6+
- fpdf2 (可选,用于PDF生成)
## 扩展性
此技能可轻松扩展以支持:
- Excel文件作为输入源
- 其他文档格式(PDF、PPT
- 自定义表格样式和主题
- 多语言支持
- 自动化批量处理