Markdown 极简教程
Markdown 的目标是实现「易读易写」。也是兼容 HTML 的, 是一种适用于网络的书写语言。
文本 (Text)
源码:
1 | It's very easy to make some words **bold** and other words *italic* with Markdown. You can even link to [Google!](http://google.com) |
效果:
It’s very easy to make some words bold and other words italic with Markdown. You can even link to Google!
文字的强调效果(EMPHASIS)
要加粗文本,请在单词或短语的前后各添加两个星号或下划线
1 | *要用斜体显示文本,请在单词或短语前后添加一个星号或下划线* |
要用斜体显示文本,请在单词或短语前后添加一个星号或下划线
要加粗文本,请在单词或短语的前后各添加两个星号或下划线
中划线效果
You can combine them
段落
要创建段落,请使用空白行将一行或多行文本进行分隔。不要用空格(spaces)或制表符(tabs)缩进段落。
标题 (Headers)
支持六级标题, h1 级标题最大,h6 级标题最小
源码:
1 | # This is an <h1> tag |
效果:
引用(BLOCKQUOTES)
源码:
1 | As Kanye West said: |
效果:
As Kanye West said:
We’re living the future so
the present is our past.
列表(LISTS)
列表可嵌套其它元素,包括代码块,图片等。
列表可以嵌套,使用时在嵌套列表前加两个空格。
使用 * - +
中的任一个符号就可创建无序列表,也可以进一步使用 + -
来有层次组织有序和无序列表。
无序列表(Unordered)
1 | * Item 1 |
效果:
- Item 1
- Item 2
- Item 2a
- Item 2b
有序列表(Ordered)
要创建有序列表,请在每个列表项前添加数字并紧跟一个英文句点。数字不必按数学顺序排列,但是列表应当以数字 1 起始。
1 | 1. 这是一个有序列表1 |
效果:
- 这是一个有序列表1
- 这是一个有序列表2
链接(LINKS)
Markdown 支持两种形式的链接语法: 行内 和 参考 两种形式,两种都是使用小括号来把文字转成链接。
1 | ## 行内式 |
- 参考式的链接重点不在于它比较好写,而是它比较好读。
- 使用 Markdown 的参考式链接,可以让文件更像是浏览器最后产生的结果,让你可以把一些标记相关的元数据移到段落文字之外,你就可以增加链接而不让文章的阅读感觉被打断。
图像(IMAGES)
要添加图片,请使用感叹号 ( ! ), 然后在方括号增加替代文本,图片链接放在圆括号里,括号里的链接后可以增加一个可选的图片标题文本。
1 | ![这是图片](/assets/img/abc.jpg "图片 title") |
1 |
|
I think you should use an <addr>
element here instead.
HTML 支持
几乎所有支持 Markdown 的地方都支持 HTML,HTML 可以理解为 Markdown 的超集,你可以做出任何炫酷的样式和排版。常用的包括在 Markdwon 中实现:
- 颜色:
<span style="color:red;">红色文本</span>
- 文本对齐:
<p style="text-align: right">右对齐文本</p>
- 上下标:
10<sup>-6</sup>,H<sub>2</sub>O
- 嵌入视频:
<iframe src="视频地址"/>
- 第三方 api 嵌入:
<img src="https://contrib.rocks/image?repo=PKM-er/Pkmer-Docs"/>
- 可合并的表格
- …
总而言之,你几乎可以实现任意文本格式和排版。与之相对的,HTML 的可读性并不是很好,通常是用于网页开发,在笔记中如果不在意这种对人来说不那么优雅的语法,完全可以写 HTML 做笔记。
反斜线转义
Markdown allows you to use backslash escapes to generate literal characters which
would otherwise have special meaning in Markdown’s formating syntax.
Markdown 可以利用反斜杠来插入一些在语法中有其它意义的符号,例如:如果你想要用星号加在文字旁边的方式来做出强调效果,你可以在星号的前面加上反斜杠:
1 | \ 反斜线 ` 反引号 * 星号 _ 底线 |
markdown 拓展
代码段
- 使用反单引号(位于键盘中数字键“1”的左边)包裹一行代码。
- 使用
```
包裹一块代码。 - 或者简单的每行前加四个空格
you can wrap your code with ``` to create a code block without the leading spaces. Add an optional language identifier and your code will get syntax highlighting.
1 | // javascript |
1 | // java |
表格(TABLES)
You can create tables by assembling a list of words and dividing them
with hyphens - (for the first row), and then separating each column
with a pipe | :
1 | First Header | Second Header |
对齐方式
我们可以设置表格的对齐方式:
- -: 设置内容和标题栏居右对齐。
- :- 设置内容和标题栏居左对齐。
- :-: 设置内容和标题栏居中对齐。
分隔符
你可以在一行中用三个以上的星号、减号、底线来建立一个分隔线,行内不能有其他东西。你也可以在星号或是减号中间插入空格。
再谈谈特殊字符转换
Markdown 让你可以自然地书写字符,需要转换的会由它自行处理。如果你使用的 &
字符是 HTML 字符实体的一部分,它会保留原状,否则它会被转换成 &
。
1 | char glyph | HTML tag |
一些拓展语法
各 markdown 软件对其进行了一些拓展, 有的支持脚注、有的会定义 checkbox 等操作、使用 toc 展示目录等操作。