Install
openclaw skills install docx-template-strictStrictly fill a DOCX template (preserving cover/headers/sections/styles) using placeholder tokens, with optional figures and references. For any task like: ‘use this Word template to format/fill papers and keep the template layout identical’.
openclaw skills install docx-template-strict目的:把 .docx 当作“模板”来用,完整保留模板的封面、分节(sectPr)、页眉页脚、样式、下划线 run 结构、字体与布局;只在模板中指定的占位符位置填充文本/图片/参考文献。
关键原则:不要用 python-docx 重新生成段落结构(这会破坏模板 run/sectPr)。 本 skill 采用:
docx(zip) → XML 精确替换 → 写回 docx。
{{TOKEN_NAME}}{{TITLE_CN}} / {{TITLE_EN}}{{NAME_CN}} / {{NAME_EN}}{{MAJOR}} {{CLASS}} {{STUDENT_ID}}{{COURSE}} {{TEACHER}} {{DATE_CN}}{{ABSTRACT_CN}} {{KEYWORDS_CN}}{{ABSTRACT_EN}} {{KEYWORDS_EN}}每张图推荐 3 段占位符(各占一整段,且仅包含该 token):
{{FIG1}}{{FIG1_CAPTION_CN}}{{FIG1_CAPTION_EN}}第二张图:FIG2 同理。
{{REFERENCES}}(多行文本,包含 [1]...)运行脚本:
python3 ~/.openclaw/skills/docx-template-strict/scripts/fill_template.py \
--template "/path/to/template.docx" \
--out "/path/to/output.docx" \
--data "/path/to/data.json"
data.json 示例:
{
"TITLE_CN": "...",
"TITLE_EN": "...",
"NAME_CN": "林佩权",
"NAME_EN": "Lin Peiquan",
"ABSTRACT_CN": "...",
"ABSTRACT_EN": "...",
"KEYWORDS_CN": "...",
"KEYWORDS_EN": "...",
"REFERENCES": "[1] ...\n[2] ...\n"
}
在 data.json 中提供:
{
"FIG1": {"path": "/path/to/fig1.png"},
"FIG2": {"path": "/path/to/fig2.jpg"}
}
脚本会:
{{FIG1}} 所在段落替换为图片 drawing{{...}} 未替换 token