一、Markdown 简介
Markdown 是一种轻量级标记语言,它允许人们使用易读易写的纯文本格式编写文档。
Markdown 语言在 2004 由约翰·格鲁伯(英语:John Gruber)创建。
Markdown 编写的文档可以导出 HTML 、Word、图像、PDF、Epub 等多种格式的文档。
Markdown 编写的文档后缀为 .md, .markdown。
二、Markdown 语法
1、标题
标题有两种方式显示,一种是用(任意个) = 和 - 标记一级和二级标题;另一种是用一到六个 # 标记 h1~h6。如下所示:
1 | 一级标题 |
1 | # h1 |
2、段落格式
普通回车会被识别为空格而非分段标记,只有在段末双击回车或者空格才能实现换行。双击回车两段之间隔行,双击空格只分段不隔行。
字体
Markdown只有以下三种字体选择:
1 | *斜体文本* |
分隔线
你可以在一行中用三个以上的星号、减号、底线来建立一个分隔线,行内不能有其他东西。你也可以在星号或是减号中间插入空格。
下划线
下划线可以通过<u></u>
这对标签来实现。
删除线
如果段落上的文字要添加删除线,只需要在文字的两端加上双波浪线~~
即可。
脚注
脚注是对文本的补充说明。
Markdown 脚注的格式如下:
1 | 这是需要插入脚注的文字[^1] |
3、列表
Markdown 支持有序列表和无序列表。
无序列表使用星号*
、加号+
或是减号-
作为列表标记;有序列表用数字加.
做标记。
列表可以嵌套,只需在子列表前添加若干空格即可,但是必须确保同级列表缩进一致。
4、区块
Markdown 区块引用是在段落开头使用>
符号加空格,使用若干>
可以多层嵌套。区块中可以套用列表,列表中也可以套用区块,但是需要在>
前至少添加两个空格缩进,效果如下:
第一层
第二层
第二层中的列表:
列表中套用的区块
第三层(老千层饼了)
双击回车可以退出区块引用。
5、代码
段落内代码
段落上的一个函数或片段的代码可以用反引号包裹。
代码区块
代码区块有两种实现方法,第一种是使用4个空格或者敲击Tab键表示;第二种是用一对```
包裹一段代码(夹在中间),可以在第一组反引号末尾指定一种语言。
6、链接
链接使用方法如下:
1 | [链接名称](链接地址) |
或者:
1 | <直接显示链接地址> |
还可以通过变量设置链接,在文末对变量赋值:
1 | 这个链接用1作为网址变量(也可以用其它字符串作变量) [以我博客为例][1] |
7、图片
Markdown 图片语法格式如下:
1 | ![alt 替代文本](图片地址 "可选标题") |
如果需要指定图片的属性,可以用<img>
标签。
8、锚点
锚点类似于链接,功能是跳转到当前文本想要的标题位置,使用锚点可以实现类似于目录的功能。使用方法如下:
1 | [显示文本](#标题) |
注意,()中的标题格式是决定跳转是否成功的关键。首先,#后面不需要空格,几个#都无所谓,不影响跳转;其次,在原本标题的基础上,需要删除标题中的全部标点符号,英文字母全部小写处理;最后,全部空格都替换成-。
9、表格
表格使用
绘制表格用|
来分隔不同的单元格,使用若干个-
来分隔表头和其他行。
可以通过:
位置设计对齐方式,表格默认左对齐,格式如下:
1 | | 左对齐 | 右对齐 | 居中对齐 | |
三、Markdown 拓展
1、原生支持
HTML 元素
Markdown 支持<kbd>
<b>
<i>
<em>
<sup>
<sub>
<br>
等HTML标签,若有不支持的标签,可以将源码写入<html></html>
标签中即可显示。
转义
Markdown 使用了很多特殊符号来表示特定的意义,如果需要显示特定的符号则需要使用\
加在末尾符号前转义特殊字符,例如:
1 | **shenme\*\* |
特殊符号
使用方法 | 示例 |
---|---|
® | ® |
ƒ | ƒ |
√ | √ |
° | ° |
更多符号详参:http://blog.csdn.net/html5_/article/details/21639475
2、扩展支持
当需要使用数学公式时,可以使用两个美元符$$
包裹 TeX 或 LaTeX 格式的数学公式,但必须确保有相应的引擎渲染。例如:
$$
\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}
${$tep1}{\style{visibility:hidden}{(x+1)(x+1)}}
$$
3、Typora 图表支持
Typora 的图表支持均可以在 Mermain Live Editor 网站上进行编辑,可以复制代码或者将生成的图表下载下来,或者获取URL。
横向流程图
1 | graph LR |
纵向流程图
1 | graph TD |
时序图
1 | sequenceDiagram |
状态图
1 | stateDiagram-v2 |
流程图
1 | st=>start: 开始框 |
饼图
1 | pie title 答题人数统计:马老师的门派叫什么? |
甘特图
1 | %% 语法示例 |