用途:该技能用于编写和维护文档文件,涵盖 Markdown 内容、11ty(Eleventy)模板与短代码、JSDoc 注释,以及修复 Vale 文案检查错误。适用于创建或更新 Markdown 文档、处理文档站点的 11ty 模板、使用或创建 Eleventy 短代码、编写 API 文档或组件指南、更新内部指南或开发者文档。
主要能力与原则:所有文档文件必须包含正确的 frontmatter(title 与 layout);使用内置短代码处理常见模式(代码示例、提示框等);采用正确的标题层级,长文档需含目录;包含可运行的代码示例并正确高亮;通过正确路径交叉引用相关文档与指南。
Vale 文案检查:提交前通过 lint-staged 自动检查暂存的 .ts 与 .md 文件;CI 中作为 pnpm run ci 的一部分运行;也可在仓库根目录手动执行 pnpm run lint:vale,并可传入具体文件缩小范围。规则集按文件类型区分:.md 使用 Vale、Google、write-good、Elements 全套规则;.ts 使用 Vale、write-good、Elements(不含 Google 规则,且禁用拼写检查以减少代码标识符噪音);*.examples.ts 在 *.ts 基础上增加 SummaryStyle、SummaryActionable、SummaryGerund 三条摘要规则。
常见错误与修复:Google.Latin 触发于 e.g.、i.e.,改用 for example、that is;Google.Passive 触发于被动语态,改写为主动语态;Google.Quotes 触发于引号外标点,将逗号句号移入引号内;Elements.Branding 触发于 nvidia、Nvidia,统一使用 NVIDIA;Elements.Terminology 触发于 web component,改用 Web Component / Web Components;Vale.Spelling 遇到未知术语时,将术语加入 config/vale/styles/config/vocabularies/Elements/accept.txt;Elements.SummaryStyle 触发于 This example demonstrates 等弱开头,应直接说明示例作用或使用时机。
抑制规则:应谨慎使用,并在受影响内容后立即重新启用,例如 <!-- vale Google.Quotes = NO --> 与 <!-- vale Google.Quotes = YES -->。
关键文件:.vale.ini 为根配置(规则开关、文件类型范围、token 忽略);config/vale/styles/Elements/ 存放自定义规则(Branding、Terminology、Summary*);config/vale/styles/config/vocabularies/Elements/accept.txt 为已批准词汇表。
限制:进行任何文档更改前,必须先审阅 @projects/site/src/docs/internal/guidelines/documentation.md。其他细节暂未提供。