如果你追求极简,恨不得直接用记事本来写文章,那么Markdown将会是你的得力工具。因为它简单,优雅,只需几个标记,就能使你的文章排版显得自然美观。文章洋洋洒洒,一气呵成,预览所见即所得,排版简洁大方。

花几分钟学会Markdown,绝对让你受益终生。

Markdown是什么

Markdown是一种文本标记语言,它通过在文本中增加简单标记,实现文本的格式化。利用Markdown,你可以轻松的实现分段、分级标题、插入链接,插入图片、插入视频等功能。github、Stackoverflow、简书等网站均支持Markdown格式。Markdown的目标是易读易写。保存的文件名后缀为‘.md’.

Markdown语法

Markdown的语法本来就非常简单,但是有些功能实现方式有多种,为了更加简洁,本文只取其中最直观,好理解,便于记忆的一种。毕竟写文章不需要知道“回”字的四种写法。

标题

标题使用#号来表示,请注意#号和标题之间有一个空格。类似的Markdown标记与文本之间一般都会有个空格。

1
2
3
# 一级标题
## 二级标题
### 三级标题

这段语法效果如下:

一级标题

二级标题

三级标题

按照这个规律标题可以分为很多级,建议在文章中使用不超过三级标题。

段落与换行

如果你需要分段,只需要在段与段之间留有空白行:

1
2
3
古之学者必有师。师者,所以传道受业解惑也。人非生而知之者,孰能无惑?惑而不从师,其为惑也,终不解矣。生乎吾前,其闻道也固先乎吾,吾从而师之;生乎吾后,其闻道也亦先乎吾,吾从而师之。吾师道也,夫庸知其年之先后生于吾乎?是故无贵无贱,无长无少,道之所存,师之所存也。

嗟乎!师道之不传也久矣!欲人之无惑也难矣!古之圣人,其出人也远矣,犹且从师而问焉;今之众人,其下圣人也亦远矣,而耻学于师。是故圣益圣,愚益愚。圣人之所以为圣,愚人之所以为愚,其皆出于此乎?爱其子,择师而教之;于其身也,则耻师焉,惑矣。彼童子之师,授之书而习其句读者,非吾所谓传其道解其惑者也。句读之不知,惑之不解,或师焉,或不焉,小学而大遗,吾未见其明也。巫医乐师百工之人,不耻相师。士大夫之族,曰师曰弟子云者,则群聚而笑之。问之,则曰:“彼与彼年相若也,道相似也。位卑则足羞,官盛则近谀。”呜呼!师道之不复,可知矣。巫医乐师百工之人,君子不齿,今其智乃反不能及,其可怪也欤!

如果是想在同一个段落里另起一行,则只需要在第二行末尾空两格:

1
2
第一行      //此处末尾两次空格键盘后回车,即space space enter
第二行

这段语法效果如下:

古之学者必有师。师者,所以传道受业解惑也。人非生而知之者,孰能无惑?惑而不从师,其为惑也,终不解矣。生乎吾前,其闻道也固先乎吾,吾从而师之;生乎吾后,其闻道也亦先乎吾,吾从而师之。吾师道也,夫庸知其年之先后生于吾乎?是故无贵无贱,无长无少,道之所存,师之所存也。

嗟乎!师道之不传也久矣!欲人之无惑也难矣!古之圣人,其出人也远矣,犹且从师而问焉;今之众人,其下圣人也亦远矣,而耻学于师。是故圣益圣,愚益愚。圣人之所以为圣,愚人之所以为愚,其皆出于此乎?爱其子,择师而教之;于其身也,则耻师焉,惑矣。彼童子之师,授之书而习其句读者,非吾所谓传其道解其惑者也。句读之不知,惑之不解,或师焉,或不焉,小学而大遗,吾未见其明也。巫医乐师百工之人,不耻相师。士大夫之族,曰师曰弟子云者,则群聚而笑之。问之,则曰:“彼与彼年相若也,道相似也。位卑则足羞,官盛则近谀。”呜呼!师道之不复,可知矣。巫医乐师百工之人,君子不齿,今其智乃反不能及,其可怪也欤!

换行效果如下:
第一行
第二行

区块引用

使用>标记引用:

1
2
> 那一年我二十一岁,在我一生的黄金时代,我有好多奢望。
> 我想爱,想吃,还想在一瞬间变成天上半明半暗的云。

这段语法效果如下:

那一年我二十一岁,在我一生的黄金时代,我有好多奢望。
我想爱,想吃,还想在一瞬间变成天上半明半暗的云。

列表与表格

列表可分为有序列表和无序列表:

1
2
3
4
5
6
7
8

1. 有序列表
2. 有序列表
3. 有序列表

- 无序列表
- 无序列表
- 无序列表

表格语法:

1
2
3
4
5
|  姓名     |      年龄      |  身高 |
|----------|:-------------:|------:|
| 司徒乔 | 33 | 177 |
| 欧阳易 | 63 | 166 |
| 百求具 | 55 | 188 |

上面的语法效果如下:

  1. 有序列表
  2. 有序列表
  3. 有序列表
  • 无序列表
  • 无序列表
  • 无序列表

表格语法:

姓名 年龄 身高
司徒乔 33 177
欧阳易 63 166
百求具 55 188

代码区块

代码区块连续的三个英文反引号来标记:

1
2
3
4
5
6
7
8
9
10
11
```
package main

import "fmt"

func main() {

fmt.Printf("Hello, world.\n")

}
```

这段语法效果如下:

1
2
3
4
5
6
7
8
9
10
package main

import "fmt"

func main() {

fmt.Printf("Hello, world.\n")

}

行内代码

行内代码则使用一个英文反引号标记:

1
求和函数`func sum()`

效果如下:

求和函数func sum()

特殊字符

有些特殊符号可以通过实体名称或实体编号来表示:

1
2
3
4
版权实体名称:© 
版权实体编号:©
注册商标实体名称:®
注册商标实体编号:®

有些字符本来就是Markdown的语法载体,可以使用反斜杠转义:

1
2
3
\*标记的内容\*

\# 有井号,但这不是标题

效果如下:

版权符号实体名称:©
版权符号实体编号:©
注册商标实体名称:®
注册商标实体编号:®

*标记的内容*

# 有井号,这不是标题

分隔线

分隔线语法三个连续的-

1
---

分隔线效果:


粗体与斜体

粗体使用**包围,斜体使用*包围:

1
2
3
**粗体**

*斜体*

效果如下:

粗体

斜体

链接

插入链接的语法:

1
这是[6m](https://6m.cx/)的链接。

效果是这样的:

这是6m的链接。

图片

想要文章图文并茂?和插入链接类似,注意前面的’!’:

1
![GitHub Cat](https://github.com/fluidicon.png)

图片效果如下:

GitHub Cat

Markdown 编辑器

市面上Markdown编辑器多如牛毛,这里介绍几个免费的:

Windows 平台

Linux 平台

Mac 平台

结语

Markdown语法就是这么简单。快去使用Markdown写作练练手吧,熟练以后,你就会忘掉语法,彷佛文章本来就该这么写。

参考链接

Markdown语法说明

Markdown.tw