在VSCode使用Markdown绘制UML图

需要插件

  • Markdown All in One
  • Markdown Preview Enhanced
  • PlantUML
  • markdownlint
  1. Markdown All in One,VSCode中支持Markdown(键盘快捷键、目录、自动预览等)
  2. Markdown Preview Enhanced可以对Markdown做增强预览,比如支持各种绘图等
  3. PlantUML,一款很强大的,并且可以绘制各种图形的脚本语言。需要安装java
  4. markdownlint是让VSCode对Markdown文档进行标记,检查。他可以提示你写的markdown是否标准

需要安装工具

  • VSCode
  • graphviz
  • java
  1. Visual Studio Code (简称 VS Code / VSC) 是一款免费开源的现代化轻量级代码编辑器,支持几乎所有主流的开发语言的语法高亮、智能代码补全、自定义热键、括号匹配、代码片段、代码对比 Diff、GIT 等特性,支持插件扩展,并针对网页开发和云端应用开发做了优化。软件跨平台支持 Win、Mac 以及 Linux。https://code.visualstudio.com/
  2. Graphviz是开源图形可视化软件。图形可视化是将结构信息表示为抽象图形和网络的图表的一种方式。它在网络,生物信息学,软件工程,数据库和网页设计,机器学习以及其他技术领域的可视化界面中有重要的应用。 http://graphviz.org/
  3. Java 运行时环境:http://java.org

使用PlantUML插件预览

  1. http://plantuml.com/下载plantuml.jar
  2. 在path配置plantuml.jar环境变量
  3. 在VSCode使用快捷键Alt+D预览PlantUML

命令

必须设置以下环境变量才能使扩展工作:原文链接


  • JAVA_HOME:Java SDK安装目录(必须有一个bin子目录)
  • Windows示例: C:\Program Files\Java\jdk1.8.0_101)
  • macOS例子: /Library/Java/JavaVirtualMachines/jdk1.8.0_101.jdk/Contents/Home
  • PLANTUML_JAR:plantuml.jar文件的路径
  • Windows示例: C:\Users\UserName\bin\plantuml\plantuml.jar
  • macOS例子: /usr/local/Cellar/plantuml/8048/libexec/plantuml.jar

如果你想使用PlantUML的功能,需要GraphViz的,你需要设置GRAPHVIZ_DOT环境变量,解释在这里

  • GRAPHVIZ_DOT:dot可执行二进制文件的路径
  • Windows示例: C:\Program Files\Graphviz\bin\dot.exe
  • macOS例子: /usr/local/Cellar/graphviz/2.38.0_1/bin/dot

设置这些环境变量后,您需要重新启动VSCode才能使扩展工作。

注意:配置完成之后,大家最好在cmd命令测试以下是否可以访问

$> plantuml.jar
$> dot.exe
### 在Markdown使用PlantUML

'''plantuml  //代码块标记为plantuml便于书写
@startuml
interface ICollectBeganManagerFactory<T>{
..创建一个ICollectBegan..
IDisposableDependencyObjectWrapper<ICollectBegan> Create(CollectTypes collectClassify);
}
note right:采集开始管理工厂接口
interface IDisposableDependencyObjectWrapper{
Object Object{get;}
}
note left of IDisposableDependencyObjectWrapper:ABP内置接口:对象包装器
IDisposableDependencyObjectWrapper <.. ICollectBeganManagerFactory : 依赖
class CollectBeganManagerFactory<T>
ICollectBeganManagerFactory <|.. CollectBeganManagerFactory : 实现
@enduml
''' ### 其它Marckdown * test1
* test2
1. test1描述
2. test2描述

PlantUML官网:http://plantuml.com/

PlantUML之UML文档:http://plantuml.com/class-diagram


在MPE Preview预览


在Markdown使用PlantUML

其它Marckdown

  • test1
  • test2
  1. test1描述
  2. test2描述

在VSCode使用Markdown绘制UML图的更多相关文章

  1. Markdown 绘制 UML 图 -- PlantUML + Gravizo(转)

    原文地址:Markdown 绘制 UML 图 -- PlantUML + Gravizo

  2. 10分钟学会使用Markdown绘制UML时序图

    1.1 什么是Markdown? Markdown是一种语法特别少.特别简单的标记语言,用来编写文档.用Markdown编写的文档是纯文本格式,经过编辑器的渲染,就会形成排 版优美的文档,本文就是用M ...

  3. 如何绘制UML图?

    首先推荐在线绘制UML的网址:https://www.processon.com/,很好用. 在软件开发过程中,开发人员往往需要通过绘制类图来理清业务的实现思路,从而方便代码实现,也便于后期的代码维护 ...

  4. 绘制UML图的工具

    目前在用processOn网站进行绘制:https://www.processon.com/ 学习其简单的入门教程: https://www.processon.com/support https:/ ...

  5. Eclipse自动生成UML图(转载)

    *ModelGoon是什么? 它是一个Eclipse插件,用于基于UML图的模型设计,以及逆向工程(即从已有源代码生成类图等,以作为代码分析或者文档使用). *适用条件 ModelGoon目前最新的版 ...

  6. eclipse下生成Java类图和时序图,生成UML图

    1.安装和使用AmaterasUML 安装AmaterasUML前,需要先安装GEF采用eclipse在线安装方式安装就好.eclipse在线安装GEF的地址:http://download.ecli ...

  7. 【UML九种图系列】之如何利用三层来绘制类图、时序图?

    UML并发视图:实体之间行为的交互,是动态.分为:时序图.协作图.状态图.活动图 一.时序图简述: 时序图(Sequence Diagram):描述对象之间的交互行为,按照时间顺序排列. 元素: 角色 ...

  8. 使用mermain用Markdown的语法画流程图和UML图

    博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:使用mermain用Markdown的语法画流程图和UML图.

  9. CentO7-使用plantuml绘制UML类图

    准备工作 到PlantUml官网(http://plantuml.com/download)下载plantuml.jar.官网上还有一个在线的demof服务.plantuml的官网真的很挫! 到官网下 ...

随机推荐

  1. JAVASE(说出ArrayList,LinkedList的储存性能和特性)

    说出ArrayList,和LinkedList的储存性能和特性? 答: ##  ArrayList采用的是数组形式来保存对象的,这种方式将对象放在连续的位置中,优点是索引读取快,从最后插入和删除元素速 ...

  2. Java 实时论坛 - Sym 1.4.0 发布

    简介 Sym 是一个用 Java 写的实时论坛,欢迎来体验! 如果你需要搭建一个企业内网论坛,请使用 SymX. 作者 Sym 的主要作者是 Daniel 与 Vanessa,所有贡献者可以在这里看到 ...

  3. Java中的数据类型转换

    先来看一个题: Java类Demo中存在方法func0.func1.func2.func3和func4,请问该方法中,哪些是不合法的定义?( ) public class Demo{ float fu ...

  4. Android学习笔记(3)----手机调试[OFFLINE]的解决方式

    问题描述 今天用Android Studio开发了一个简单的调用摄像头的App,结果想调试的时候发现选择调试设备的对话框中,手机名称后面总是跟着一个[OFFLINE]的标识,只能选择启动AVD来进行调 ...

  5. openlayers研究(一) 初始化流程

    下载2.13.1.解压缩.根据readme解释,openlayers.js是一个压缩库,.light是一个图像显示的简化库,mobile顾名思义应该是应对移动设备的库.build里面有py写的打包工具 ...

  6. [iOS] UIFont 设置字体

    label.font = [UIFont fontWithName:@"Arial-BoldItalicMT" size:24]; 字体名如下: Font Family: Amer ...

  7. php中http_build_query函数

    http_build_query ( array $formdata [, string $numeric_prefix ] ) 使用给出的关联(或下标)数组生成一个经过 URL-encode 的请求 ...

  8. Software Testing Techniques Homework 1

    I have met some errors in recent years, one of them which impress me most. It happend when I try to ...

  9. WCF--找不到具有绑定 BasicHttpBinding 的终结点的与方案 https 匹配的基址。注册的基址方案是 [http]。

    <system.serviceModel> <services> <service name="xxxxx.xxxxxx"> <endpo ...

  10. 简单的3proxy配置

    timeouts 1 5 30 60 180 1800 15 60log "D:\Program Files\3proxy-0.6.1-x64\cfg\3proxy.log" Dl ...