Sublime Text配合PlantUML优雅绘制时序图
PlantUML插件装不上?先别急,从最基本的开始排查:确认Sublime Text 4的Python路径是否正确,Ja va环境是否就绪。说白了,就是看看控制台里import sys; print(sys.executable)能不能输出有效的路径,再检查plantuml.jar的路径有没有中文或
PlantUML插件装不上?先别急,从最基本的开始排查:确认Sublime Text 4的Python路径是否正确,Ja va环境是否就绪。说白了,就是看看控制台里import sys; print(sys.executable)能不能输出有效的路径,再检查plantuml.jar的路径有没有中文或空格,文件后缀必须是.puml,代码块要以@startuml开头、@enduml结尾。另外记得关掉server模式,直接连jar包,最后配好graphviz_dot和中文字体——这套组合拳打下来,基本就能跑了。

PlantUML插件装不上?检查Python路径和Sublime Text架构匹配
Sublime Text 4默认不带Python运行时,但PlantUML插件(比如PlantUML或Sublime-PlantUML)依赖本地ja va命令和plantuml.jar。其实更关键的是——插件启动时会调用Python脚本来解析路径、发HTTP请求、管理临时文件。如果你用的是Sublime Text 4(64位),但系统里的Python是32位,或者PATH里压根没有Python可执行文件,那插件就会悄无声息地失败——没有报错,也不给你预览窗口。是不是很头疼?
- 解决办法也简单:按
Ctrl+`打开Sublime控制台,输入import sys; print(sys.executable),看看输出的路径是不是你期望的Python版本——比如/usr/bin/python3或C:\Python39\python.exe。 - 如果输出为空或报错,说明Sublime没加载到Python。这时候别急着折腾
PATH,直接用Package Control: Install Package重装插件,并且在安装前确保系统已经装了Python 3.7以上版本。 - Windows用户尤其要注意:
plantuml.jar的路径里不能有中文或空格。稳妥的做法是放在C:\plantuml\plantuml.jar,然后在插件配置里显式指定"plantuml_jar": "C:/plantuml/plantuml.jar"——注意用正斜杠,别用反斜杠。
写完时序图没反应?检查语法格式和代码块标记
PlantUML在Sublime里不是“所见即所得”的,它靠识别特定代码块来触发渲染。很多时候图出不来,问题就出在起始标记没写对、缩进位错了、或者混用了Markdown的反引号。
- 记住:必须以
@startuml开头,@enduml结尾,中间不能有莫名其妙的空行打断——尤其是从别处复制粘贴时,很容易带进不可见的字符。 - 别用
```plantuml或~~~来包裹——那是给Markdown渲染器用的。Sublime的PlantUML插件只认纯文本里的@startuml块。 - 时序图里的参与者定义要顶格写,比如
actor User,不能有缩进。消息箭头比如User -> Server: login()可以缩进,但所有符号都得用英文半角。 - 如果你保存后右键菜单里找不到
Preview PlantUML选项,说明插件压根没识别当前文件。把后缀改成.puml或.pu,或者手动把语法高亮设为PlantUML,问题就解决了。
预览图模糊/字体小/中文乱码?调整Graphviz和字体配置
PlantUML默认用Graphviz来渲染时序图,而Graphviz的字体路径、DPI设置,以及Ja va的字体渲染策略,都会直接影响输出质量。中文乱码几乎100%是因为Ja va没加载到中文字体。
- 首先确认Graphviz装好了,而且在系统
PATH里能直接调用dot -V。然后在Sublime插件配置里写上"graphviz_dot": "/usr/local/bin/dot"(macOS)或"graphviz_dot": "C:\Program Files\Graphviz2.38\bin\dot.exe"(Windows)。 - 在PlantUML代码最前面加一行配置:
skinparam defaultFontName "Microsoft YaHei"(Windows)或"PingFang SC"(macOS),并且确保系统里确实装着这个字体。 - 导出PNG时默认的DPI偏低,可以在
@startuml后面加一句skinparam dpi 150来提升清晰度。如果还是模糊,说明Graphviz输出被压缩了,这时候改用SVG输出更靠谱——插件配置里设"output_format": "svg"即可。
想一键导出PNG却提示“Connection refused”?绕过HTTP服务直连JAR
不少插件默认走http://localhost:8080去调PlantUML Server,但本地根本没启动服务,那肯定报错。其实根本用不着跑服务——直接让插件调用ja va -jar plantuml.jar更稳、更快,出了问题也更容易排查。
- 把插件配置里的
"use_server"设为false,关掉这个选项。 - 确保
"ja va_bin"指向正确的Ja va路径——比如/usr/bin/ja va,并且Ja va版本≥8(PlantUML 1.2023以后要求Ja va 11+)。 - 导出时插件会先生成一个临时
.puml文件,然后执行类似ja va -jar plantuml.jar -tpng /tmp/file.puml的命令。如果自己在终端里手动跑这行命令能出图,但在Sublime里不行,多半是插件的工作目录权限问题——把项目根目录改成可写,或者用绝对路径的cache_dir配置来绕开。
真正卡住你的,往往不是语法,而是Ja va环境、字体链路、或者插件对临时文件的路径处理。遇到问题先看控制台输出,而不是重写图。


































