MarkDown笔记
MarkDown是一款轻量级的标记语言,它允许人们使用易读易写的纯文本格式编写文档。
文档的的后缀是以“.md”或者“.markdown”
本文的内容参考菜鸟教程<https://www.runoob.com/>,只供自己学习复习使用,没有任何商业目的。
使用编辑的编辑器为typora,有Windows,Mac,Linux版本的,可以根据需要进行下载。
第一部分:标题
1、第一种方法:使用“=”或者“-”
用“=”表示:显示第一标题
需要在要显示的标题下方使用两个“=”

显示结果:

用“-”表示:显示第二标题
需要在要显示的标题下方使用两个“-”

显示结果:

2、第二种方法:使用“#”
在每一个要显示的前面使用“#”来表示标题的等级,MarkDown中支持最高的是6级标题

显示结果:

注意:格式符合字体之间有空格
第二部分:段落格式+字体格式
1、段落
在MarkDown中的段落换行使用回车来进行换行,在这里没有什么好解释的
2、字体格式
在MarkDown中的字体格式有三种:斜体,粗体,粗斜体,具体的表示见下面的例子:

显示结果:

注意:格式符和字体之间没有空格
3、分隔线
在编辑文档的时候有时候需要使用分隔线来进行文档分隔,来使得显示更加清晰,区别于下划线。
在MarkDown中使用了三个以上的“星号”或“减号”或“下划线”来进行分隔:

显示结果:

4、删除线
在编辑文档的时候,有时候需要展现自己的文档修改过程,因此删除线就显得尤为重要:
使用两个 “~”

显示结果:

5、下划线
下划线使用类似于HTML的格式来进行的,具体的内容见下面的例子:

显示结果:

6、脚注
在写文档的时候,有时候会对专有名词进行解释,然而又不想占用一定的空间去解释,所以使用脚注将会特别方便
在MarkDown中使用脚注的方法见下面的例子:

显示结果:

第三部分:列表排序
1、无序列表
在MarkDown中使用“星号”或者“加号”或者“减号”来进行标识,格式符与字符之间要加空格:

显示结果:

2、有序列表
有序的标题的时候使用,注意点后面有空格:

显示结果:

3、列表嵌套使用
在有序中嵌套无序,或者在有序中嵌套无序,嵌套的部分使用四个空格来进行区分,具体见下面的例子:

显示结果:

第四部分:区块
1、基本使用方法
在MarkDown中,用一个“>”来展现具体的文档层级关系,见下面的例子:

显示结果:

2、列表中嵌套区块
在嵌套的时候,利用四个空格来进行缩进区分

显示结果:

3、区块中嵌套列表
相关代码示例:

显示结果:

第五部分:代码
1、单行代码
如果只是一行代码,用英文的反引号(切换成英文输入法,按!旁边的键既可打出)括起来就行:

显示结果:

2、代码区块
使用四个空格,或者一个Tab键来进行控制格式:

显示结果:

也可以使用三个反引号,可包裹一段代码,并且可以指定语言(也可以不指定):

显示结果:(可以对比于上面发现代码变了颜色)

第六部分:插入链接
1、文字代替链接
具体的功能不做过多的阐述,例子说话:

显示结果:

2、直接使用网站地址

显示结果:

3 、高级链接
链接的地可以用变量来表示,之后在后面填补上变量对应的链接地址:

显示结果:

第七部分:插入图片

显示结果:

也可以使用和前面所说的高级链接使用方法相同:

显示结果:

在MarkDown中使用类似于HTML中的语句可以改变图片的大小

显示结果:(点击图片之后源码会消失)

第八部分:表格
1、插入表格
在MarkDown中使用“|”来分隔元素,使用“-”(个数无所谓),来分隔表头

显示结果:

2、对齐格式
直接通过例子看内容,如下例子:

显示结果:

第九部分:高级技巧
1、支持HTML元素
目前支持的 HTML 元素有:<kbd> <b> <i> <em> <sup> <sub> <br>等

显示结果:

2、转义
MarkDown中的转义和一些编程中的字符转义类似,使用“\”来转义,目前支持的反斜杠转义有:

示例:

显示结果:

3、编辑公式
公式用两个$进行包裹
\frac{\mathbf{V}_1}{\mathbf{V}_2 } 表示的是V1除以V2
矩阵中的相邻值用&符连接,一行结束用\\
\begin{vmatrix} 矩阵的内容 \end{vmatrix}
\partial X:表达塔西x


$$
\mathbf{V}_1 \times \mathbf{V}_2 =
\begin{vmatrix}
\mathbf{i} & \mathbf{j} & \mathbf{k} \\
\frac{\partial X}{\partial u} & \frac{\partial Y}
{\partial u} & 0 \\
\frac{\partial X}{\partial v} & \frac{\partial Y}
{\partial v} & 0 \\
\end{vmatrix}
\$$
$$
显示结果:

备注:这部分是菜鸟教程上面的例子,还有待于后续的好好总结和学习
4、画图
由于在学习这部分的时候使用的时间较短,该部分使用的例子是菜鸟教程中的,为了方便以后的使用。
4.1、流程图
横向流程图
```mermaid
graph LR
A[方形] -->B(圆角)
B --> C{条件a}
C -->|a=1| D[结果1]
C -->|a=2| E[结果2]
F[横向流程图]
```
显示结果:

竖向流程图
```mermaid
graph TD
A[方形] --> B(圆角)
B --> C{条件a}
C --> |a=1| D[结果1]
C --> |a=2| E[结果2]
F[竖向流程图]
```

标准流程图
```flow
st=>start: 开始框
op=>operation: 处理框
cond=>condition: 判断框(是或否?)
sub1=>subroutine: 子流程
io=>inputoutput: 输入输出框
e=>end: 结束框
st->op->cond
cond(yes)->io->e
cond(no)->sub1(right)->op
```

横向标准流程图
```flow
st=>start: 开始框
op=>operation: 处理框
cond=>condition: 判断框(是或否?)
sub1=>subroutine: 子流程
io=>inputoutput: 输入输出框
e=>end: 结束框
st(right)->op(right)->cond
cond(yes)->io(bottom)->e
cond(no)->sub1(right)->op
```

4.2、顺序图
UML时序图
```sequence
对象A->对象B: 对象B你好吗?(请求)
Note right of 对象B: 对象B的描述
Note left of 对象A: 对象A的描述(提示)
对象B-->对象A: 我很好(响应)
对象A->对象B: 你真的好吗?
```

UML时序图(复杂)
```sequence
Title: 标题:复杂使用
对象A->对象B: 对象B你好吗?(请求)
Note right of 对象B: 对象B的描述
Note left of 对象A: 对象A的描述(提示)
对象B-->对象A: 我很好(响应)
对象B->小三: 你好吗
小三-->>对象A: 对象B找我了
对象A->对象B: 你真的好吗?
Note over 小三,对象B: 我们是朋友
participant C
Note right of C: 没人陪我玩
```

UML标准时序图
```mermaid %% 时序图例子,-> 直线,-->虚线,->>实线箭头 sequenceDiagram participant 张三 participant 李四 张三->王五: 王五你好吗? loop 健康检查 王五->王五: 与疾病战斗 end Note right of 王五: 合理 食物 <br/>看医生... 李四-->>张三: 很好! 王五->李四: 你怎么样? 李四-->王五: 很好! ```
4.3、甘特图
```mermaid
%% 语法示例
gantt
dateFormat YYYY-MM-DD
title 软件开发甘特图
section 设计
需求 :done, des1, 2014-01-06,2014-01-08
原型 :active, des2, 2014-01-09, 3d
UI设计 : des3, after des2, 5d
未来任务 : des4, after des3, 5d
section 开发
学习准备理解需求 :crit, done, 2014-01-06,24h
设计框架 :crit, done, after des2, 2d
开发 :crit, active, 3d
未来任务 :crit, 5d
耍 :2d
section 测试
功能测试 :active, a1, after des3, 3d
压力测试 :after a1 , 20h
测试报告 : 48h
```

浙公网安备 33010602011771号