用途
markdownlint-custom-rules 用于创建自定义的 markdownlint 规则,以便在 markdownlint 内置规则之外,强制执行项目特定的文档约定、校验内容模式并保持一致性。
主要能力
- 定义自定义规则对象,包含 names、description、tags、parser、function 等必需属性,以及 information、asynchronous 等可选属性。
- 选择解析器:markdown-it(基于 token 的解析,元数据丰富)、micromark(细粒度 token 分析与精确定位)或 none(简单的逐行规则)。
- 通过 params 对象访问输入名称、行数组、front matter 行、规则配置、库版本与解析器输出。
- 使用 onError 报告错误,可指定 lineNumber、detail、context、range,并通过 fixInfo 实现自动修复。
- fixInfo 支持删除字符、插入文本、替换文本、删除整行、插入新行以及多行修复。
- 支持异步规则(asynchronous: true,function 返回 Promise),例如网络校验外部链接。
- 提供 TypeScript 类型支持,可导入 Rule 类型进行类型安全的规则定义。
使用方式
在配置文件中使用:通过 .markdownlint.js 引入自定义规则模块,在 customRules 数组中注册规则,并在配置中启用或传入参数。
在 Node.js 脚本中使用:引入 markdownlint 与自定义规则,构造 options(files、customRules、config),调用 markdownlint(options, callback)。
配合 markdownlint-cli 使用:通过命令行参数 -c 指定配置文件、-r 指定规则文件,例如 markdownlint -c .markdownlint.js -r ./custom-rules/*.js *.md。
适用场景
- 强制执行项目特定的文档标准。
- 校验自定义 markdown 模式与领域特定要求。
- 扩展 markdownlint 内置规则之外的能力。
- 创建可复用的规则包。
- 自动化文档质量检查与团队编码标准。
- 构建自定义 linting 工具链。
限制
资料未提供该技能的具体安装命令、收费方式、价格、平台支持范围或实际运行效果等信息,暂未提供。