@dayinxisheng/check-mermaid
v0.2.0
Published
检查 Markdown 文件中的 Mermaid 代码块语法
Maintainers
Readme
@dayinxisheng/check-mermaid
检查 Markdown 文件中的 Mermaid 代码块语法。
安装
npm install -g @dayinxisheng/check-mermaid或使用 npx:
npx @dayinxisheng/check-mermaid <dir>更新
npm update -g @dayinxisheng/check-mermaid或重新安装:
npm install -g @dayinxisheng/check-mermaid@latest使用
check-mermaid <dir> [options]参数
| 参数 | 说明 |
|------|------|
| <dir> | 要扫描的目录路径 |
选项
| 选项 | 说明 |
|------|------|
| -v, --version | 显示版本号 |
| -o, --output <file> | 输出报告到 Markdown 文件 |
示例
# 检查 docs 目录中的 Markdown 文件
check-mermaid ./docs
# 检查并输出报告到文件
check-mermaid ./docs -o report.md
# 使用 npx
npx @dayinxisheng/check-mermaid ./docs输出示例
控制台输出
File: docs/example.md
Lines: 10-15
Error: Parse error on line 3:
expecting 'SEMI', got '}'Markdown 报告
# Mermaid 检查报告
共发现 2 个错误,分布在 1 个文件中。
## docs/example.md
| 行号 | 错误信息 |
|------|----------|
| 10-15 | Parse error on line 3... |退出码
| 退出码 | 说明 | |--------|------| | 0 | 未发现错误 | | 1 | 发现错误或参数无效 |
API
也可以作为模块使用:
import { scanMarkdownFiles, parseFile, validateBlocks } from '@dayinxisheng/check-mermaid'
// 扫描目录中的 Markdown 文件
const files = scanMarkdownFiles('./docs')
// 解析文件中的 mermaid 代码块
const blocks = parseFile('./docs/example.md')
// 验证代码块
const errors = await validateBlocks(blocks)浏览器渲染验证(高级)
除了基于 jsdom 的语法检查,还提供基于真实浏览器渲染的验证,能捕获渲染阶段的错误(如 subgraph 与节点同名导致的 cycle 错误):
import { browserValidateBlock, browserValidateBlocks, closeBrowser } from '@dayinxisheng/check-mermaid'
// 验证单个代码块(使用系统 Chrome 渲染)
const error = await browserValidateBlock(block)
// 批量验证
const errors = await browserValidateBlocks(blocks)
// 使用完毕后关闭浏览器
await closeBrowser()需要系统已安装 Chrome 浏览器,并安装
playwright-core依赖。
License
MIT
