在VSCode中编写和预览PlantUML及Mermaid图表
发布时间 - 2025-12-17 00:00:00 点击率:次在VSCode中编写预览PlantUML与Mermaid图表需正确安装插件、配置环境并使用快捷键:PlantUML依赖Java和Graphviz,推荐官方插件并用Ctrl+Alt+P预览;Mermaid在VSCode 1.84+原生支持,需开启mermaid.enabled,用Ctrl+K V预览;两者均支持分栏编辑与热重载,注意语法版本与中文字体配置。
在 VSCode 中编写和预览 PlantUML 与 Mermaid 图表,关键在于装对插件、配好环境、用对快捷键——不需要离开编辑器就能实时看到图表效果。
PlantUML:先装 Java 和 Graphviz,再配插件
PlantUML 依赖 Java 运行时(JRE/JDK ≥ 8),部分图形(如部署图、对象图)还需 Graphviz 的 dot 命令支持。Windows 用户建议直接下载安装包;macOS 可用 Homebrew:brew install graphviz;Linux 用户按发行版安装 graphviz 包即可。
VSCode 插件推荐使用官方维护的 PlantUML(作者:jebbs)。安装后,在设置中确认以下两项:
- plantuml.jar 路径是否正确(可留空让插件自动下载,或手动指定本地路径)
-
plantuml.server 可设为
https://www.plantuml.com/plantuml(在线渲染,无需本地 Java)
写完 @startuml 开头的代码块后,按 Ctrl+Alt+P(Windows/Linux)或 Cmd+Option+P(macOS),选择 Preview Current Diagram,右侧就会弹出 SVG 预览窗。
Mermaid:开箱即用,但要注意语法版本
Mermaid 插件(如 Mermaid Preview 或 VSCode 内置支持)基本无需额外配置。VSCode 1.84+ 已原生支持 mermaid 代码块渲染(需开启 "mermaid.enabled": true)。
注意:不同 Mermaid 版本语法有差异。比如旧版用 graph TD,新版推荐 flowchart TD;类图中 classDef 必须放在定义之后才生效。建议在文件顶部加注释注明版本:
保存文件后,右键点击代码块 → Open Preview,或用快捷键 Ctrl+K V(聚焦预览窗)。
并排编辑与预览,提升效率
别让预览窗口遮住代码。推荐将编辑器分成左右两栏:左写代码,右点开预览(拖动预览标签到右侧分组即可)。PlantUML 预览支持热重载——改完保存,预览图自动刷新;Mermaid 预览默认也支持,若不生效可检查插件设置中的 autoUpdate 是否开启。
小技巧:
- PlantUML 支持导出 PNG/SVG:预览页右上角三个点 → Export as PNG
- Mermaid 预览页右键可复制 SVG 源码,粘贴到支持 HTML 的地方直接显示
- 在 Markdown 文件里混写图表?确保代码块语言标识准确:
```plantuml或```mermaid
常见问题速查
图表不渲染?先看右下角状态栏有没有报错提示。PlantUML 常见报错如 java not found,说明没配好 JDK;Mermaid 报 P,大概率是缩进错误或用了新语法但插件版本旧了。
arse error
字体中文乱码?PlantUML 默认不支持中文字体。可在 diagram 开头加:
skinparam defaultFontName Noto Sans CJK SC(需系统已安装该字体,或换用 Microsoft YaHei 等本地常见中文字体)
基本上就这些。配一次,以后写图就跟写代码一样顺手。
# linux
# java
# vscode
# html
# markdown
# svg
# windows
# mac
# 中文乱码
# ai
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
INTERNET浏览器怎样恢复关闭标签页_INTERNET浏览器标签恢复快捷键与方法【指南】
如何快速查询域名建站关键信息?
Laravel N+1查询问题如何解决_Eloquent预加载(Eager Loading)优化数据库查询
Laravel如何实现URL美化Slug功能_Laravel使用eloquent-sluggable生成别名【方法】
,南京靠谱的征婚网站?
Laravel如何配置和使用缓存?(Redis代码示例)
如何快速搭建高效香港服务器网站?
nginx修改上传文件大小限制的方法
VIVO手机上del键无效OnKeyListener不响应的原因及解决方法
Laravel如何创建和注册中间件_Laravel中间件编写与应用流程
音乐网站服务器如何优化API响应速度?
html5如何实现懒加载图片_ intersectionobserver api用法【教程】
Laravel如何使用Telescope进行调试?(安装和使用教程)
Laravel如何处理文件上传_Laravel Storage门面实现文件存储与管理
简历在线制作网站免费版,如何创建个人简历?
网站制作价目表怎么做,珍爱网婚介费用多少?
Laravel storage目录权限问题_Laravel文件写入权限设置
Laravel如何实现全文搜索_Laravel Scout集成Algolia或Meilisearch教程
C语言设计一个闪闪的圣诞树
Python3.6正式版新特性预览
如何快速搭建二级域名独立网站?
湖南网站制作公司,湖南上善若水科技有限公司做什么的?
常州企业网站制作公司,全国继续教育网怎么登录?
Laravel如何处理表单验证?(Requests代码示例)
济南网站建设制作公司,室内设计网站一般都有哪些功能?
最好的网站制作公司,网购哪个网站口碑最好,推荐几个?谢谢?
高端云建站费用究竟需要多少预算?
Laravel如何实现本地化和多语言支持_Laravel多语言配置与翻译文件管理
如何使用 jQuery 正确渲染 Instagram 风格的标签列表
LinuxShell函数封装方法_脚本复用设计思路【教程】
使用豆包 AI 辅助进行简单网页 HTML 结构设计
香港网站服务器数量如何影响SEO优化效果?
简单实现Android验证码
免费视频制作网站,更新又快又好的免费电影网站?
如何获取PHP WAP自助建站系统源码?
WordPress 子目录安装中正确处理脚本路径的完整指南
Laravel怎么实现软删除SoftDeletes_Laravel模型回收站功能与数据恢复【步骤】
北京网站制作的公司有哪些,北京白云观官方网站?
Laravel如何使用Gate和Policy进行授权?(权限控制)
Laravel怎么多语言本地化设置_Laravel语言包翻译与Locale动态切换【手册】
如何用低价快速搭建高质量网站?
Android自定义控件实现温度旋转按钮效果
智能起名网站制作软件有哪些,制作logo的软件?
phpredis提高消息队列的实时性方法(推荐)
Laravel如何保护应用免受CSRF攻击?(原理和示例)
如何挑选优质建站一级代理提升网站排名?
网站广告牌制作方法,街上的广告牌,横幅,用PS还是其他软件做的?
如何快速搭建支持数据库操作的智能建站平台?
网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?
如何在建站之星绑定自定义域名?

