🎁 Get the FREE AI Skills Starter GuideSubscribe →
BytesAgainBytesAgain
🦀 ClawHub

用于为Word文档开启并调整修订模式,添加、删除批注等功能

by @hanselxie

Word文档 (.docx) 处理,支持修订模式(Track Changes)和批注操作。使用场景:(1) 修订模式 - 添加插入/删除修订、红字标注;(2) 批注操作 - 添加、删除、查看批注;(3) 文档内容修改。当用户要求"修订"、"track changes"、"批注"、"红字修订"、"添加评论"、"添加...

Versionv1.0.0
Downloads505
TERMINAL
clawhub install docx-trackchanges-and-comments

📖 About This Skill


name: docx-trackchanges-and-comments description: Word文档 (.docx) 处理,支持修订模式(Track Changes)和批注操作。使用场景:(1) 修订模式 - 添加插入/删除修订、红字标注;(2) 批注操作 - 添加、删除、查看批注;(3) 文档内容修改。当用户要求"修订"、"track changes"、"批注"、"红字修订"、"添加评论"、"添加注释"时触发此技能。

Word 文档处理 (修订模式 + 批注)

概述

Word 文档基于 OOXML 标准,内部结构为 ZIP 包,主要 XML 文件:

  • word/document.xml - 文档正文内容
  • word/comments.xml - 批注内容存储
  • word/settings.xml - 文档设置(包含修订模式开关)
  • 快速开始

    使用脚本添加修订/批注

    ``bash python3 scripts/track_changes.py --add "原文本" "新文本" --author "修改人"

    
    

    手动操作流程

    1. 解压文档:unzip -o document.docx -d docx_temp 2. 编辑 XML 文件 3. 重新打包:cd docx_temp && zip -r ../output.docx . && cd .. && rm -rf docx_temp


    功能一:修订模式 (Track Changes)

    启用修订模式

    word/settings.xml 中添加:

    xml true
    
    

    添加插入修订

    python from scripts.track_changes import add_insertion add_insertion(doc, "要插入的新内容", author="何大拿")
    
    XML 原理:使用  标签包裹插入内容(绿色下划线)

    添加删除修订

    python from scripts.track_changes import add_deletion add_deletion(doc, "要删除的原文", author="何大拿")
    
    XML 原理:使用  标签包裹删除内容(红色删除线)


    功能二:批注操作

    批注结构

    批注涉及两个文件: 1. word/comments.xml - 存储批注内容 2. word/document.xml - 存储批注引用位置

    快速查看批注

    bash cd /path/to/inbound unzip -o document.docx -d docx_temp cat docx_temp/word/comments.xml
    
    

    添加批注(XML 级别)

    #### Step 1: 解压文档

    bash cd /Users/hansel/.openclaw/media/inbound unzip -o document.docx -d docx_temp
    
    #### Step 2: 编辑 XML

    需要修改两个文件:

    2.1 修改 comments.xml

    找到下一个可用的 comment ID:

    bash grep -o 'w:id="[0-9]*"' docx_temp/word/comments.xml | sed 's/w:id="//;s/"//' | sort -n | tail -1
    
    假设下一个 ID 是 1,添加新批注:
    
    xml 批注内容
    
    XML 实体转义:&&<<>>

    2.2 修改 document.xml

    在需要添加批注的文本位置添加标记:

    xml

    这里是正文内容

    
    ⚠️ 重要
  • 同级兄弟元素
  • 需要包裹在
  • #### Step 3: 重新打包

    bash cd docx_temp && zip -r ../output.docx . && cd .. rm -rf docx_temp
    
    

    删除批注

    1. 从 comments.xml 中删除对应的 元素 2. 从 document.xml 中删除三处标记: - - - 包含 的整个 元素 3. 重新打包

    接受批注(将批注内容合并到正文)

    1. 从 document.xml 中删除三处批注标记 2. 保留 comments.xml 中的批注内容(可选) 3. 重新打包


    批注 XML 详解

    comments.xml 结构

    xml 批注内容
    
    

    document.xml 中的批注引用

    xml 被批注的文本
    `


    注意事项

  • 作者名称:建议使用英文或拼音
  • 日期格式:ISO 8601 格式,如 2026-03-17T14:00:00Z`
  • ID 唯一性:每个批注的 ID 必须唯一,且在两个 XML 文件中保持一致
  • initials:作者名缩写,2个字符为宜