Visual Studio Code 的丰富 PlantUML 支持。
本扩展现在强烈推荐使用服务器渲染,因为它更快且更易于设置,而主要的缺点已得到改进:
POST 方法,现在您可以渲染非常大的图表include 处理器,您不会再遇到 include 问题为确保您能从此更新中受益,请确保您的 plantuml 服务器启用了 POST 支持。
如果没有,比如官方的 https://www.plantuml.com/plantuml,扩展将回退使用 GET,您可能仍会遇到 414 URI 过长 错误。建议设置您自己的服务器。
注意:如果您使用自定义的
plantuml.jar,请更新到最新版本以启用多页图表支持。(晚于V1.2017.15)
格式化 PlantUML 代码已 弃用。不要依赖它,只在它正常工作时使用。我已在自动格式化情况下(保存时格式化)强制禁用它。
*.wsd, *.pu, *.puml, *.plantuml, *.iuml
启动 VS Code 快速打开(Ctrl+P),粘贴以下命令,然后按回车。
ext install plantuml
根据您选择的渲染方式,插件有不同的要求。
一个 plantuml 服务器。参见使用 PlantUML 服务器作为渲染器。
必须安装以下内容:
brew install --cask temurin brew install graphviz
插件集成了 plantuml.jar 和 GraphViz 的副本,所以通常您已经可以使用了。 但如果您想使用自己的 jar 或不同版本的 GraphViz(可能是更新的版本,或有许多依赖 jar):
plantuml.jar 或使用 chocolatey 安装(见下文)。plantuml.jar 指定 jar 位置。GRAPHVIZ_DOT 指定 GraphViz 安装,例如,如果您使用 chocolatey 安装了 plantuml(它自动安装最新的 GraphViz 作为依赖),则为 c:\program files\graphviz\bin\dot.exe。对于 Windows 用户,majkinetor 介绍了一种轻松安装 plantuml 及其依赖的方法。
以管理员身份运行 cmd.exe,然后运行以下两个命令(如果您已经安装了 chocolatey,则不需要第一个命令,它会失败)。
@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin" choco install plantuml
如果您已安装 Java,但仍提示"未安装 Java",请将 Java bin 路径添加到
PATH环境变量中。
plantuml.diagramsRoot 和 plantuml.exportOutDir 设置组织,例如:"plantuml.diagramsRoot": "docs/diagrams/src", "plantuml.exportOutDir": "docs/diagrams/out"
您将得到如下的导出结果:
项目文件夹/
docs/
diagrams/
src/
architecture_overview.wsd
out/
architecture_overview/
architecture_overview.png
...项目其他文件夹/
...项目其他文件
最新版本再次更改了 include 文件搜索逻辑。 现在可以在 settings.json 中配置 includepaths。
新的搜索顺序如下:
includepaths"plantuml.includepaths": ["docs/diagrams/style","docs/diagrams/src"],
diagramsRoot不再需要 includeSearch 设置,因为 plantuml 文件的文件夹和 diagramsRoot 始终都在 include 路径中。
对于新项目,建议不要依赖 diagramsRoot,而是显式配置所有必需的 includepaths。
感谢 anotherandi 提供的出色想法和实现!
预览页面提供各种缩放/平移操作和对齐功能:
例如,对齐底部在编写长活动图时很有用,它可以帮助您保持焦点在底部的最新部分。
自动更新:

缩放和滚动:

多页视图:

导出图表:




如果
editor.formatOnSave开启,PlantUML 格式化器将被禁用(自 v2.8.3 起)。 因为根据用户反馈,格式化器不够可靠。

此插件集成了所有类型的图表代码片段。它们被分为 9 个部分:
diagram: 通用图表元素的代码片段。activity: 活动图的代码片段。class: 类图的代码片段。component: 组件图的代码片段。state: 状态图的代码片段。usecase: 用例图的代码片段。sequence: 序列图的代码片段。ui: salt图的代码片段。egg: 一些有趣图表的代码片段,如数独、地球。例如,输入acife(简短版本)可触发以下代码片段(activity➤if・else):
if (cond1?) then (val1) else (val2) endif

按Ctrl+Shift+O列出文件中的所有图表。您可以在图表开始时为其命名。
@startuml 图表名称 sudoku @enduml
插件支持两种渲染方式:本地和PlantUMLServer。
本地是默认的传统方式。如果您更关心导出速度,应该尝试PlantUMLServer。
本地: 6个文档, 9个图表, 14个文件导出用时24.149秒 PlantUMLServer: 6个文档, 9个图表, 14个文件导出用时1.564秒
优点:
plantuml.exportConcurrency,因为并发性是无限的。缺点:
!include的图表。plantuml.jar、plantuml.commandArgs、plantuml.jarArgs。要渲染包含include支持的超大图表,请确保您的plantuml服务器启用了
POST支持。如果没有,比如官方的https://www.plantuml.com/plantuml,扩展会回退使用
GET,您可能仍会遇到414 URI太长错误。建议设置您自己的服务器。
您的团队可能已经有了PlantUML服务器,找到服务器地址,如:http://192.168.1.100:8080。
如果没有,请按照说明进行设置,推荐使用Docker运行。找到服务器地址,如:http://localhost:8080或http://192.168.1.100:8080,可以与团队共享。
在本地机器上运行PlantUML服务器的另一种选择是使用内置的picowebserver,可以简单地运行java -jar plantuml.jar -picoweb,在这里阅读更多信息:https://plantuml.com/picoweb
打开用户设置,配置如下:
"plantuml.server": "http://192.168.1.100:8080", "plantuml.render": "PlantUMLServer",
欢迎翻译。lang.nls.json, package.nls.json


仍推荐使用@startuml / @enduml,这样Markdown中的PlantUML代码可以被此插件的其他功能管理。
此扩展提供以下设置。
渲染选择:
plantuml.render: 为导出和预览选择图表渲染器。PlantUMLServer渲染设置:
plantuml.server: 用于即时生成UML图的PlantUML服务器。本地渲染设置:
plantuml.java: Java可执行文件位置。plantuml.commandArgs: 允许您向java命令添加命令参数,如-DPLANTUML_LIMIT_SIZE=8192。plantuml.jar: 替代plantuml.jar位置。留空以使用集成jar。plantuml.jarArgs: 允许您向plantuml.jar添加参数,如-config plantuml.config。plantuml.includepaths: 指定除源文件夹和diagramsRoot之外的包含路径。导出设置:
plantuml.diagramsRoot: 指定所有图表文件所在位置(相对于工作区文件夹)。plantuml.exportOutDir: 导出的工作区图表将组织在此目录中(相对于工作区文件夹的路径)。plantuml.fileExtensions: 要查找并导出的文件扩展名。特别是在工作区设置中,您可以添加自己的扩展名,以便导出源代码文件中的图表,如".java"。plantuml.exportFormat: 导出格式。默认未设置,用户每次导出时可能选择一种格式。如果不想每次选择,您仍可以设置一种格式。plantuml.exportSubFolder: 将图表导出到与主文件同名的文件夹中。plantuml.exportIncludeFolderHeirarchy: 在导出的文件路径中包含根目录和源图表之间的文件夹层次结构。plantuml.exportConcurrency: 决定导出多个图表时的并发数。plantuml.exportMapFile: 决定导出时是否导出图像映射(.cmapx)文件。预览设置:
plantuml.previewAutoUpdate: 决定是否自动更新预览窗口。其他设置:
plantuml.urlFormat: URL格式。留空以在每次生成URL时选择格式。plantuml.urlResult: URL结果类型。简单URL或准备用于Markdown。plantuml.lintDiagramNoName: 决定图表未命名时是否进行检查。请在GitHub上发布和查看问题
感谢您的鼓励!
Claus Appel, 三島木一磨, 富吉佑季, 黒田悦成, Jared Birdsall, Suleyman Cabir Ciplak, Malcolm Learner, Сысоев Максим, Gokan Kenichi, anb0s, Lawrence Yarian, Ahmad Ragab, 山田暁通
享受使用!


职场AI,就用扣子
AI办公助手,复杂任务高效处理。办公效率 低?扣子空间AI助手支持播客生成、PPT制作、网页开发及报告写作,覆盖科研、商业、舆情等领域的专家Agent 7x24小时响应,生活工作无缝切换,提升50%效率!


多风格AI绘画神器
堆友平台由阿里巴巴设计团队创建,作为一款AI驱动的设计工具,专为设计师提供一站式增长服务。功能覆盖海量3D素材、AI绘画、实时渲染以及专业抠图,显著提升设计品质和效率。平台不仅提供工具,还是一个促进创意交流和个人发展的空间,界面友好,适合所有级别的设计师和创意工作者。


零代码AI应用开发平台
零代码AI应用开发平台,用户只需一句话简单描述需求,AI能自动生成小程序、APP或H5网页应用,无需编写代码。


免费创建高清无水印Sora视频
Vora是一个免费创建高清无水印Sora视频的AI工具


最适合小白的AI自动化工作流平台
无需编码,轻松生成可复用、可变现的AI自动化工作流

大模型驱动的Excel数据处理工具
基于大模型交互的表格处理系统,允许用户通过对话方式完成数据整理和可视化分析。系统采用机器学习算法解析用户指令,自动执行排序、公式计算和数据透视等操作,支持多种文件格式导入导出。数据处理响应速度保持在0.8秒以内,支持超过100万行数据的即时分析。


AI辅助编程,代码自动修复
Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率 的理想工具。


AI论文写作指导平台
AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文 撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。


AI一键生成PPT,就用博思AIPPT!
博思AIPPT,新一代的AI生成PPT平台,支持智能生成PPT、AI美化PPT、文本&链接生成PPT、导入Word/PDF/Markdown文档生成PPT等,内置海量精美PPT模板,涵盖商务、教育、科技等不同风格,同时针对每个页面提供多种版式,一键自适应切换,完美适配各种办公场景。


AI赋能电商视觉革命,一站式智能商拍平台
潮际好麦深耕服装行业,是国内AI试衣效果最好的软件。使用先进AIGC能力为电商卖家批量提供优质的、低成本的商拍图。合作品牌有Shein、Lazada、安踏、百丽等65个国内外头部品牌,以及国内10万+淘宝、天猫、京东等主流平台的品牌商家,为卖家节省将近85%的出图成本,提升约3倍出图效率,让品牌能够快速上架。
最新AI工具、AI资讯
独家AI资源、AI项目落地

微信扫一扫关注公众号