Markdown基础语法教学
Markdown语法
简要介绍
Markdown是一种轻量级标记语言,创始人为约翰·格鲁伯
它允许人们使用易读易写的纯文本格式编写文档,是一类用简单句法描述简单格式的文本语言
由于Markdown的轻量化、易读易写特性,并且对于图片,图表、数学式都有支持,目前许多网站都广泛使用Markdown来撰写帮助文档,例如Github,Reddit,简书,CSDN等等,甚至还能被用来撰写电子书
它的学习成本很低,十分钟就能够掌握这个技巧,如果不需要对文本内容进行非常精细的排版的话,使用Markdown语法能极大提高我们的效率
实际应用
所有要写文本的时候都可以用上 Markdown
它可以让你不再纠结什么字体, 什么样式, 什么排版. 而且逻辑清晰, 层次分明.
你可以用Markown语法写各种笔记, 演讲稿, 课程论文, 实验报告, 代码的 README.md
... 包括本教程文档.
We believe that writing is about content, about what you want to say – not about fancy formatting.
我们坚信写作写的是内容,所思所想,而不是花样格式。
——Ulysses for Mac
基础教程
0. 写 Markdown 的第零步
我们写文本的时候大多写的是中文, 输入法在输中文时使用的标点默认为中文半角标点, 如 ,。?!()【】:;“”
. 这些标点无法被 Markdown 识别的
在使用 Markdown 语法的时请使用半角英文标点,如 ,.?!()[]:;""
,此外最好在每一行的末尾添加两个空格+回车表示换行,虽然现在许多编辑器允许不按这个标准格式执行换行,但这可能导致兼容性问题
1. 标题
# 这是一级标题
正文1
## 这是二级标题
正文1
### 这是三级标题
正文1
#### 这是四级标题
正文1
##### 这是五级标题
正文1
###### 这是六级标题
正文1
标题会在目录与大纲分级显示, 可以跳转,因为大纲会自动缩进排序,所以这里不显示一二级标题的效果
这是三级标题
正文1
这是四级标题
正文1
这是五级标题
正文1
这是六级标题
正文1
2. 倾斜与加粗
倾斜:在需要倾斜的文本两侧加上*或_
这是*倾斜*文本
这也是_倾斜_文本
这是倾斜文本
这也是_倾斜_文本
加粗:在需要加粗的文本两侧加上**或__
这是**加粗**文本
这也是__加粗__文本
这是加粗文本
这也是__加粗__文本
倾斜并加粗:在需要倾斜并加粗的两侧加上三个***或者___
这是***倾斜***并___加粗___文本
这是倾斜并___加粗___文本
3. 删除线
在需要添加删除线的文本两侧加上~~
~~你就当我没说过这句话吧~~
你就当我没说过这句话吧
4. 代码和代码块
代码:在需要标识为代码的文本两侧加上`
`sudo rm -rf /*`
sudo rm -rf /*
代码块:在需要标识为代码块的上下行加上```
此外,许多编辑器支持代码块的高亮显示功能
将第一行的```改为``` 空格 代码语言 即可
使用代码与代码块功能,在复制代码时不容易出现格式错误等问题
``` C
#include <stdio.h>
int main()
{
print("Hello, world!\n");
return 0;
}
``` (别管这个括号)
#include <stdio.h>
int main()
{
print("Hello, world!\n");
return 0;
5. 列表
无序列表:在需要设为无序列表的内容前面加上-/+/* 空格
- 你好,世界
+ 你好,中国
* 你好,武汉
- 你好,世界
- 你好,中国
- 你好,武汉
有序列表:在需要设为有序列表的内容前面加上 数字. 空格
1. 绝对不意气用事
2. 绝对不漏判任何一件坏事
3. 绝对裁判的公正漂亮
- 绝对不意气用事
- 绝对不漏判任何一件坏事
- 绝对裁判的公正漂亮
6. 引用
在需要标识为引用文本的内容前加上 > 空格,此外,引用是可以嵌套使用的
> We believe that writing is about content, about what you want to say – not aboutfancy formatting.
——Ulysses for Mac
>>我们坚信写作写的是内容,所思所想,而不是花样格式。
We believe that writing is about content, about what you want to say – not aboutfancy formatting.
——Ulysses for Mac
我们坚信写作写的是内容,所思所想,而不是花样格式。
7. 表格
用 | 绘制表格边框,第一行是表标题
第二行是分割线,可以设定对齐方式,:-为靠左对齐,-:为靠右对齐,:-:为居中对齐
第三行及后面所有行是表格数据
|Markdown语法|详解|快捷键|效果|
|:-|-:|:-:|-|
|*斜体*|无|Ctrl/⌘ + I|*斜体*|
|**粗体*\*|无|Ctrl/⌘ + B|**粗体**|
|***斜体+粗体***|无|无|***斜体+粗体***|
Markdown语法 | 详解 | 快捷键 | 效果 |
---|---|---|---|
*斜体* | 无 | Ctrl/⌘ + I | 斜体 |
**粗体** | 无 | Ctrl/⌘ + B | 粗体 |
***斜体+粗体*** | 无 | 无 | 斜体+粗体 |
8. 链接和图片
链接:格式为 [文本标识](链接)
[点击这里获取问题答案的速度比问别人更快](http://www.baidu.com)
图片:格式为 ![](图片位置)
图片可以是网络图片也可以是本地图片,插入图片的格式与链接的格式一致,但在[]前加入!可以预览图片
![示例图片](D:\Desktop\示例图片.jpg)
![自我介绍](https://img1.doubanio.com/view/group_topic/l/public/p205220828.webp)
![示例图片](D:\Desktop\示例图片.jpg)
9. 任务列表
使用 - 空格 [空格] 空格 创建一个代办列表
使用 - 空格 [x] 空格 创建一个已完成列表
代办清单:
- [ ] 背20个单词
- [ ] 学习C语言
- [x] 打两局游戏
代办清单:
10. 分割线
输入***或者---或者___然后按Enter键创建分割线
***
正文1
---
正文2
___
正文3
正文1
正文2
正文3
11. Emoji 表情
Emoji表情内嵌于Unicode编码中,因此可以直接被Markdown语法识别
部分编辑器支持以特定代码插入Emoji表情
不支持代码转换插入的编辑器可以直接复制粘贴Emoji表情到编辑器中
灵活运用Emoji表情可以让你的文档看起来十分生动有趣可爱(但是我不会😭)
🔍顺便推荐一个可以复制Emoji表情的网站Emoji表情大全
进阶教程
1. HTML 语法
HTML又称超文本标记语言,和Markdown一样也是一种标记语言
书写起来比Markdown复杂很多,但能实现更丰富的排版效果
通常和CSS层叠样式表与JavaScript一起用于网页设计中
Markdown是直接兼容的HTML的,你可以直接在编辑器内输入HTML内容
甚至可以直接将写好的Markdown文件转换成html文件
<font style="color:red">通过HTML语言实现更改文字颜色 </font>
<center>文字居中</center>
<u>下划线</u>
通过HTML语言实现更改文字颜色
2. \(\LaTeX\) 数学公式
LaTeX是一种排版系统, 经常被用于输入数学公式与大型论文排版中
大家作为计算机系的学生,未来考研上岸后可能会经常使用到LaTeX
在Markdown中使用LaTeX的方法与代码块类似,用$将两侧括起来
$a^n+b^n=c^n$
$$
%\usepackage{unicode-math}
\displaystyle \ointctrclockwise\mathcal{D}[x(t)]
\sqrt{\frac{\displaystyle3\uppi^2-\sum_{q=0}^{\infty}(z+\hat L)^{q}
\exp(\symrm{i}q^2 \hbar x)}{\displaystyle (\symsfup{Tr}\symbfcal{A})
\left(\symbf\Lambda_{j_1j_2}^{i_1i_2}\Gamma_{i_1i_2}^{j_1j_2}
\hookrightarrow\vec D\cdot \symbf P \right)}}
=\underbrace{\widetilde{\left\langle \frac{\notin \emptyset}
{\varpi\alpha_{k\uparrow}}\middle\vert
\frac{\partial_\mu T_{\mu\nu}}{2}\right\rangle}}_{\mathrm{K}_3
\mathrm{Fe}(\mathrm{CN})_6} ,\forall z \in \mathbb{R}
$$
\(a^n+b^n=c^n\)
总结
至此Markdown基础语法的学习就全部结束了,只需要花十分钟内就能学会这个技巧,剩下的就是在实践中慢慢熟练它,当你掌握它后,你会发现自己写笔记,写日记会更加行云流水
此外部分编辑器支持一些拓展功能,但我不可能在这篇文档内全部演示完,具体就请自己在使用
过程中配合搜索引擎慢慢研究吧