Markdown 语法

· Read in about 3 min · (475 Words)
tool

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的标记,如标题、列表、代码块等。

这是一个标题

  1. 这是有序列表的第一行
  2. 这是有序列表的第二行

引用内放置代码:

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. 第一行
  2. 第二行
  3. 第三行

示例:

1. 第一行
1. 第二行
1. 第三行

注意 从上面可以看出,列表第几行与前面数字并无关系,只需要是个数字即可,最终显示的数字以实际在第几行来定。 但是一般来说,使用有序的数字让人容易理解。

列表也是可以嵌套的,每一级嵌套列表必须使用4个空格或者一个tab。

  • 无序列表第三行,以*开始
  • 无序列表第三行,以+开始
    • 这是嵌套的无序列表第一行,使用了4个空格进行缩进
    • 这是嵌套的无序列表第二行,使用了一次tab进行缩进
  • 无序列表第三行,以-开始

    1. 这是嵌套的有序列表第一行,使用了4个空格进行缩进
      1. 这是嵌套的有序列表中嵌套的有序列表第一行,以8个空格缩进
      2. 这是嵌套的有序列表中嵌套的有序列表第二行,使用了一次tab加4个空格缩进
    2. 这是嵌套的有序列表第二行,使用了一次tab进行缩进

      这是第一个嵌套段落,使用了两次tab进行缩进,上下有空行

      • 这是嵌套的有序列表中嵌套的无序列表第一行,使用了一次tab加4个空格缩进
      • 这是嵌套的有序列表中嵌套的无序列表第二行,使用了两次tab缩进

      这是第一个嵌套段落,使用了一次tab加4个空格进行缩进,上下有空行

    3. 这是嵌套的有序列表第三行,使用了一次tab进行缩进

示例:

* 无序列表第三行,以`*`开始
+ 无序列表第三行,以`+`开始
	* 这是嵌套的无序列表第一行,使用了4个空格进行缩进
	* 这是嵌套的无序列表第二行,使用了一次tab进行缩进
- 无序列表第三行,以`-`开始
    1. 这是嵌套的有序列表第一行,使用了4个空格进行缩进
        1. 这是嵌套的有序列表中嵌套的有序列表第一行,以8个空格缩进
	    1. 这是嵌套的有序列表中嵌套的有序列表第二行,使用了一次tab加4个空格缩进
	1. 这是嵌套的有序列表第二行,使用了一次tab进行缩进

		这是第一个嵌套段落,使用了两次tab进行缩进,上下有空行

	    * 这是嵌套的有序列表中嵌套的无序列表第一行,使用了一次tab加4个空格缩进
		* 这是嵌套的有序列表中嵌套的无序列表第二行,使用了两次tab缩进

	    这是第一个嵌套段落,使用了一次tab加4个空格进行缩进,上下有空行

	1. 这是嵌套的有序列表第三行,使用了一次tab进行缩进

你也可以在列表中嵌套一个引用块。

  1. 第一行

    这里是内嵌的引用块,前面有一个空行,使用了一次tab缩进

  2. 第二行

  3. 第三行

示例:

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

Comments