用途:把本地 .md 文章转换为 Word 文件,适用于用户说“转成doc”“转成 Word”“md 转 doc”“Markdown 转 Word”“导出 Word”等场景。输入通常是带 YAML frontmatter 和远程图片的 Obsidian 或微信文章。
主要能力:使用 Pandoc 转换,启用 markdown+yaml_metadata_block+lists_without_preceding_blankline;保留 frontmatter 的 title、author、date 作为 Word 元数据或标题块;转换前移除空图片节点,跳过 或 等占位符;嵌入有效的本地或远程图片;在 LibreOffice 可用时把 .docx 转为 .doc;校验 .docx 的 ZIP 结构;提取纯文本做内容检查;在 LibreOffice 可用时渲染为 PDF。
使用方式:在工作区根目录运行 python3 .agent/skills/z-md-to-word/scripts/md_to_word.py "/absolute/path/to/article.md"。脚本输出到 output/doc/<markdown-stem>.docx 和 output/doc/<markdown-stem>.doc。仅在用户明确只要 .docx 时使用 --no-doc。流程为确认文件存在、运行脚本、读取 JSON 摘要,若 rendered_docx 或 rendered_doc 为 false 则修复后重跑;若关注排版,可用 --keep-render 重跑并检查生成的页面。
限制:脚本无法运行时可用 Pandoc 直接转换作为回退,需配合 Lua 过滤器移除空图片,并用 soffice 渲染检查。具体依赖环境与平台支持暂未提供。