vscode快速渲染uml,助力源码阅读。
vscode快速渲染uml目的为什么要用VSCOde 生成 uml 类图。用idea不香吗?idea生成一个类的uml类图还是很不错的。但是当时生成整个项目或则某个包下的uml就不方便了。也有可能是我不知道方便的办法。安装插件具体安装方式百度 vscode plantumlbash 过滤出类windows 下可以用git自带的bash。或则用wslfind . -name '*.java' | x
·
vscode快速渲染uml
目的
为什么要用VSCOde 生成 uml 类图。用idea不香吗?idea生成一个类的uml类图还是很不错的。但是当时生成整个项目或则某个包下的uml就不方便了。也有可能是我不知道方便的办法。
安装插件
具体安装方式百度 vscode plantuml
bash 过滤出类
windows
下可以用git
自带的bash
。或则用wsl
find . -name '*.java' | xargs cat | \
awk -vRS='{' 'match($0,/public\s+((class|interface).+(extends|implements).+$)/,a){print a[1] "#" }' | \
awk -vRS="" '{gsub("\n"," ");print}'| awk -vRS="" '{gsub("#","\n");print}'> a.puml
bash命令解释
find . -name '*.java' | xargs cat
用find
命令找出所有java
文件的路径用cat
命令合并
awk -vRS='{' 'match($0,/public\s+((class|interface).+(extends|implements).+$)/,a){print a[1] "#" }'
设置把awk的行分割符RS改为{
,再用正则public\s+((class|interface).+(extends|implements).+$
匹配类名或接口名。
输出第一个捕获组和一个#
,#
用于后面分割。
awk -vRS="" '{gsub("\n"," ");print}'| awk -vRS="" '{gsub("#","\n");print}'> a.puml
第一个awk
把换行删去。把文件合并成一行。第二个awk
再把#
换成换行符\n
修改puml
文件
以halo
开源项目为例
用vscode
的正则去掉所有泛型后
你会得到一个这样的文件
头部加上@startuml halo
尾部加上 @enduml
按快捷键alt+d
预览。
如果报错多半是因为语法错误。
可以参考官网教程
ctrl+shift+p
输出为svg.
效果
更多推荐
已为社区贡献1条内容
所有评论(0)