sublime text默认不渲染mermaid,需手动安装mermaid preview等插件并配置mmdc路径;代码块须严格用`mermaid包裹,文件保存为.md且语法设为markdown,缩进、换行、标点须规范,导出比预览更可靠。

Mermaid语法在Sublime里默认不渲染
Sublime Text本身不解析Mermaid代码,也不会把```mermaid块转成图形。你看到的只是纯文本,甚至可能连语法高亮都没有。这不是配置错了,是根本没装对应插件。
必须手动安装支持Mermaid的插件,且需确认它是否同时提供:语法高亮 + 实时预览(或导出)功能。常见组合是MarkdownEditing(负责基础Markdown高亮)+ Mermaid Preview(专攻Mermaid渲染)。
-
Mermaid Preview依赖系统已安装mermaid-cli(即mmdc命令),需先用npm全局安装:npm install -g mermaid-cli - 如果
mmdc不在$PATH里,插件会报错Cannot find mmdc,此时要在Sublime的插件设置中填入完整路径,比如/usr/local/bin/mmdc(macOS)或C:\Users\xxx\AppData\Roaming\npm\mmdc.cmd(Windows) - 部分旧版
Mermaid Preview不兼容Mermaid 10+的新语法(如flowchart TD推荐写法),若图表不渲染,试试改成graph TD
如何让Sublime正确识别Mermaid代码块
默认情况下,Sublime不会把```mermaid当作特殊块处理,它可能被当成普通代码块,甚至被MarkdownEditing误判为其他语言(比如```javascript)。
需要确保两个条件同时满足:
- 文件保存为
.md后缀,且右下角状态栏显示“Markdown”而非“Plain Text”——点击可切换语法类型 - 在
Preferences → Package Settings → MarkdownEditing → Settings – User中,确认"extensions"包含"md",并添加"mermaid"到"allow_code_fences"列表(如果插件支持) - Mermaid代码块必须严格使用
```mermaid开头,不能写成```mermaid-js或```mmd,否则插件无法触发渲染
预览Mermaid图时常见的空白/报错问题
点了预览键(通常是Ctrl+Shift+P → Mermaid: Preview)却只弹出空白窗口,或控制台报TypeError: Cannot read property 'length' of undefined,大概率是Mermaid语法有硬伤。
输入文章 URL,返回干净 Markdown。支持17个平台(头条、微信公众号、知乎、36kr、虎嗅、华尔街见闻、澎湃、InfoQ 等)专项优化,双引擎提取、图片本地化、三层抓取策略。常与 browser‑web‑search skill配合:先用 bws 搜索获取 url 列表,再逐篇调用本 skill 提取正文。
Mermaid对缩进、换行、标点极其敏感,尤其在Sublime里没有实时校验:
- 避免中文标点,所有括号、冒号、分号必须是英文半角
- 节点ID不能含空格或中文,
A[用户登录]要写成A[用户登录]没问题,但A[用户 登录]会导致解析失败 - 子图(
subgraph)必须闭合,漏掉end会静默失败,不报错但不出图 - 如果用了
%%{init: {...}}%%初始化配置,确保JSON格式合法,true不能写成"true"
导出PNG/SVG比预览更可靠,但要注意路径和权限
预览依赖Sublime内建浏览器,容易因Mermaid版本或CSP策略失败;而导出是调用本地mmdc生成文件,成功率更高,也方便插入文档。
执行Mermaid: Export as PNG后没反应?检查这几处:
- 导出目录默认是当前文件所在目录,如果文件未保存(即Untitled),会失败——务必先
Ctrl+S存为.md文件 - Windows下若提示
Permission denied,可能是杀毒软件拦截了mmdc.cmd,临时关闭或加白名单 - 导出SVG时若文字乱码,说明系统缺少中文字体,可在
mmdc命令中加参数:--font-family "Microsoft YaHei",并在插件设置里传入该选项
Mermaid的语法容错率低,而Sublime又不提供语法诊断,最稳妥的做法是:写完一段就复制到官方Live Editor(mermaid.live)里验证通过,再粘回Sublime导出。










