2 markdown基本语法
2.2 增加段间距
用<br>
,每多一个就多一次换行;或
,表示一个空段落。
正常段间距
正常段间距
连续两次换行<br>
后得到本行,虽然看上去行距很大,但仍在一段中
中间隔了一个空段落,显然段间距更大。空段落可以叠加
2.5 参考文献
markdown 其实并无格式化参考文献的语法,但可以利用 html 的脚注语法手动实现——只适合写简易文章的场合。
<sup><a href="#ref1">[101]</a></sup>
This is a test sentence.<sup><a href="#ref2">[102]</a></sup> This is a test sentence.
最后在文章结尾处写:
Reference<a name="ref1">[101] 文献引用1</font></a>
<a name="ref2">[102] 文献引用2</font></a>
效果为:
This is a test sentence.[101]
This is a test sentence.[102]
Reference
2.8 链接
2.8.1 直接表示:
格式为<地址>
或地址
(仅限 http 和 www 开头,这是 GFM 扩展语法)。如:百度的网址是 http://www.baidu.com 或 www.baidu.com,我的邮箱是 humoonruc@126.com。
2.8.2 行内链接
格式为[链接名](地址)
。如:点击超链接百度
2.9 图片
行内图片:

不建议使用这种方法,编译pdf有时会报错。引用式图片:与链接类似,也可以在文章某处定义图片的标识符,然后把行内图片引用中图片地址替换成图片标识符即可。
2.10 列表
2.11 任务列表
2019年读书计划
- [x] 《R in Action》
- [x] 《R for Data Science》
- [ ] 《Python 疯狂讲义》
- 《R in Action》
- 《R for Data Science》
- 《Python 疯狂讲义》
2.12 管道表
Tables | Are | Cool |
---|---|---|
col 3 is | right-aligned | $1600 |
col 2 is | centered | $12 |
zebra stripes | are neat | $1 |
注:
- 英文冒号 : 使列获得了某种对齐方式。
- 代码块和引用块不能插入表格。
- 管道表不允许输入单元格换行,单元格内容太宽时转换结果可能自动换行。
Table: (\#tab:label) text
,为markdown简易表自动加表编号和表名(text),写在简易表的前后均可。
2.16 公式
2.16.2 独立成行的公式
将公式包含在$$ $$
之间,如:
$$
f(x)=\frac{1}{2} \sum_{j=1}^{\infty} \int_{0}^{1} \sin ^{2}(j t x) d t $$
\[ f(x)=\frac{1}{2} \sum_{j=1}^{\infty} \int_{0}^{1} \sin ^{2}(j t x) d t \]
为了产生对齐的公式,或在某些 markdown 编辑器中成功渲染出独立成行的公式,可使用 aligned 环境。
公式中的环境以\begin{环境名}
开始,以\end{环境名}
结束,用\\
表示换行,用&
表示一个上下对齐位置。如:
$$
\begin{aligned}\\
f(x) =& \sum_{k=0}^\infty \frac{1}{k!} x^k
=& e^x
\end{aligned} $$
\[ \begin{aligned} f(x) =& \sum_{k=0}^\infty \frac{1}{k!} x^k \\ =& e^x \end{aligned} \]
2.19 Mermaid
2.19.1 什么是Mermaid?
- Mermaid是一种基于Javascript的绘图工具,使用类似于Markdown的语法,使用户可以方便快捷地通过代码创建图表。
- 项目地址:https://github.com/mermaid-js/mermaid
2.19.2 图类型
- 饼状图:使用
pie
关键字,具体用法后文将详细介绍 - 流程图:使用
graph
关键字,具体用法后文将详细介绍 - 序列图:使用
sequenceDiagram
关键字 - 甘特图:使用
gantt
关键字 - 类图:使用
classDiagram
关键字 - 状态图:使用
stateDiagram
关键字 - 用户旅程图:使用
journey
关键字
2.19.3 饼图
语法
- 从
pie
关键字开始图表 - 然后使用
title
关键字及其在字符串中的值,为饼图赋予标题。(这是可选的) - 数据部分
- 在
" "
内写上分区名。 - 分区名后使用
:
作为分隔符 - 分隔符后写上数值,最多支持2位小数——数据会以百分比的形式展示
- 在
- 从
实例
pie
title 为什么总是宅在家里?
"喜欢宅" : 15
"天气太热或太冷" : 20
"穷" : 500
2.19.4 流程图
2.19.4.1 实例
graph LR
A[Start] --> B{Is it?};
B -- Yes --> C[OK];
C --> D[Rethink];
D --> B;
B -- No ----> E[End];
2.19.4.3 结点
- 无名字的结点:直接写内容,此时结点边框为方形;节点内容不能有空格
- 有名字的结点:节点名后书写内容,内容左右有特定符号,结点边框由符号决定;节点内容可以有空格
下面的实例中,没有为graph指定方向,因此默认是从上往下的。但是由于各个结点之前没有箭头,所以他们都处于同一排。
graph
默认方形
id1[方形]
id2(圆边矩形)
id3([体育场形])
id4[[子程序形]]
id5[(圆柱形)]
id6((圆形))
graph
id1{菱形}
id2{{六角形}}
id3[/平行四边形/]
id4[\反向平行四边形\]
id5[/梯形\]
id6[\反向梯形/]
2.19.4.4 连线样式
- 实线箭头:分为无文本箭头和有文本箭头,有文本箭头有2种书写格式
graph LR
a-->b--文本1-->c-->|文本2|d
- 粗实线箭头:分为无文本箭头和有文本箭头
graph LR
a==>b==文本==>c
- 虚线箭头:分为无文本箭头和有文本箭头
graph LR
a-.->b-.文本.->c
- 无箭头线:即以上三种连线去掉箭头后的形式
graph LR
a---b
b--文本1---c
c---|文本2|d
d===e
e==文本3===f
f-.-g
g-.文本.-h
- 其他连线:需要将
graph
关键字改为flowchart
,除了新增加的连线形式外,上面三种线的渲染效果也会不同
flowchart LR
A o--o B
B <--> C
C x--x D
旧连线 --文本--> 也会不同
- 延长连线:增加相应字符即可,如下图中的B到E,连线中增加了一个
-
。字符可多次添加。
graph LR
A[Start] --> B{Is it?};
B -->|Yes| C[OK];
C --> D[Rethink];
D --> B;
B --->|No| E[End];
2.19.4.5 连线形式
- 直链
graph LR
A -- text --> B -- text2 --> C
- 多重链:可以使用
&
字符,或单个描述
graph
a --> b & c--> d
A & B--> C & D
X --> M
X --> N
Y --> M
Y --> N
2.19.4.6 其他
- 子图:需要将
graph
关键字改为flowchart
,在代码段的开始加入subgraph
,尾部加入end
flowchart TB
c1-->a2
subgraph one
a1-->a2
end
subgraph two
b1-->b2
end
subgraph three
c1-->c2
end
one --> two
three --> two
two --> c2
- 注释:在行首加入
%%
即可。
graph LR
%%这是一条注释,在渲染图中不可见
A[Hard edge] -->|Link text| B(Round edge)
B --> C{Decision}
C -->|One| D[Result one]
C -->|Two| E[Result two]