寫在前面
之前在 CSDN 寫過一段時間的博客,使用的是傳統(tǒng)的文本。最近利用 Github+Hexo
搭建了一個靜態(tài)頁面的個人博客,發(fā)現(xiàn)在上面寫博客必須使用 Markdown,這才發(fā)現(xiàn)現(xiàn)在寫博客幾乎都在使用 Markdown。后知后覺的感覺真是不爽,因此便有了這篇 Markdown 入門教程,希望那些同我一樣不會使用 Markdown 的同志受到一些啟發(fā)。
一、認(rèn)識Markdown
Markdown 是一種可以使用普通文本編輯器編寫的標(biāo)記語言,通過簡單的標(biāo)記語法,它可以使普通文本內(nèi)容具有一定的格式。Markdown 的語法簡潔明了、學(xué)習(xí)容易,不要以為它是一門語言就以為它很難,其實它很簡單,而且功能比純文本更強(qiáng),因此有很多人用它寫博客。
二、Markdown的優(yōu)點
- 純文本,所以兼容性極強(qiáng),可以用所有文本編輯器打開。
- 讓你專注于文字而不是排版。
- 格式轉(zhuǎn)換方便,Markdown 的文本你可以輕松轉(zhuǎn)換為 html、電子書等。
- Markdown 的標(biāo)記語法有極好的可讀性。
三、Markdown的編輯器
我在前面說過,Markdown 可以使用普通文本編輯器編寫,但是在普通文本編輯器編寫肯定不方便,因為你也不敢肯定你寫出來是什么樣子的,因此我們需要更高級的編輯器。
- Windows 平臺
通過我在網(wǎng)上尋找,發(fā)現(xiàn)有兩款還不錯,一款叫做 MarkdownPad ,另一款叫做 MarkPad,我目前使用的是 MarkdownPad。 - Mac OS 平臺
我強(qiáng)烈建議你用 Mou 這款免費(fèi)且十分好用的 Markdown 編輯器,它支持實時預(yù)覽,既左邊是你編輯 Markdown 語言,右邊會實時的生成預(yù)覽效果。不僅如此,Mou 還有一些有趣的偏好設(shè)置(Preference),例如主題(Themes)與樣式(CSS),它們可以配置出定制化的文本編輯效果與導(dǎo)出效果,如果你對自帶的主題與樣式不滿意還可以到 GitHub 上搜索其它愛好者為 Mou 編寫的更多主題樣式,導(dǎo)入的方式可以在偏好設(shè)置的 Themes 或 CSS 選項中 選擇 reload。 - Web 平臺
我強(qiáng)烈推薦簡書這款產(chǎn)品,上面有無數(shù)熱愛文字的人在不停的創(chuàng)造,分享。在 Web 端使用 Markdown 沒有比簡書更舒服的地方了,同樣支持左右兩欄的實時預(yù)覽,字體優(yōu)雅,簡潔。
四、Markdown語法
1、標(biāo)題
標(biāo)題是Markdown中最為常用的格式,在平時常用的的文本編輯器中大多是這樣實現(xiàn)的:輸入文本、選中文本、設(shè)置標(biāo)題格式。而在 Markdown 中,你只需要在文本前面加上 #
即可,同理、你還可以增加二級標(biāo)題、三級標(biāo)題、四級標(biāo)題、五級標(biāo)題和六級標(biāo)題,總共六級,只需要增加 #
即可,標(biāo)題字號相應(yīng)降低。例如:
# 一級標(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)題」之間建議保留一個字符的空格,這是最標(biāo)準(zhǔn)的 Markdown 寫法。
2、粗體和斜體
Markdown 的粗體和斜體也非常簡單,用 **
包含一段文本就是粗體的語法,用一個 *
包含一段文本就是斜體的語法。例如:
**我是粗體**
*我是斜體*
效果如下:
我是粗體
我是斜體
注意:前后的 *
與要與加粗或傾斜的字體之間不能有空格。
3、引用
在我們寫作的時候經(jīng)常需要引用他人的文字,這個時候引用這個格式就很有必要了,在 Markdown 中,你只需要在你希望引用的文字前面加上 >
就好了,例如:
> 這是引用
效果如下:
這是引用
引用還可以嵌套,>>
表示引用里面再套一層引用,依次類推。例如:
> 這是一級引用
>> 這是二級引用
>>> 這是三級引用
效果如下:
這是一級引用
這是二級引用
這是三級引用
注意:
1、如果 >
和 >>
嵌套使用的話,從 >>
退到 >
時,必須之間要加一個空格或者 >
作為過渡,否則默認(rèn)為下一行和上一行是同一級別的引用。
2、引用標(biāo)記里可以使用其他標(biāo)記,如:有序列表或無序列表標(biāo)記,代碼標(biāo)記等。
4、代碼塊
如果你是個程序猿,需要在文章里優(yōu)雅的引用代碼框,在 Markdown 下實現(xiàn)也非常簡單,如果引用的語句只有一段,不分行,可以用 ` 將語句包起來。如果引用的語句為多行,可以使用```將這段代碼包圍起來。例如:
效果如下:
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World");
}
}
`System.out.println("Hello World");`
**注意:
1、` 這個符號是在 Esc 鍵下面,切換到英文下即可。
2、``` 后面的 java 表示此段代碼為 java 代碼,Markdown 會自行使用 java 代碼顏色渲染。這里也可以不寫。**
##5、圖片
在 Markdown 中,插入圖片不需要其他按鈕,你只需要使用 `` 這樣的語法即可,其中:
* `Alt text` 為如果圖片無法顯示時顯示的文字;
* `/path/to/img.jpg` 為圖片所在路徑;
* `Optional title` 為顯示標(biāo)題。顯示效果為在你將鼠標(biāo)放到圖片上后,會顯示一個小框提示,提示的內(nèi)容就是 `Optional title` 里的內(nèi)容。
例如:
效果如下:
>
**注意:
1、導(dǎo)入的圖片路徑可以使用絕對路徑也可以使用相對路徑,建議使用相對路徑。
2、我通常的做法是Markdown文檔的同級目錄下建立一個pictures文件夾,里面放置所有所需的圖片,如果圖片多的話,你也可以在pictures文件夾里建立子文件夾歸類。**
##6、列表
熟悉 HTML 的同學(xué)肯定知道有序列表與無序列表的區(qū)別,在 Markdown 下,列表的顯示只需要在文字前加上 `-` 或 `*` 或 `+` 即可變?yōu)闊o序列表,有序列表則直接在文字前加 `1.` `2.` `3.`,符號要和文字之間加上一個字符的空格。例如:
無序列表
- 呵呵
- 嘉嘉
- 嘻嘻
- 吼吼
- 嘎嘎
- 桀桀
有序列表
- 第一點
- 第二點
- 第三點
效果如下:
>無序列表
* 呵呵
* 嘉嘉
* 嘻嘻
* 吼吼
* 嘎嘎
* 桀桀
>有序列表
1. 第一點
2. 第二點
4. 第三點
**注意:
1、無序列表或有序列表標(biāo)記和后面的文字之間要有一個空格隔開。
2、有序列表標(biāo)記不是按照你寫的數(shù)字進(jìn)行顯示的,而是根據(jù)當(dāng)前有序列表標(biāo)記所在位置顯示的,如示例所示。
3、無序列表的項目符號是按照實心圓、空心圓、實心方格的層級關(guān)系遞進(jìn)的,如示例所示。通常情況下,同一層級使用同一種標(biāo)記表示,便于自己查看和管理。**
##7、分割線
使用 `---` 或者 `***` 或者 `* * *` 表示水平分割線。例如:
效果如下:
>---
***
* * *
**注意:
1、只要 `*` 或者 `-` 大于等于三個就可組成一條平行線。
2、使用 `---` 作為水平分割線時,要在它的前后都空一行,防止 `---` 被當(dāng)成標(biāo)題標(biāo)記的表示方式。**
##8、鏈接
在 Markdown 中,插入鏈接不需要其他按鈕,你只需要使用 `[](link "Optional title")` 這樣的語法即可,其中:
* `[]` 內(nèi)的內(nèi)容為要添加鏈接的文字。
* `link` 為鏈接地址。
* `Optional title` 為顯示標(biāo)題。顯示效果為在你將鼠標(biāo)放到鏈接上后,會顯示一個小框提示,提示的內(nèi)容就是 `Optional title` 里的內(nèi)容。
例如:
效果如下:
>[Baidu](www.baidu.com "百度一下,你就知道" )
##9、反斜杠
使用 `\` 表示反斜杠。在你不想顯示 Markdown 標(biāo)記時可以使用反斜杠。例如:
*這里不會顯示斜體*
效果如下:
>\*這里不會顯示斜體\*
##10、空格
Markdown 語法會忽略首行開頭的空格,如果要體現(xiàn)出首行開頭空兩個的效果,可以使用 **全角符號下的空格**,windows下使用 `shift+空格` 切換。
##11、刪除線
使用 `~~` 表示刪除線。例如:
這是一條刪除線
效果如下:
>~~這是一條刪除線~~
**注意:
1、注意 `~~` 和 要添加刪除線的文字之間不能有空格。
2、我常使用在顯示的告訴自己這行文字是要刪除的。**
#結(jié)語
以上就是我在學(xué)習(xí)Markdown后的總結(jié),其中介紹的Markdown語法都是比較常用的,我也對這些語法做出了比較詳細(xì)的說明,如果有描述的不對的地方,歡迎批評指正,希望能對各位有所幫助。