Markdown語(yǔ)法收集整理
寫(xiě)在前面的話(huà)
網(wǎng)上絕對(duì)是已經(jīng)存在不少相關(guān)文章了,但是本人并不自覺(jué)畫(huà)蛇添足,因?yàn)楹芏辔恼峦痈吲R下,對(duì)一些很常用的語(yǔ)法避而不談,致使一眾小白如墜五里霧里……謹(jǐn)以此文敬饗小白_
本文符合github語(yǔ)法規(guī)范,因?yàn)椴煌钠脚_(tái)往往存在細(xì)微差異,本文內(nèi)容可能不完全適用其他環(huán)境。
換行
換行并不能通過(guò)單純使用回車(chē)鍵完成,規(guī)范的語(yǔ)法是“空格+空格+回車(chē)”。換行很重要的哦,不僅能使文章結(jié)構(gòu)更加清晰,也使得語(yǔ)法格式得到中斷。
首行縮進(jìn)
當(dāng)我們新起一行,輸入四個(gè)空格以圖達(dá)到首行縮進(jìn)的排版效果時(shí),你會(huì)發(fā)現(xiàn):不行,之后輸入的文字會(huì)被當(dāng)作代碼給標(biāo)記起來(lái)了。腫么辦?很簡(jiǎn)單,在段首加入“&”+“ensp;"來(lái)輸入一個(gè)空格,輸入“&”+“emsp;”來(lái)代替兩個(gè)空格(一個(gè)漢字寬度)。
標(biāo)題的生成
標(biāo)題之前以符號(hào)“#”開(kāi)頭,且符號(hào)#與正式的標(biāo)題之間最好加入一個(gè)空格(此為規(guī)范語(yǔ)法)。標(biāo)題共有六個(gè)等級(jí),隨著“#”的個(gè)數(shù)從一到六分別為一到六級(jí),字號(hào)漸小。此外,在文字的下一行輸入兩個(gè)以上的減號(hào)或者等號(hào),也會(huì)生成標(biāo)題,這兩種方法生成的標(biāo)題等級(jí)不同。
列表的生成
列表分為有序列表和無(wú)序列表,前者以有序的阿拉伯?dāng)?shù)字開(kāi)頭,數(shù)字后接符號(hào)“.”,后接一空格;后者可以用符號(hào)“*”、“+”、“-”開(kāi)頭,并接一空格,且三者可以混用。在次一行縮進(jìn)四個(gè)字符,可以產(chǎn)生次一級(jí)的列表。列表的前后都要有空行。
示例:
+ 亞洲
??1. 中國(guó)
????- 山東
????- 江蘇
????- 河南
+ 歐洲
??* 德國(guó)
??* 法國(guó)
效果如下:
- 亞洲
- 中國(guó)
- 山東
- 江蘇
- 河南
- 日本
- 韓國(guó)
- 中國(guó)
- 歐洲
- 德國(guó)
- 法國(guó)
如果你在正文中恰好出現(xiàn)數(shù)字加點(diǎn)這種形式,但是并不想形成列表,那么可以在‘.’的前面加上‘\’來(lái)避免出現(xiàn)有序列表。注意,符號(hào)\是轉(zhuǎn)義字符,可以幫過(guò)你輸入原意字符,其作用不限于此處。
??此外,有序列表和無(wú)序列表似乎還可以混用,這樣可以方便很多。但是,最好不要這么做,因?yàn)樵谄渌脚_(tái)中可能會(huì)出現(xiàn)與此處不同的情況,從而產(chǎn)生混亂。
1. 十年生聚
2. 十年教訓(xùn)
- 有志者事竟成百二秦關(guān)終屬楚
+ 苦心人天不負(fù)三千越甲可吞吳
上述例子效果如下:
- 十年生聚
- 十年教訓(xùn)
- 有志者事竟成百二秦關(guān)終屬楚
- 苦心人天不負(fù)三千越甲可吞吳
引用的格式
很簡(jiǎn)單,用符號(hào)“>”開(kāi)頭就可以了。通過(guò)增加大于號(hào)的數(shù)量,可以生成多級(jí)引用。

栗子:
>初唐詩(shī)
>>陳子昂
>>>前無(wú)古人,后來(lái)者,念天地之悠悠,獨(dú)愴然而涕下。
效果:
初唐詩(shī)
陳子昂
前無(wú)古人,后來(lái)者,念天地之悠悠,獨(dú)愴然而涕下。
刪除線(xiàn)
這是GFM所增加的語(yǔ)法,前后各使用一對(duì)“~”直接包住的文字會(huì)被化掉。效果就像這樣:刪除線(xiàn)。
鏈接的生成
Markdown支持兩種鏈接:行內(nèi)式和參考式。格式均為[](),不過(guò)行內(nèi)鏈接的小括號(hào)是緊接在中括號(hào)之后的,中括號(hào)中放置鏈接的名稱(chēng),小括號(hào)中放置鏈接地址,且小括號(hào)中加入雙引號(hào)還可以為鏈接加上標(biāo)題文字。舉個(gè)栗子:
如果我這樣寫(xiě):[知乎](https://www.zhihu.com"行內(nèi)鏈接"),你看到的就是:
知乎。
??參考式的鏈接是在鏈接文字的中括號(hào)后面再接上另一個(gè)中括號(hào),而在第二個(gè)中括號(hào)里面要填入用以辨識(shí)鏈接的標(biāo)記,也可以空出來(lái)不寫(xiě)字,在文件的任意位置,把這個(gè)標(biāo)記的鏈接內(nèi)容寫(xiě)出來(lái)。
[豆瓣][link_douban]是一個(gè)挺不錯(cuò)的網(wǎng)站(這是一個(gè)栗子):
[豆瓣] [link_douban]是一個(gè)挺不錯(cuò)的網(wǎng)站,評(píng)分的理由大多挺騷氣的,我喜歡。
本節(jié)最后會(huì)給出網(wǎng)址。這樣一篇文章中引入的網(wǎng)址很多時(shí)可以得到統(tǒng)一管理,行文時(shí)也不會(huì)顯得混亂。至于給出網(wǎng)址的方式,有兩種(取決于你是否在第二個(gè)中括號(hào)里面填入內(nèi)容。[CSDN][]是另外一個(gè)例子,當(dāng)我這樣寫(xiě),你同樣會(huì)看到這樣的效果:[CSDN][]。
[link_douban]:http://www.douban.com
[CSDN]:http://www.csdn.com
現(xiàn)在給出上述豆瓣網(wǎng)和CSDN的鏈接給出的方式:
[link_douban]:http://www.douban.com
[CSDN]:http://www.csdn.com"參考式"
圖片的引入
類(lèi)似于鏈接的生成,圖片也可以分為行內(nèi)式和參考式,行內(nèi)式的圖片的引入格式為“![]():”感嘆號(hào)之后接一中括號(hào),其中寫(xiě)入圖片的描述文字,之后是小括號(hào),其中寫(xiě)入圖片的地址,最后還可以用引號(hào)包住并加上選擇性的標(biāo)題文字:
示例:

至于圖片的地址,可以登陸極簡(jiǎn)圖床網(wǎng),上傳本地圖片并獲取地址。
![杭州][hangzhou]
![杭州][hangzhou] 是使用參考式引入的另外一張圖片,它的鏈接是這樣給出的:
[hangzhou]:http://i4.buimg.com/567571/0f776055c6741bd7.jpg
[hangzhou]:http://i4.buimg.com/567571/0f776055c6741bd7.jpg
如此放置的圖片,其位置和大小都是默認(rèn)的,我們還可以通過(guò)下面這種方法規(guī)定其大小和位置。align規(guī)定了圖片的位置,alt是圖片的名稱(chēng)。
<div align=center>

</div>
<div align=center>

</div>
??說(shuō)了好多,你有木有發(fā)現(xiàn),真很煩……我猜你一定這么覺(jué)得,不過(guò)不要緊,因?yàn)槲覀兤鋵?shí)很少這么做,像簡(jiǎn)書(shū)啦,CSDN啦等等平臺(tái)和軟件,都對(duì)圖片有很好的支持,可以通過(guò)簡(jiǎn)單的復(fù)制粘貼就完成。具體各不相同,自行領(lǐng)悟去吧......
粗體與斜體
前后分別用兩個(gè)“*”包住的文本將會(huì)是粗體,前后各只用一個(gè)“*”包住的部分將會(huì)是斜體。辣么,問(wèn)題來(lái)了,如果說(shuō)用三個(gè)“*”嘞?你猜......
表格的生成
大量使用符號(hào)“|”去模擬表格的形狀,可以說(shuō)是在“假裝自己是一個(gè)表格”!燃鵝,它還真特么成了一個(gè)表格,你說(shuō)它搞不搞笑......其中第二行中的冒號(hào)的放置決定了該欄內(nèi)容的重心(左對(duì)齊、右對(duì)齊或者居中),默認(rèn)左對(duì)齊。
栗子來(lái)啦:
| 姓 名 | 年 齡 | 性 別 |
| ------- | -------: | :-------: |
| 張 三 | 20 | 男 |
| 李 四 | 22 | 男 |
| 王 五 | 24 | 男 |
| 趙美麗 | 18 | 女 |
| 姓 名 | 年 齡 | 性 別 |
|---|---|---|
| 張 三 | 20 | 男 |
| 李 四 | 22 | 男 |
| 王 五 | 24 | 男 |
| 趙美麗 | 18 | 女 |
代碼的嵌入
如果你縮進(jìn)4個(gè)空格或1個(gè)制表符然后輸入文本,將會(huì)被視為代碼,代碼區(qū)塊會(huì)一直持續(xù)到?jīng)]有縮進(jìn)的一行。我覺(jué)得更加方便的辦法是在代碼區(qū)的開(kāi)頭和結(jié)尾各加入三個(gè)反引號(hào)“···”,按鍵就在“Esc”的下面,因?yàn)橛袝r(shí)候縮進(jìn)會(huì)變得有點(diǎn)煩(還有人會(huì)為了到底要使用空格鍵還是制表符展開(kāi)爭(zhēng)吵,為了世界和平,我們就不要那樣做了......)。如果你只想在行內(nèi)插入少少的一點(diǎn)代碼,可以只是用一個(gè)反引號(hào),比如這樣:`void funtion()`,效果是這樣的void funtion(),也還不錯(cuò)。
添加四個(gè)空格后是這樣的:
public class ActivityCollector {
public static List<Activity> activities = new ArrayList<>();
public static void addActivity(Activity activity){
activities.add(activity);
}
public static void removeActivity(Activity activity){
activities.remove(activity);
}
public static void finishAll(){
for (Activity activity : activities){
if (!activity.isFinishing()){
activity.finish();
}
}
}
}
再使用三個(gè)反引號(hào)加一段代碼試試:
```
protected void onResume(){
??super.onResume();
??IntentFilter intentFilter = new IntentFilter();
??intentFilter.addAction("com.example.liu.broadcastbestpractice.FORCE_OFFLINE");
??receiver = new ForceOfflineReceiver();
??registerReceiver(receiver, intentFilter);
??}
```
上述代碼的效果是醬紫噠:
protected void onResume(){
super.onResume();
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction("com.example.liu.broadcastbestpractice.FORCE_OFFLINE");
receiver = new ForceOfflineReceiver();
registerReceiver(receiver, intentFilter);
}
分割線(xiàn)的生成
在一行中用三個(gè)以上的星號(hào)、減號(hào)、下劃線(xiàn)將會(huì)建立一個(gè)分隔線(xiàn),行內(nèi)不能有其他東西,但可以插入空格。不過(guò),請(qǐng)注意,當(dāng)你要用減號(hào)來(lái)生成分割線(xiàn),而上下文又都存在文字的話(huà),請(qǐng)空出一行,不然其上文會(huì)搞成標(biāo)題,是不是有點(diǎn)煩,一律使用星號(hào)去生成分割線(xiàn)吧。
我是一條分割線(xiàn)
- - ------- - -
上面這個(gè)東西確實(shí)是一條分割線(xiàn),我作證。我是下面這個(gè)東西:
___________
我是最下面這個(gè),你猜我是不是嘞?
***
我是一條分割線(xiàn)
上面這個(gè)東西確實(shí)是一條分割線(xiàn),我作證。我是下面這個(gè)東西:
我是最下面這個(gè),你猜我是不是嘞?
待辦事項(xiàng)TODO
很簡(jiǎn)單,- [ ] 23333,這樣表示待辦,- [x] 23333,這樣表示做好了。注意,我這里第一次使用由三個(gè)空格哦,橫線(xiàn)、方括號(hào)都要跟空格適用。這個(gè)需要
字體、顏色、居中、強(qiáng)制換頁(yè)等
??Markdown是一種可以使用普通文本編輯器編寫(xiě)的標(biāo)記語(yǔ)言,本身是不支持修改字體、字號(hào)與顏色等功能的,但是可以通過(guò)類(lèi)似HTML的標(biāo)記語(yǔ)法,使普通文本內(nèi)容具有一定的格式。簡(jiǎn)單來(lái)說(shuō)就是內(nèi)嵌HTML,直接舉例子吧:
<font size="6" color=red face="楷體">內(nèi)容</font>
然后,你就會(huì)看到如下內(nèi)容:
<font size="6" color=red face="楷體">內(nèi)容</font>
額……失手了……原因是簡(jiǎn)書(shū)還不支持,別的平臺(tái)還好吧,我在VisualStudioCode上可以完美使用_
文字居中的語(yǔ)法:<center>“需要居中從文字”</center>。
強(qiáng)制換頁(yè),只需要在想換頁(yè)的地方輸入這個(gè):
<div STYLE="page-break-after:always;">
</div>
注釋方法
程序員嘛,一定要有注釋的。
[//]: # ()
還可以這樣:
[//]: <> ()
也可以這樣:
[comment]: <> ()
括號(hào)里面的內(nèi)容會(huì)被注釋掉了,最推薦第一種,平臺(tái)適應(yīng)性強(qiáng)。
補(bǔ)充一種:
"<" +"!" + "--" 注釋內(nèi)容 + "--" + ">"