Markdown 語法簡單小結(jié)

[TOC]

寫在前面

最終,我的博客還是回歸到了起點。
博客斷斷續(xù)續(xù)幾年,盡是折騰界面美化和各種網(wǎng)站框架或者建站工具,最終,失去了其核心價值,即內(nèi)容和思想的沉淀。這更使得我的博客流于表面,對于自己的成長,也沒有起到太多正面的作用。

反思后,決心回歸最簡單的格式外觀,將重點集中于高質(zhì)量內(nèi)容的沉淀上。
這也是為什么又回到了 Markdown 的懷抱。

至于編輯器,我用過了眾多純編輯器,眾多 Web 版的富文本編輯器,以及許許多多Markdown 編輯器后,決定使用最的 Vim。同時,也推薦一款 Markdown 編輯器Typora。這款軟件足夠輕量級,同時功能做到了盡可能的簡單。至于 Web 編輯器,我使用簡書

Markdown 概述

Markdown 是一種輕量級的 “標(biāo)記語言”,創(chuàng)始人為約翰·格魯伯(John Gruber)。它允許人們“使用易讀易寫的純文本格式編寫文檔,然后轉(zhuǎn)換成有效的XHTML(或者HTML)文檔”。
——Wikipedia

Markdown 擁有這眾多的優(yōu)點

  • 純文本編輯
  • 學(xué)習(xí)成本低
  • 廣泛的軟件支持
  • 在碼農(nóng)界有深厚的基礎(chǔ)

基礎(chǔ)語法

強調(diào)

星號與下劃線都可以,單是斜體,雙是粗體,符號可跨行,符號可加空格

代碼 效果
*這是斜體* 這是斜體
_這是斜體_ 這是斜體
**這是粗體** 這是粗體
__這是粗體__ 這是粗體

標(biāo)題

代碼:

# 一級標(biāo)題
## 二級標(biāo)題
### 三級標(biāo)題
#### 四級標(biāo)題
##### 五級標(biāo)題
###### 六級標(biāo)題

效果如下:

一級標(biāo)題

二級標(biāo)題

三級標(biāo)題

四級標(biāo)題

五級標(biāo)題
六級標(biāo)題

注意

  1. 最后一個 # 字符與標(biāo)題中間要留有一個空格
  2. 標(biāo)題共提供 6
  3. 一般行文中,標(biāo)題應(yīng)置于行首。若置于表格中,可能無法正確解析

引用

Markdown 中引用通過符號 '>' 來實現(xiàn)。'>' 符號后的空格,可有可無。
在引用的區(qū)塊內(nèi),允許換行存在,換行并不會終止引用的區(qū)塊。如果要結(jié)束引用,需要一行空白行,來結(jié)束引用的區(qū)塊。

代碼:

> 這是一句引用
> 這句仍然在引用區(qū)塊內(nèi)
>> 這是一句嵌套引用
>> 這句仍然在嵌套引用區(qū)塊內(nèi)
>
> 另起一行的引用。前面需要一個視覺上的空行表示內(nèi)層嵌套的結(jié)束,空行前面的('>')可以有可以沒有。

效果如下:

這是一句引用
這句仍然在引用區(qū)塊內(nèi)

這是一句嵌套引用
這句仍然在嵌套引用區(qū)塊內(nèi)

另起一行的引用。前面需要一個視覺上的空行表示內(nèi)層嵌套的結(jié)束,空行前面的('>')可以有可以沒有。


列表

有序列表

數(shù)字不能省略但可無序,點號之后的空格不能少。
雖然下面代碼的序號是 1,2,4,但是在顯示時,仍然為自然數(shù)序列,并不是完成與編號一致。
同樣的,在列表的最后需要留有一行空行,以表達列表的結(jié)束,不然將作為一個無編號的列表存在。

代碼:

1. 列表 A
2. 列表 B
4. 列表 C

效果如下:

  1. 列表 A
  2. 列表 B
  3. 列表 C

無序列表

符號之后的空格不能少,-+*效果一樣,但不能混合使用

代碼:

- 列表 A1
- 列表 B1

+ 列表 A2
+ 列表 B2

* 列表 A3
* 列表 B3

效果如下:

  • 列表 A1
  • 列表 B1
  • 列表 A2
  • 列表 B2
  • 列表 A3
  • 列表 B3

嵌套列表

有序與無序,以及有序和無序列表本身都是可以自由的嵌套的。
Markdown 中的列表嵌套,通過在符號前增加空格來表示。同一級別下,前面的空格數(shù)目應(yīng)該保持一致。每遞進一級,我習(xí)慣上使用 2 個空格縮進來表示。

代碼:

- 一級列表 A
- 一級列表 B
  - 二級列表 A
  * 二級列表 B
    + 三級列表 A
- 一級列表 C

效果如下:

  • 一級列表 A
  • 一級列表 B
    • 二級列表 A
    • 二級列表 B
      • 三級列表 A
  • 一級列表 C

注意,有序列表的嵌套,也是通過預(yù)留空格實現(xiàn)

  1. 有序一級列表 A
  2. 有序一級列表 B
  3. 有序二級列表 A
  4. 有序二級列表 B
- 無序三級列表 A
- 無序三級列表 B
  1. 有序一級列表 C

分割線

三個或更多-_*,必須單獨一行,可含空格。
例如以下形式,都可以表示為分割線。

代碼:

---
- -    -
___
_   __
***
*  **
  *  *  *

進階語法

超鏈接

圖片與鏈接,在 Markdown 語法中表達類似,都是 [鏈接文字](鏈接地址) 這樣的形式。

普通鏈接

代碼:

[Wikipedia Markdown 條目](https://zh.wikipedia.org/wiki/Markdown)
[Wikipedia Markdown 條目](https://zh.wikipedia.org/wiki/Markdown "Markdown 條目")

效果如下:
Wikipedia Markdown 條目
Wikipedia Markdown 條目

圖片鏈接

圖片需要在 [] 前增加一個 ! 以使得圖片在網(wǎng)頁上直接顯示,而不僅僅是個鏈接形式。

代碼:

![維基百科 Logo](https://zh.wikipedia.org/static/images/project-logos/zhwiki.png)
![維基百科 Logo](https://zh.wikipedia.org/static/images/project-logos/zhwiki.png "維基 Logo")

效果如下:


維基百科 Logo
維基百科 Logo

維基百科 Logo
維基百科 Logo

上面分別有兩個超鏈接和兩張圖片,兩個超鏈接的區(qū)別在于一個增加了說明注釋,而另一個沒有,圖片同理。

索引鏈接

索引鏈接,本質(zhì)上與前兩種鏈接一致,只是索引鏈接將 [鏈接文字](鏈接地址) 分離為[鏈接文字][索引], [索引]:鏈接地址 的形式。

代碼:

[Wikipedia Markdown 條目][1]
[1]:https://zh.wikipedia.org/wiki/Markdown

效果如下:
[Wikipedia Markdown 條目][markdown]
[markdown]:https://zh.wikipedia.org/wiki/Markdown


表格

對于表格的支持,要根據(jù)具體的 Markdown 解釋器來判定。在 hexo 中,支持以下 Markdown 形式的表格。
需要注意以下幾點:

  1. 表格第一行為標(biāo)題,樣式會被特殊處理
  2. | 前后要留有空格
  3. 只要是三個 - 字符表示分隔線
  4. 通過 : 來區(qū)分,左對齊、居中、右對齊

代碼:

| 1 | 2 | 3 |
| --- |:---:| ---:|
| aaa | bbbbbb | c |
| aaaaaa | b | ccc |

效果如下:

1 2 3
aaa bbbbbb c
aaaaaa b ccc

代碼

行內(nèi)代碼

如果要標(biāo)記一小段行內(nèi)代碼,可以用反引號 ` 把它包起來

代碼:

這是一段行內(nèi)代碼,`System.out.println("article id: " + articleId);` 摘自 Redis 工程。

效果如下:

這是一段行內(nèi)代碼,System.out.println("article id: " + articleId); 摘自 Redis 工程。

區(qū)塊代碼

如果要成塊的引用代碼,有兩種方法,一種是用制表符縮進,另一種,則是用三個反引號 ```,將代碼塊包起來。
在三個反引號后,加上語言說明,例如 ```java 這樣,便指定了之后的代碼采用 java 的高亮。

效果如下:

public int genRandPost(int bound) {
    Random rand = new Random();
    int cnt = rand.nextInt(bound);              
    
    Map<String, String> map = new HashMap<String, String>();
                            
    long articleId;
    for (int i = 0; i < cnt; i++) {
        articleId = jedis.incr("article:");
        map.put("author", "author" + i);
        map.put("article", "This is article " + i);
        jedis.hmset("article:" + articleId, map);
        map.clear();
    }
    System.out.println("Insert " + cnt + " posts.");
                                            
    return cnt;
}

公式

大神提供了 hexo 下自動部署 MathJax 插件。安裝好插件后,遍可以使用 \(LaTex\) 來顯示數(shù)學(xué)公式了。
在行內(nèi)輸入公式,需要在公式前后加上兩個反斜杠 '' 以及一個括號,前后兩個括號要成對。
而獨立成行的公式,則使用兩個美元符 '$'。

代碼:

在行內(nèi)插入公式 \\(x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}\\) 是這樣的。

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

$$
\begin{eqnarray}
\nabla\cdot\vec{E} &=& \frac{\rho}{\epsilon_0} \\
\nabla\cdot\vec{B} &=& 0 \\
\nabla\times\vec{E} &=& -\frac{\partial B}{\partial t} \\
\nabla\times\vec{B} &=& \mu_0\left(\vec{J}+\epsilon_0\frac{\partial E}{\partial t} \right)
\end{eqnarray}
$$

效果如下(簡書下不可用):

在行內(nèi)插入公式 \(x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}\) 是這樣的。

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

$$
\begin{eqnarray}
\nabla\cdot\vec{E} &=& \frac{\rho}{\epsilon_0} \
\nabla\cdot\vec{B} &=& 0 \
\nabla\times\vec{E} &=& -\frac{\partial B}{\partial t} \
\nabla\times\vec{B} &=& \mu_0\left(\vec{J}+\epsilon_0\frac{\partial E}{\partial t} \right)
\end{eqnarray}
$$

參考資料

[1] Wikipedia Markdown 條目,https://zh.wikipedia.org/wiki/Markdown
[2] 不如的博客,http://ibruce.info/2013/11/26/markdown/
[3] Markdown 語法說明 (簡體中文版),http://wowubuntu.com/markdown/index.html
[4] Markdown:讓書寫更美好,http://www.lxweimin.com/p/17fdcf17bbb4
[5] Markdown中插入數(shù)學(xué)公式的方法, http://blog.csdn.net/xiahouzuoxin/article/details/26478179

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,182評論 6 543
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 99,489評論 3 429
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 178,290評論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,776評論 1 317
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 72,510評論 6 412
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 55,866評論 1 328
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,860評論 3 447
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 43,036評論 0 290
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 49,585評論 1 336
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 41,331評論 3 358
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,536評論 1 374
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,058評論 5 363
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 44,754評論 3 349
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,154評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,469評論 1 295
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,273評論 3 399
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 48,505評論 2 379

推薦閱讀更多精彩內(nèi)容

  • Markdown 語法 之劍 2016.5.3 23:41:46 hljs.initHighlightingOnL...
    光劍書架上的書閱讀 1,645評論 1 5
  • Markdown 語法說明 (簡體中文版) 概述宗旨兼容 HTML特殊字符自動轉(zhuǎn)換 區(qū)塊元素段落和換行標(biāo)題區(qū)塊引用...
    蚊子Skeeter閱讀 3,215評論 3 12
  • << 訪問 Wow!Ubuntu NOTE: This is Simplelified Chinese Edit...
    臨城閱讀 6,533評論 4 44
  • 今天還沒下班兒的時候,兒子就給我打電話說,沒有新的四線方格本兒了,以前的那些都用過了,老師說要用新的。糾結(jié)著,等著...
    碩寶_202d閱讀 284評論 0 0
  • 長達兩個星期,終于把唐浩明寫的《曾國藩》上卷看完了,對曾國藩的前半生有了大概的認(rèn)識。 從小就聽說過曾國藩的大名,在...
    常能琿閱讀 1,069評論 0 0