平时我写日记、文档和博客都会用到 markdown 语法,我用的是 马克飞象 先在本地写好,而且可以和 印象笔记 同步,如果知识积累的多了,也会总结下,分享到社区,直接 ⌘ - C 然后 ⌘ - V 就可以了,特别方便。 🙂


什么是Markdown语法

Markdown 是一种轻量级标记语言,目标是实现「易读易写」。

Markdown 是一种轻量级标记语言,它允许人们使用易读易写的纯文本格式编写文档,然后转换成格式丰富的HTML页面。 —— 维基百科


标题

Markdown 中,你只需要在文本前面加上 # 即可,同理、你还可以增加二级标题、三级标题、四级标题、五级标题和六级标题,总共六级,只需要增加 # 即可,标题字号相应降低。例如:

# 一级标题
## 二级标题
### 三级标题
#### 四级标题
##### 五级标题
###### 六级标题

效果如下 :

一级标题

二级标题

三级标题

四级标题

五级标题
六级标题

引用

Markdown 标记区块引用是使用类似 email 中用的引用方式,只需要在整个段落的第一行最前面加上 > 。
例如:

>这是一个引用示例

效果如下:

这是一个引用示例

区块引用可以嵌套,只要根据层次加上不同数量的 > :

> 这是第一级引用。
>
> > 这是第二级引用。
>
> 现在回到第一级引用。

效果如下:

这是第一级引用。

这是第二级引用。

现在回到第一级引用。


列表

Markdown 支持有序列表和无序列表。

  1. 无序列表使用星号、加号或是减号作为列表标记:
*   Red
*   Green
*   Blue

等同于

+   Red
+   Green
+   Blue

也等同于

-   Red
-   Green
-   Blue

效果如下:

  • Red
  • Green
  • Blue

  1. 有序列表则使用数字接着一个英文句点:
1.  Bird
2.  McHale
3.  Parish

效果如下:

  1. Bird
  2. McHale
  3. Parish

如果你的列表标记写成:

1.  Bird
1.  McHale
1.  Parish

效果是:

  1. Bird
  2. McHale
  3. Parish

甚至是:

3. Bird
1. McHale
8. Parish

效果是:

  1. Bird
  2. McHale
  3. Parish

可以看到,数字还是正常的,所以,你可以让 Markdown 文件的列表数字和输出的结果相同,或是你懒一点,你可以完全不用在意数字的正确性。

如果要在列表项目内放进引用,那 > 就需要缩进:

*   A list item with a blockquote:

    > This is a blockquote
    > inside a list item.

效果如下:

  • A list item with a blockquote:

    This is a blockquote
    inside a list item.


代码区块

只要把你的代码块包裹在 ``` 之间,你就不需要通过无休止的缩进来标记代码块了。 在围栏式代码块中,你可以指定一个可选的语言标识符,然后我们就可以为它启用语法着色了。 举个例子,这样可以为一段 Ruby 代码着色:


```ruby

require ‘redcarpet’

markdown = Redcarpet.new(“Hello World!”)

puts markdown.to_html

```

效果如下:

    require 'redcarpet'
    markdown = Redcarpet.new("Hello World!")
    puts markdown.to_html

强调

Markdown 中,可以使用 * 和 _ 来表示斜体和加粗。

斜体:

*Coding,让开发更简单*
_Coding,让开发更简单_

效果如下:

Coding,让开发更简单

Coding,让开发更简单

加粗:

**Coding,让开发更简单**
__Coding,让开发更简单__

效果如下:

Coding,让开发更简单

Coding,让开发更简单


代码

如果要标记一小段行内代码,你可以用反引号把它包起来 ``` ,例如:

Use the `printf()` function.

效果如下:

Use the printf() function.


自动链接

Markdown 支持以比较简短的自动链接形式来处理网址和电子邮件信箱,只要是用尖括号包起来,Markdown 就会自动把它转成链接。一般网址的链接文字就和链接地址一样,例如:

<http://example.com/>

效果如下:

http://example.com/

链接

Markdown 支持两种形式的链接语法: 行内式参考式 两种形式。我个人比较喜欢用 参考式

不管是哪一种,链接文字都是用 [方括号] 来标记。

  1. 行内式 的链接,只要在方块括号后面紧接着圆括号并插入网址链接即可,如果你还想要加上链接的 title 文字,只要在网址后面,用双引号把 title 文字包起来即可,例如:
This is [an example](http://example.com/ "Title") inline link.

效果如下:

This is an example inline link.


图片

Markdown 使用一种和链接很相似的语法来标记图片,同样也允许两种样式: 行内式参考式

  1. 行内式的图片语法看起来像是:
![Alt text](/path/to/img.jpg)

![Alt text](/path/to/img.jpg "Optional title")

详细叙述如下:

  • 一个惊叹号 !
  • 接着一个方括号,里面放上图片的替代文字
  • 接着一个普通括号,里面放上图片的网址,最后还可以用引号包住并加上 选择性的 title 文字。

  1. 参考式的图片语法则长得像这样:
![Alt text][id]

id 是图片参考的名称,图片参考的定义方式则和连结参考一样:

[id]: url/to/image  "Optional title attribute"

Markdown 还没有办法指定图片的宽高,如果你需要的话,你可以使用普通的 <img> 标签。


LaTeX 公式

可以创建行内公式,例如 :

$\Gamma(n) = (n-1)!\quad\forall n\in\mathbb N$

效果如下:

$\Gamma(n) = (n-1)!\quad\forall n\in\mathbb N$

或者块级公式:

$$    x = \dfrac{-b \pm \sqrt{b^2 - 4ac}}{2a} $$

效果如下:

$$ x = \dfrac{-b \pm \sqrt{b^2 - 4ac}}{2a} $$


表格

| Item      |    Value | Qty  |
| :-------- | --------:| :--: |
| Computer  | 1600 USD |  5   |
| Phone     |   12 USD |  12  |
| Pipe      |    1 USD | 234  |

效果如下:

Item Value Qty
Computer 1600 USD 5
Phone 12 USD 12
Pipe 1 USD 234

流程图


```flow

st=>start: Start

e=>end

op=>operation: My Operation

cond=>condition: Yes or No?

st->op->cond

cond(yes)->e

cond(no)->op

```

效果如下:

st=>start: Start
e=>end
op=>operation: My Operation
cond=>condition: Yes or No?

st->op->cond
cond(yes)->e
cond(no)->op

以及时序图:


```sequence

Alice->Bob: Hello Bob, how are you?

Note right of Bob: Bob thinks

Bob–>Alice: I am good thanks!

```

效果如下:

Alice->Bob: Hello Bob, how are you?
Note right of Bob: Bob thinks
Bob-->Alice: I am good thanks!

复选框

使用 - [ ]- [x] 语法可以创建复选框,实现 todo-list 等功能。例如:

- [x] 已完成事项
- [ ] 待办事项1
- [ ] 待办事项2

效果如下:

  • 已完成事项
  • 待办事项1
  • 待办事项2

分割线

Markdown 中,可以制作分割线,例如:

    ---

效果如下:


反斜杠

Markdown 可以利用反斜杠来插入一些在语法中有其它意义的符号,例如:如果你想要用星号加在文字旁边的方式来做出强调效果(但不用 <em> 标签),你可以在星号的前面加上反斜杠:

\*literal asterisks\*

效果如下:

*literal asterisks*

Markdown 支持以下这些符号前面加上反斜杠来帮助插入普通的符号:

  \   反斜线
  `   反引号
  *   星号
  _   底线
  {}  花括号
  []  方括号
  ()  括弧
  #   井字号
  +   加号
  -   减号
  .   英文句点
  !   惊叹号

爱好摄影 📷 的程序猿 👨🏻‍💻