| name | gongwen-format |
| version | 1.1.0 |
| description | 一站式公文格式转换与规范化工具。Use when: 用户要求"Word 转公文"、"转成 TXT"、"Excel 转 Markdown"、"检查公文格式"。
Produces: 符合公文规范的纯净 TXT 或 Markdown 文件。
|
公文格式化 Skill
公文格式化不是简单的格式转换,而是让文档"可用"——去除所有技术性标记,输出可直接粘贴使用的纯净文本。
触发词路由
| 用户说 | 模式 |
|---|
| "把 Word 转成公文格式" / "转成可用的 TXT" | 模式一 |
| "把 Markdown 转成 TXT" / "去掉 Markdown 格式" | 模式二 |
| "转换引号" / "引号改成全角" | 模式三 |
| "检查公文格式" | 模式四 |
| "Word 转 Markdown" / "转成公文规范的 Markdown" | 模式五 |
| "Excel 转 Markdown" / "xlsx 转 md" | 模式六 |
脚本位置
项目根目录/
├── word2md.py # Word → Markdown
├── clean_md.py # 清理 Pandoc 遗留标记
├── convert_quotes.py # 半角引号 → 全角引号
├── grid2gfm.py # Grid Table → GFM Table
└── .opencode/skill/gongwen-format/scripts/
└── excel2md.py # Excel → Markdown 表格
模式一:Word → 公文 TXT
目标:Word 文档转为可直接粘贴的纯净 TXT。
步骤
python3 word2md.py <input.docx> -o <output_dir>
python3 clean_md.py <output.md> -i
3. AI 手动处理(读取 md 文件后执行):
4. 写入临时文件后执行引号转换:
python3 convert_quotes.py <temp.md> -o <output.txt>
验证
模式二:Markdown → 公文 TXT
目标:Markdown 文件转为纯净 TXT。
步骤
- 读取 Markdown 文件
- AI 手动删除 Markdown 符号、融合小标题(同模式一)
- 写入临时文件
- 执行引号转换:
python3 convert_quotes.py <temp.md> -o <output.txt>
验证
同模式一。
模式三:仅引号转换
目标:半角引号 → 中文全角引号。
步骤
python3 convert_quotes.py <input_file> -o <output_file>
输出
模式四:格式检查
目标:检查文档是否符合公文格式规范。
步骤
1. 强制执行引号转换(不依赖 AI 判断):
python3 convert_quotes.py <input_file> -o <input_file>
⚠️ 红线:引号检测不可依赖 AI 肉眼判断,必须通过脚本执行。即使 AI 认为"全部是全角引号",仍必须执行此步骤。
2. AI 检查其他项目:
输出
- 报告引号转换数量(来自脚本输出)
- 生成其他检查项的通过/未通过报告
模式五:Word → 公文规范 Markdown
目标:Word 转 Markdown,保留格式标记,仅规范化引号。
步骤
python3 word2md.py <input.docx> -o <output_dir>
python3 clean_md.py <output.md> -i
python3 grid2gfm.py <output.md> -i
python3 convert_quotes.py <output.md> -o <output.md>
输出特点
- ✅ 保留 Markdown 格式符号
- ✅ 引号转为中文全角
- ✅ 表格为 GFM 格式
- ❌ 不融合小标题(保持 Markdown 结构)
模式六:Excel → Markdown 表格
目标:Excel 表格转为 GFM Markdown 表格。
步骤
python3 .opencode/skill/gongwen-format/scripts/excel2md.py <input.xlsx> [output.md]
脚本功能
- 自动跳过标题行,识别真正表头
- 清理单元格换行符
- 移除全空列
- 生成 GFM 格式表格
验证
注意
- 仅支持
.xlsx(不支持 .xls、.et)
.et 格式需先转存为 .xlsx
红线约束
引号处理强制规则
-
禁止依赖 AI 判断引号类型:AI 无法可靠区分半角引号(")和全角引号(""),所有引号相关检查必须通过 convert_quotes.py 脚本执行。
-
写入后必须转换:任何公文文件(.txt、.md)在以下操作后,必须立即执行引号转换:
- 使用 Write 工具创建新文件
- 使用 Edit 工具修改文件
- AI 手动处理内容后写入文件
python3 convert_quotes.py <file> -o <file>
-
格式检查必须包含脚本调用:执行模式四(格式检查)时,无论 AI 是否认为引号已经是全角,都必须执行转换脚本。
其他红线
-
不编造数值:金额、数量、比例等数值必须来自用户提供的素材,不可杜撰。
-
不使用 Markdown 符号:公文 TXT 输出中禁止出现 #、**、-、* 等符号。
公文格式速查
禁止内容
| 禁止 | 正确 |
|---|
# 标题 | 标题 |
**文字** | 文字 |
"引号" | "引号" |
| 小标题独立成行 | 融入段落 |
序号层级
| 层级 | 格式 | 示例 |
|---|
| 一级 | 中文数字+顿号 | 一、二、三、 |
| 二级 | 括号中文数字 | (一)(二)(三) |
| 三级 | 阿拉伯数字+点 | 1. 2. 3. |
| 四级 | 括号阿拉伯数字 | (1)(2)(3) |
小标题融合示例
错误:
**(一)突出政治引领。**
坚持把理论学习摆在首位……
正确:
(一)突出政治引领。坚持把理论学习摆在首位……