Community寫作與編輯github.com

word-standards

Word 文件格式規範與生成管線(md → pandoc → docx + OOXML 後處理)。用於產生 Word 文件、轉換為 docx、產出期刊手稿風格的 Word 輸出、執行 pandoc 轉換、排版右對齊編號的方程式、格式化圖表標題、剖析參考 docx 以複製其格式,或對已產生的 docx 進行原地格式修補。

word-standards 是什麼?

這個技能提供了一個完整的 md → pandoc → docx 管線,專為產出符合研究團隊參考手稿風格的 Word 文件而設計。它整合了 pandoc 轉換與 Python zipfile 後處理,能直接讀寫 docx XML。此技能適用於需要從 Markdown 生成 Word 文件的開發者與研究人員,特別是那些需遵循嚴格格式規範的期刊手稿。關鍵效益包括:自動處理 pandoc 的已知陷阱(如 `\tag{}` 被靜默丟棄)、避免隱含圖片的重複標題、處理跨語言的後向引用語法差異(Python 與 PowerShell/JS),以及應對 OMML 數學字型的複雜問題。此外,它強制執行「先驗證再覆寫」的安全機制,透過特徵計數、XML 格式驗證及 pandoc 回讀來確保輸出品質。技能內含多個可重複使用的 Python 腳本(如 `_rebuild_word.py` 與 `_fix_docx_format.py`),並明確區分「從 md 全新建置」與「對已編輯 docx 進行原地修補」兩種使用場景。詳細的 pitfalls 說明、格式規範與參考文件均收錄在 `references/` 目錄中。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Laitangtang-lab-workflows/word-standards/tree/HEAD

Installed? Explore more 寫作與編輯 skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

Word Docgen — md → pandoc → docx 管線

從中文 md(或翻譯後的英文 md)產生 Word 文件,並依照研究團隊的參考手稿風格進行排版:使用 pandoc 轉換,再加上 Python zipfile 後處理,直接讀寫 docx XML。

六條鐵律(優先記住)

  1. \tag{n} 會被 pandoc 靜默丟棄:在產生前,將 \tag{…} 替換為 \qquad\text{(n)},使編號位於方程式右端;md 原始碼保留標準的 \tag 拼寫不變。
  2. 停用隱含圖片功能:使用 -f markdown-implicit_figures,且圖片替代文字留空——否則 pandoc 會自動從替代文字產生重複的標題。
  3. 後向引用語法在不同語言間會失效:Python re.sub 使用 \1/\g<1>;PowerShell/JS 使用 $1。沿用錯誤習慣會直接輸出 ($1) 字面文字。
  4. 方程式字型是個地雷區:OMML 數學運算依賴 w:ascii="Cambria Math";任何全文件字型替換必須以 <m:oMath>…</m:oMath> 為界,僅修改外部內容,並確認 Cambria Math 計數不變。
  5. 先驗證再覆寫:暫存副本 → 驗證(特徵計數 + 透過 minidom.parseString 檢查 XML 格式 + pandoc 回讀)→ os.replace;兩個真實錯誤都是被這道關卡攔下。
  6. 編輯樣式表勝過編輯 body XML:pandoc 從 --reference-doc 繼承樣式與 sectPr;參考 docx 的剖析操作手冊請見參考文件 §3.5。

內容導覽

完整細節(pandoc 層陷阱、OOXML/正則表達式層陷阱、工程實務、方程式布局與標題規則的第二輪陷阱、可重複使用的腳本)收錄於 references/word-pandoc-pitfalls.md。提取的格式規範本身(頁面/排版/標題/標題/方程式/表格)收錄於 references/word-format-spec.md。

可重複使用的腳本(位於 scripts\ 目錄下)

  • _rebuild_word.py:完整的 md → docx 管線(\tag 前置處理、樣式注入、後處理、寫入前驗證);
  • _fix_docx_format.py:對手動編輯的 docx 進行三項格式原地修補(TNR 字型、圖片置中、表格網格線);
  • 呼叫方式(從手稿目錄執行,輸入與輸出路徑均為相對路徑):python <skill-path>\scripts\_rebuild_word.py input.md output.docx。

選擇方式:使用者已手動編輯過 Word 檔案 → 僅進行原地修補(重新產生會遺失編輯內容);使用者希望從 md 全新建置 → 執行完整管線。先詢問使用者,或檢查是否存在 ~$ 鎖定檔以確認文件是否正在編輯中。

範圍界限

  • Word 註解/追蹤修訂(docx-editor MCP 領域):不屬於本技能範圍;
  • 手稿格式規範本身(頁面/排版/標題慣例):由本技能的 references/word-format-spec.md 提供;
  • 驅動腳本時 PowerShell 的引號陷阱:請見 references/word-pandoc-pitfalls.md §3.4。

相關技能