Markdown 语法
Markdown 在用于写简单文本非常方便。在这里将给出一些示例来示范Markdown所支持的标记语法。 这里并没有介绍所有Markdown文档,如果你需要完整版来进行深入了解,请查看Markdown这个网站。
强调
Markdown 通过 * (星号) 和 _ (下划线) 来作为着重表示的标记。 如下所示:
单个星号
单个下划线
两个星号
两个下划线
示例代码:
*单个星号*
_单个下划线_
**两个星号**
__两个下划线__
你必须使用相同的标记来开关标记块。
某些情况下,强调可以只是放置于词中间(如he*ll*o), 如Github等。但也有一些不会渲染出效果,如本博客所示。 但是如果在 * 和 _ 两边加上空格,那它会以普通文本形式进行渲染。 如果有需要, 你也可以在星号和下划线前加入反斜线进行转译。
\*这段文本在普通星号之间\*
删除
删除标记使用的是~~
:
这是待删除的文本
示例代码:
~~这是待删除的文本~~
代码
使用`
(反引号)来表示行内代码,与格式化代码块不同,行内代码表示其在一行中,如:
使用printf()
函数。
示例代码:
使用 `printf()` 函数。
如果你想在代码中使用反引号,可以使用多个反引号作为开闭标记。
这是一个普通的(`)反引号.
示例代码:
``这是一个普通的(`)反引号.``
链接
Markdown支持内联和引用链接,这两种方式的链接名都放在方括号([]
)中。
创建一个链接
[链接名](链接地址)
创建一个Github链接Github如下所示:
[Github](https://github.com "可选的链接标题")
引用链接第二部份也是使用方括号,里面放置一个引用链接的标签。
这是一个[示例][example]引用链接。
效果如下: 这是一个示例引用链接。
在文档的其它地方(通常是文尾)放置一个标签定义:
[example]: http://example.com/ "可选的标题"
链接这一部份还有很多细节,具体详情可以参见链接说明
图像
在Markdown里引用一张图片与一个链接非常类似,也如链接一样有两种方式。其它链接不同的是,在语法前加了一个!
(感叹号)。
![图片标题](http://www.addictedtoibiza.com/wp-content/uploads/2012/12/example.png)
![图片标题](http://www.addictedtoibiza.com/wp-content/uploads/2012/12/example.png "可选标题")
标题
使用Atx
方式标记标题
一级标题
# 一级标题
二级标题
## 二级标题
三级标题
### 三级标题
四级标题
#### 四级标题
五级标题
##### 五级标题
六级标题
###### 六级标题
你也可以使用Setext
方式来标记标题.
一级标题(使用=号)
一级标题(使用=号)
==============================
二级标题(使用-号)
二级标题(使用-号)
-----------------------------
段落
Markdown文本段落之间通过空行进行分隔, 直接回车换行不会产生一个新的段落, 上下两行中间不加空行会连接成一个段落。
这是一个段落
这是另外一个段落
示例:
这是一个段落
这是另外一个段落
如果你只是想进行换行而不是需要一个段落,可以在一行结尾处添加两个以上的空格。
这是一行结尾。
这行接着上一行。
示例代码:
这是一行结尾。[空格][空格]
这行接着上一行。
不要使用空格或者tab来缩进段落。
引用
Markdown使用>
来标记引用, 在每一行引用前添加>
符号。
这是一个引用,它有两个段落。
这是第二个段落。
示例:
> 这是一个引用,它有两个段落。
>
> 这是第二个段落。
引用还可以嵌套使用,如下:
这是外面的引用
这是里面的引用
这是外面的引用
示例:
> 这是外面的引用
>
> > 这是里面的引用
>
> 这是外面的引用
引用中也可以使用其它Markdown的标记,如标题、列表、代码块等。
这是一个标题
- 这是有序列表的第一行
- 这是有序列表的第二行
引用内放置代码:
return shell_exec("echo $input | $markdown_script");
示例:
> ## 这是一个标题
>
> 1. 这是有序列表的第一行
> 2. 这是有序列表的第二行
>
> 引用内放置代码:
>
> return shell_exec("echo $input | $markdown_script");
列表
Markdown支持有序和无序列表。
列表项标记位于列表左边,后面至少有一个空格或者一个tab。
无序列表可以使用*
、+
或者-
作为列表项标记,你也可以混用它们。
- Red
- Green
- Blue
示例:
* Red
+ Green
- Blue
有序列表使用一个数字后跟一个小数点(.)来作为列表项标记,注意,数字可以是任意的,如下:
- 第一行
- 第二行
- 第三行
示例:
1. 第一行
1. 第二行
1. 第三行
注意 从上面可以看出,列表第几行与前面数字并无关系,只需要是个数字即可,最终显示的数字以实际在第几行来定。 但是一般来说,使用有序的数字让人容易理解。
列表也是可以嵌套的,每一级嵌套列表必须使用4个空格或者一个tab。
- 无序列表第三行,以
*
开始 - 无序列表第三行,以
+
开始- 这是嵌套的无序列表第一行,使用了4个空格进行缩进
- 这是嵌套的无序列表第二行,使用了一次tab进行缩进
无序列表第三行,以
-
开始- 这是嵌套的有序列表第一行,使用了4个空格进行缩进
- 这是嵌套的有序列表中嵌套的有序列表第一行,以8个空格缩进
- 这是嵌套的有序列表中嵌套的有序列表第二行,使用了一次tab加4个空格缩进
这是嵌套的有序列表第二行,使用了一次tab进行缩进
这是第一个嵌套段落,使用了两次tab进行缩进,上下有空行
- 这是嵌套的有序列表中嵌套的无序列表第一行,使用了一次tab加4个空格缩进
- 这是嵌套的有序列表中嵌套的无序列表第二行,使用了两次tab缩进
这是第一个嵌套段落,使用了一次tab加4个空格进行缩进,上下有空行
这是嵌套的有序列表第三行,使用了一次tab进行缩进
- 这是嵌套的有序列表第一行,使用了4个空格进行缩进
示例:
* 无序列表第三行,以`*`开始
+ 无序列表第三行,以`+`开始
* 这是嵌套的无序列表第一行,使用了4个空格进行缩进
* 这是嵌套的无序列表第二行,使用了一次tab进行缩进
- 无序列表第三行,以`-`开始
1. 这是嵌套的有序列表第一行,使用了4个空格进行缩进
1. 这是嵌套的有序列表中嵌套的有序列表第一行,以8个空格缩进
1. 这是嵌套的有序列表中嵌套的有序列表第二行,使用了一次tab加4个空格缩进
1. 这是嵌套的有序列表第二行,使用了一次tab进行缩进
这是第一个嵌套段落,使用了两次tab进行缩进,上下有空行
* 这是嵌套的有序列表中嵌套的无序列表第一行,使用了一次tab加4个空格缩进
* 这是嵌套的有序列表中嵌套的无序列表第二行,使用了两次tab缩进
这是第一个嵌套段落,使用了一次tab加4个空格进行缩进,上下有空行
1. 这是嵌套的有序列表第三行,使用了一次tab进行缩进
你也可以在列表中嵌套一个引用块。
第一行
这里是内嵌的引用块,前面有一个空行,使用了一次tab缩进
第二行
第三行
示例:
1. 第一行
> 这里是内嵌的引用块,前面有一个空行,使用了一次tab缩进
1. 第二行
1. 第三行
列表第一项
内嵌段落,以4个空格缩进,前后有空行:
这是内嵌的代码块,以8个空格缩进,前后有空行。
内嵌段落,使用一次tab缩进,前后有空行:
这是内嵌的代码块,使用两次tab缩进,前后有空行!
列表第二项
列表第三项
示例:
* 列表第一项
内嵌段落,以4个空格缩进,前后有空行:
这是内嵌的代码块,以8个空格缩进,前后有空行。
内嵌段落,使用一次tab缩进,前后有空行:
这是内嵌的代码块,使用两次tab缩进,前后有空行!
* 列表第二项
* 列表第三项
表格
表格标记是使用-
和|
这两个符号。
表头第一列 | 表头第二列 |
---|---|
表格第一行第一列 | 表格第一行第二列 |
表格第二行第一列 | 表格第二行第二列 |
示例:
表头第一列 | 表头第二列
------------- | -------------
表格第一行第一列 | 表格第一行第二列
表格第二行第一列 | 表格第二行第二列
在某些Markdown实现(如GFM)中,你还可以通过:来实现对齐(此处因博客Markdown解析器不支持,故未能正确显示)。
Right | Left | Center |
---|---|---|
Computer | $1600 | one |
Phone | $12 | three |
Pipe | $1 | eleven |
示例:
Right | Left | Center
---------:| :----- |:-----:
Computer | $1600 | one
Phone | $12 | three
Pipe | $1 | eleven
你也可以在表格中使用Markdown支持的内联标记:
Function name | Description |
---|---|
help() |
Display the help window. |
destroy() |
Destroy your computer! |
示例:
| Function name | Description |
| ------------- | ------------------------------ |
| `help()` | Display the __help__ window. |
| `destroy()` | **Destroy your computer!** |
代码高亮
在标准的Markdown实现中,代码块通过缩进(tab或者4个空格)来控制。 直到它遇到一行没有缩进的行(忽略中间的空行)或者文档末尾为止。
这是代码块第一行,使用了两次tab进行缩进:
这是代码块第二行,使用了三次tab进行缩进,上面有一行空行。
示例:
[tab][tab]这是代码块第一行,使用了两次tab进行缩进:
[tab][tab][tab]这是代码块第二行,使用了三次tab进行缩进,上面有一行空行。
如果你需要进行代码高亮,可以使用```
或者~~~
将代码块包括进来。
注意:代码高亮不是Markdown标准的一部份,在不同实现中可能会有不同的效果。
var a = 3;
var b = function () {
var c = 'hello';
};
示例:
```js
var a = 3;
var b = function () {
var c = 'hello';
};
```
使用~~~~
如下所示:
var a = 3;
var b = function () {
var c = 'hello';
};
示例:
~~~~
var a = 3;
var b = function () {
var c = 'hello';
};
~~~~
水平分隔线
水平分隔线可以是以下几种形式。
示例:
* * *
***
*****
- - - -
-----------------------
声明 本文翻译改编自Bitbucket markdowndemo