Markdown里面的序列图

Markdown里面的序列图

关于Markdown里面的流程图,请移步这里。

在众多的markdown编辑器中,作者使用Typora, 它具有实时渲染可见与编辑的特点, 并且还支持自定义渲染效果(只需要更改CSS文件即可). 该软件的流程图由 js-sequence支持, 序列图的代码段包裹在markdown格式的代码块中, 只需要更改相应的标记即可. 例如:

​```sequence
title: 序列图sequence(示例)
participant A
participant B
participant C

note left of A: A左侧说明
note over B: 覆盖B的说明
note right of C: C右侧说明

A->A:自己到自己
A->B:实线实箭头
A-->C:虚线实箭头
B->>C:实线虚箭头
B-->>A:虚线虚箭头
​```

这段代码渲染出来的流程图如下:

Created with Raphaël 2.1.0 序列图sequence(示例) A A B B C C A左侧说明 覆盖B的说明 C右侧说明 自己到自己 实线实箭头 虚线实箭头 实线虚箭头 虚线虚箭头

其主要有以下几种关键词:

  1. title, 定义该序列图的标题
  2. participant, 定义时序图中的对象
  3. note, 定义对时序图中的部分说明
  4. {actor}, 表示时序图中的具体对象(名称自定义)

其中针对note的方位控制主要包含以下几种关键词:

  1. left of, 表示当前对象的左侧
  2. right of, 表示当前对象的右侧
  3. over, 表示覆盖在当前对象(们)的上面

其中针对{actor}的箭头分为以下几种:

  1. -> 表示实线实箭头
  2. –> 表示虚线实箭头
  3. ->> 表示实线虚箭头
  4. –>> 表示虚线虚箭头

另外,时序图中的对象定义语句可以忽略,note语句还识别换行符,如下:

​```sequence
颜回->孔子: 吃饭了没?
note right of 孔子: 孔子思考\n如何回答
孔子-->颜回: 吃过了。你咧?
颜回->>孔子: 吃过了,吃过了!
​```
Created with Raphaël 2.1.0 颜回 颜回 孔子 孔子 吃饭了没? 孔子思考 如何回答 吃过了。你咧? 吃过了,吃过了!

总结来说js-sequence模块对sequence代码的语法解析执行过程如下图(图来自Railroad Diagram Generator):

the syntax for the diagrams

关于Markdown里面的流程图,请移步这里。

你可能感兴趣的:(Markdown里面的序列图)