(小白入手必讀)
喜歡簡書的朋友和措,每天看著別人寫的文章,自己也總會有想去寫一些東西的沖動蜕煌,可是面對簡書的文本編輯格式派阱,不少人會望而卻步。
我是從三年前就一直關(guān)注簡書的斜纪,也算是老用戶了贫母,今天終于決定提起筆開始寫作之路。然而要想用簡書進行創(chuàng)作盒刚,就不能不學習Markdown語法腺劣,我這兩天在網(wǎng)上查找了一些Markdown語法教程,但并不能解決我書寫過程在遇到的所有問題因块。
所以今天我寫下這篇文章橘原,用來給像我一樣的小白以指導(dǎo)(本文創(chuàng)作過程中用到的參考同樣會附上,以方便大家更快地學習)贮聂。
先簡單介紹一下Markdown語言:
Markdown是一種可以使用普通文本編輯器編寫的標記語言靠柑,通過簡單的標記語法寨辩,它可以使普通文本內(nèi)容具有一定的格式吓懈。
由于初始的Markdown語言并不完善,所以Markdown有一系列的衍生版本靡狞,用于擴展Markdown的功能(如表格耻警、腳注等)。
這些衍生的版本讓Markdown擁有了更多的功能,雖然在一些語法和渲染效果上有改動甘穿,但是語法基本上都是相互兼容的腮恩。今天我們要講述的簡書編輯器也是衍生版本之一,只不過簡書讓Markdown語言更加方便實用温兼,這里不得不贊一下幕后的程序員們秸滴,O(∩_∩)O哈哈~
當然啦,我們就只是想用這種工具來完成我們的寫作募判,所以很多功能都不是必須要知道的荡含,這里我就只介紹一下寫作過程中會用到而且方便使用的集中語法。
好了届垫,不贅述了释液,趕快進入正文啦!
1.標題
標題是一篇文章必不可少的装处,也是寫作最先接觸到的误债,所以把標題放在第一章節(jié)。
例如:
Markdown程序:
# 這是一級標題
## 這是二級標題
### 這是三級標題
#### 這是四級標題
##### 這是五級標題
得到的渲染結(jié)果為:
這是一級標題
這是二級標題
這是三級標題
這是四級標題
這是五級標題
由此例可以看出#
符號的個數(shù)代表標題的級數(shù)妄迁,需要三級標題就用三個#
號寝蹈,需要五級標題就用五個#
號,以此類推登淘。
(注意躺盛!注意!注意P伟铩)
#
號和標題之間的空格可有可無槽惫,不影響效果!
還有一種情況需要特別說明:
為了對稱美觀辩撑,標題后邊也可以加空格和#
號界斜。
例如:
Markdown語言:
# 這是一級標題 #
## 這是二級標題 ##
### 這是三級標題 ###
### 這是三級標題 ###
### 這是三級標題 ######
### 這是三級標題 ##########
得到的顯示為:
這是一級標題
這是二級標題
這是三級標題
這是三級標題
這是三級標題
這是三級標題
標題后空格、#
號的添加與否合冀,以及空格和#
號個數(shù)的多少各薇,均不會影響渲染效果。
2.字體
Markdown語言中的字體的樣式主要有正常君躺、傾斜峭判、加粗、加粗傾斜棕叫、刪除線五種字體樣式林螃。
傾斜字體需要在兩邊各使用一個*
或者_
;
加粗字體需要在兩邊各使用兩個個*
俺泣;
傾斜加粗字體需要在兩邊各使用三個*
疗认;
刪除線字體需要在兩邊各使用兩個~
完残。
例如:
Markdown語言:
This is Normal Type.
*This is Italic Type.*
_This is Italic Type._
**This is Bold Type.**
***This is Italic & Bold Type.***
~~This is Delete Type.~~
得到的顯示為:
This is Normal Type.
This is Italic Type.
This is Italic Type.
This is Bold Type.
This is Italic & Bold Type.
This is Delete Type.
3.列表
Markdown支持無序列表和有序列表。
3.1無序列表和有序列表
3.1.1無序列表
無序列表使用-
+
*
進行列表標記横漏。
例如:
Markdown語言:
- 生命誠可貴谨设,
+ 愛情價更高;
* 若為自由故缎浇,
- 兩者皆可拋扎拣!
得到的顯示為:
- 生命誠可貴,
- 愛情價更高素跺;
- 若為自由故鹏秋,
- 兩者皆可拋!
注意:-
+
*
三種符號是等同的亡笑。
3.1.2有序列表
例如:
Markdown語言:
1. 生命誠可貴侣夷,
2. 愛情價更高;
3. 若為自由故,
4. 兩者皆可拋!
得到的顯示為:
- 生命誠可貴仑乌,
- 愛情價更高;
- 若為自由故百拓,
- 兩者皆可拋!
3.1.3有序列表中的無序列表
例如:
Markdown語言:
1. 生命誠可貴,
2. 愛情價更高;
- 生命誠可貴晰甚,
+ 愛情價更高;
3. 若為自由故衙传,
* 若為自由故,
- 兩者皆可拋!
4. 兩者皆可拋!
得到的顯示為:
- 生命誠可貴厕九,
- 愛情價更高;
- 生命誠可貴蓖捶,
- 愛情價更高;
- 若為自由故,
- 若為自由故扁远,
- 兩者皆可拋!
- 兩者皆可拋!
3.1.4無序列表中的有序列表
例如:
Markdown語言:
- 生命誠可貴俊鱼,
+ 愛情價更高;
1. 生命誠可貴,
1. 愛情價更高;
1. 若為自由故畅买,
1. 兩者皆可拋!
* 若為自由故并闲,
- 兩者皆可拋!
和Markdown語言:
- 生命誠可貴,
+ 愛情價更高;
1. 生命誠可貴谷羞,
2. 愛情價更高;
3. 若為自由故帝火,
4. 兩者皆可拋!
* 若為自由故,
- 兩者皆可拋!
最后得出的渲染效果相同湃缎,得到的顯示都是:
- 生命誠可貴犀填,
- 愛情價更高;
- 生命誠可貴,
- 愛情價更高;
- 若為自由故嗓违,
- 兩者皆可拋!
- 若為自由故九巡,
- 兩者皆可拋!
可以看出:在Markdown語言中,無序列表中的有序列表前的數(shù)字序號對列表的渲染效果是沒有影響的靠瞎。
3.1.5有序列表中的有序列表
例如:
Markdown語言:
1. 生命誠可貴比庄,
2. 愛情價更高;
1. 生命誠可貴求妹,
2. 愛情價更高;
3. 若為自由故乏盐,
4. 兩者皆可拋!
3. 若為自由故佳窑,
4. 兩者皆可拋!
得到的顯示為:
- 生命誠可貴,
- 愛情價更高;
- 生命誠可貴父能,
- 愛情價更高;
- 若為自由故神凑,
- 兩者皆可拋!
- 若為自由故,
- 兩者皆可拋!
3.1.6無序列表中的無序列表
接下來列舉兩個文章中常用到的兩種無序列表嵌套使用的實例子:
例如:
Markdown語言:
- 生命誠可貴何吝,
+ 愛情價更高;
* - 若為自由故溉委,
- * 兩者皆可拋!
得到的顯示為:
- 生命誠可貴,
- 愛情價更高;
- 若為自由故爱榕,
- 兩者皆可拋!
注意:
上一級和下一級的無序列表混合使用瓣喊,可以使用在下一級的無序列表前添加三個空格鍵實現(xiàn)。
例如:
Markdown語言:
- 生命誠可貴黔酥,
+ 愛情價更高;
* 生命誠可貴藻三,
- 愛情價更高;
- 若為自由故,
* 兩者皆可拋!
- 若為自由故跪者,
* 兩者皆可拋!
得到的顯示為:
- 生命誠可貴棵帽,
- 愛情價更高;
- 生命誠可貴,
- 愛情價更高;
- 若為自由故渣玲,
- 兩者皆可拋!
- 若為自由故逗概,
- 兩者皆可拋!
3.2列表縮進
Markdown語法中支持列表項目縮進,只用在第一行內(nèi)容前使用列表符忘衍。
例如:
Markdown語言:
- 莫聽穿林打葉聲逾苫,
何妨吟嘯且徐行。
竹杖芒鞋輕勝馬枚钓,
+ 誰怕隶垮?
一蓑煙雨任平生。
得到的顯示為:
- 莫聽穿林打葉聲秘噪,
何妨吟嘯且徐行狸吞。
竹杖芒鞋輕勝馬,
- 誰怕指煎?
一蓑煙雨任平生
3.3包含段落的列表縮進
當列表項目中包含多個段落時蹋偏,每個段落之前都必須縮進4個空格符(一次縮進)。
例如:
Markdown語言:
- 莫聽穿林打葉聲至壤,
何妨吟嘯且徐行威始。
竹杖芒鞋輕勝馬,
一蓑煙雨任平生像街。
莫聽穿林打葉聲黎棠,
何妨吟嘯且徐行晋渺。
竹杖芒鞋輕勝馬,
一蓑煙雨任平生
得到的顯示為:
-
莫聽穿林打葉聲脓斩,
何妨吟嘯且徐行木西。
竹杖芒鞋輕勝馬,
一蓑煙雨任平生随静。莫聽穿林打葉聲八千,
何妨吟嘯且徐行。
竹杖芒鞋輕勝馬燎猛,
一蓑煙雨任平生
3.4包含引用的列表
如果要在列表中進行引用恋捆,需要使用>
符號進行實現(xiàn):
例如:
Markdown語言:
- 莫聽穿林打葉聲,
何妨吟嘯且徐行重绷。
竹杖芒鞋輕勝馬沸停,
一蓑煙雨任平生。
> 莫聽穿林打葉聲昭卓,
何妨吟嘯且徐行愤钾。
竹杖芒鞋輕勝馬,
一蓑煙雨任平生
得到的顯示為:
- 莫聽穿林打葉聲葬凳,
何妨吟嘯且徐行绰垂。
竹杖芒鞋輕勝馬,
一蓑煙雨任平生火焰。
莫聽穿林打葉聲劲装,
何妨吟嘯且徐行。竹杖芒鞋輕勝馬昌简,
一蓑煙雨任平生
3.5一個特殊情況
這里講一下\
符號的特殊使用(避免在行首出現(xiàn)'數(shù)字-句點-空白'的情況占业,需要在數(shù)字之后加上\
符號)。
例如:
Markdown語言:
2008. Nowadays, people of all strata begin to ...
2008\. Nowadays, people of all strata begin to ...
得到的顯示為:
- Nowadays, people of all strata begin to ...
2008. Nowadays, people of all strata begin to ...
4.引用和嵌套
4.1引用
引用是指在說話或?qū)懽髦幸矛F(xiàn)成的話纯赎,如詩句谦疾、格言、成語等犬金,以表達自己思想感情的修辭方法念恍。
在書本的行文中用引號(“ ”和' ')來表示引用,相應(yīng)的晚顷,在Markdown語言中也給了特殊的語言以及渲染效果來表示引用峰伙。
例如:
Markdown語言:
> 我愿意是急流,
山里的小河该默,
在崎嶇的路上瞳氓,
巖石上經(jīng)過……
得到的顯示為:
我愿意是急流,
山里的小河栓袖,
在崎嶇的路上匣摘,
巖石上經(jīng)過……
在這里店诗,Markdown語言允許我們偷懶,僅需要在第一行中使用>
符號就可以一直引用音榜,而不用在每一行引用的內(nèi)容前都添加>
符號庞瘸,大大方便了我們的使用。同理囊咏,>
符號后的空格可有可無恕洲。
那么塔橡,如果想結(jié)束引用梅割,該怎么辦呢?
答案:可以使用空行來結(jié)束內(nèi)容的引用葛家。
例如:
Markdown語言:
> 我愿意是急流户辞,
山里的小河,
在崎嶇的路上癞谒,
巖石上經(jīng)過……
得到的顯示為:
我愿意是急流底燎,
山里的小河,
在崎嶇的路上弹砚,
巖石上經(jīng)過……
4.2嵌套{#index}
嵌套双仍,指在已有的表格、圖像或圖層中再加進去一個或多個表格桌吃、圖像或圖層的方法朱沃,簡單可理解為鑲嵌、套用茅诱。在Markdown語言中逗物,嵌套表示在引用的內(nèi)容中引用另外的內(nèi)容。
例如:
Markdown語言:
> 我愿意是急流瑟俭,
山里的小河翎卓,
> > 在崎嶇的路上,
巖石上經(jīng)過……
> > > 只要我的愛人
是一條小魚摆寄,
> > > > > > > 在我的浪花中
快樂地游來游去
得到的顯示為:
我愿意是急流失暴,
山里的小河,在崎嶇的路上微饥,
巖石上經(jīng)過……
只要我的愛人
是一條小魚逗扒,在我的浪花中
快樂地游來游去
注意:
如果想結(jié)束當前引用返回到上一級的引用,可以先使用空行來結(jié)束當前引用畜号,再使用與想返回一級相同數(shù)量的>
符號來實現(xiàn)缴阎。
例如:
Markdown語言:
> 我愿意是急流,
山里的小河简软,
> > 在崎嶇的路上蛮拔,
巖石上經(jīng)過……
> > > 只要我的愛人
是一條小魚述暂,
> > > > 在我的浪花中
快樂地游來游去
> > 在我的浪花中
快樂地游來游去
得到的顯示為:
我愿意是急流,
山里的小河建炫,在崎嶇的路上畦韭,
巖石上經(jīng)過……只要我的愛人
是一條小魚,在我的浪花中
快樂地游來游去
在我的浪花中
快樂地游來游去
5.超鏈接和錨點
Markdown語法提供了三種超鏈接形式:行內(nèi)式肛跌、參考式和自動鏈接艺配。
5.1行內(nèi)式超鏈接
行內(nèi)式超鏈接形式是最常用的,語法如下(鏈接標題一項可有可無):
[鏈接文字](鏈接地址 "鏈接標題")
鏈接地址和鏈接標題之間有一個空格衍慎。
例如:
Markdown語言:
歡迎訪問[微博](https://weibo.com/)转唉;
快速進入[簡書](http://www.reibang.com/ "簡書"),開啟你的創(chuàng)作稳捆;
歡迎來到[知乎](https://www.zhihu.com/ "知乎")赠法,發(fā)現(xiàn)更大的世界。
得到的顯示為:
歡迎訪問微博乔夯;
快速進入簡書砖织,開啟你的創(chuàng)作;
歡迎來到知乎末荐,發(fā)現(xiàn)更大的世界侧纯。
5.2參考式超鏈接
參考式超鏈接分為兩種,一種是鏈接文字和鏈接標記不同甲脏,一種是鏈接文字本身作為鏈接標記眶熬。
鏈接文字和鏈接標記不同時,語法分為兩部分剃幌,Markdown語法如下:
[鏈接文字][鏈接標記]
[鏈接標記]:鏈接地址 "鏈接標題"
鏈接文字本身作為鏈接標記時聋涨,語法也分為兩部分,如下:
[鏈接文字][]
[鏈接文字]:鏈接地址
例如:
Markdown語言:
每天我必須會訪問的三個網(wǎng)站[簡書][1]负乡、[微博][2]牍白、[知乎][3],
除了這三個必須訪問的網(wǎng)站抖棘,還會訪問[喜馬拉雅FM][]茂腥、[書法之家][]等。
[1]:http://www.reibang.com/
[2]:https://www.weibo.com/ "微博"
[3]:https://www.zhihu.com/ "知乎"
[喜馬拉雅FM]:https://www.ximalaya.com/
[書法之家]:http://www.sfzj123.com/m
得到的顯示為:
每天我必須會訪問的三個網(wǎng)站簡書切省、微博最岗、知乎,
除了這三個必須訪問的網(wǎng)站朝捆,還會訪問喜馬拉雅FM般渡、書法之家等。
注意:和所有編程語言一樣,Markdown語法中所有的字母和符號都必須是半角符號驯用。
5.3自動鏈接
自動鏈接常用來處理網(wǎng)址和郵箱地址等脸秽,只需要用<>
將網(wǎng)址或者郵箱包括起來就可以了。
例如:
Markdown語言:
<http://www.reibang.com/>
<https://www.weibo.com/>
<gyf_seu@163.com>
得到的顯示為:
http://www.reibang.com/
https://www.weibo.com/
gyf_seu@163.com
6.分割線
你可以在一行中使用三個以上的*
蝴乔、-
和_
來建立一個分割線记餐,行內(nèi)不能有其他字符。也可以在這三種符號之間加入空格薇正,不影響渲染效果片酝。
例如:
Markdown語言:
---
- - -
--------
***
* * *
___
_ _ _ _ _
得到的顯示為:
這些不同的語法得到的渲染效果都是相同的。
7.圖像
簡書Markdown圖片的創(chuàng)建方式與超鏈接相似挖腰,最常用的方法就是行內(nèi)式雕沿。
行內(nèi)式的Markdown語法如下:
[圖片上傳失敗...(image-a73492-1543568295086)]
例如:
行內(nèi)式Markdown語言:
![星空.jpg](https://upload-images.jianshu.io/upload_images/1401287-46f6c1b0742b2059.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240 "星空 梵高")
得到的顯示為:
8.表格
表格語法說明:
- 1. 第一行為表頭,第二行為分割行(用來分開表頭和表格正文行)曙聂,第三行及以后為正文行晦炊;
- 2. 列與列之間使用符號
|
隔開鞠鲜;
- 3. 第二行可以為不同的列指定對齊方向宁脊。
例如:
參考式Markdown語言:
|姓名|性別|年齡|
|- | :-:| -----|
|小明|男|5|
|大黃|男|6|
|小紅|女|4|
和:
|項目|價格|數(shù)量|
|---|:--:|--:|
|計算機|\$1600|5|
|手機|\$12|12|
|管線|\$1|234|
得到的顯示為:
姓名 | 性別 | 年齡 | 出生地 |
---|---|---|---|
小明 | 男 | 5 | 北京 |
大黃 | 男 | 6 | 上海 |
小紅 | 女 | 4 | 深圳 |
和:
項目 | 價格 | 數(shù)量 |
---|---|---|
計算機 | $1600 | 5 |
手機 | $12 | 12 |
管線 | $1 | 234 |
需要值得說明的是:
- 1. 兩個符號
|
之間,除了需要顯示的內(nèi)容外贤姆,可以有空格榆苞,空格不影響渲染效果;
- 2. 第二行使用
:
來指定列的對齊方向霞捡,默認居左顯示坐漏。
9.待辦事宜Todo列表
Markdown語言中可以使用帶有[ ]
或[x]
(未完成或已完成)的列表語法撰寫一個待辦事宜列表,并且支持子列表嵌套以及混用Markdown語法.
例如:
Markdown語言:
- [ ] **今天的工作**
- [ ] 做office
- [ ] 畫圖
- [x] 辦簽證
- [x] 辦理護照
- [x] 拍照
- [x] 公證
得到的顯示為:
- [ ] 今天的工作
- [ ] 做office
- [ ] 畫圖
- [x] 辦簽證
- [x] 辦理護照
- [x] 拍照
- [x] 公證
注意:語法中可以使用4個空格(一次縮進)來表示上下級從屬關(guān)系碧信。
10.注腳
在需要添加注腳的文字后邊使用[^keyword]
來添加注腳赊琳。
語法如下:
[^keyword1]
[^keyword2]
[^keyword3]
[^keyword1]:注腳釋義。
[^keyword2]:注腳釋義砰碴。
[^keyword3]:注腳釋義躏筏。
例如:
Markdown語言:
這是一個注腳[^footnote]的樣例。
這是第二個注腳[^footnote2]的樣例呈枉。
使用Markdown[^2]可以提高書寫效率趁尼。
[^footnote]:這個注腳只是個例子;
[^footnote2]:這個注腳也是個例子猖辫;
[^2]:這個注腳還是個例子酥泞;
得到的顯示為:
這是一個注腳[1]的樣例。
這是第二個注腳[2]的樣例啃憎。
使用Markdown[3]可以提高書寫效率芝囤。
注意:
- 注腳前必須有對應(yīng)的注腳名字(keyword);
- 兩個注腳之間必須要空一行,否則會失效;
- 所有的注腳在渲染結(jié)果中都會被自動移到文末悯姊。
11.LaTeX公式
11.1行內(nèi)公式
在Markdown語言中名党,用$
來表示行內(nèi)公式,例如質(zhì)能守恒方程可以用一個很簡潔的方程式來表達挠轴。
例如:
Markdown語言:
$E=mc^2$
得到的顯示為:
11.2整行公式
Markdown語言中用$$
表示整行公式.
例如:
Markdown語言:
$$\sum_{i=1}^n a_i=0$$
$$f(x_1,x_x,\ldots,x_n) = x_1^2 + x_2^2 + \cdots + x_n^2 $$
$$\sum^{j-1}_{k=0}{\widehat{\gamma}_{kj} z_k}$$
得到的顯示為:
訪問 MathJax 參考更多使用方法传睹。
12.代碼
Markdown支持四十一種編程語言的語法高亮的顯示亏较,行號顯示帮非。
12.1單行代碼
單行代碼的顯示,需要借助 ` 符號來實現(xiàn)兑宇,在單行代碼的兩段分別使用一個启上。
例如:
Markdown語言:
`print 'I'm a good boy.`
得到的顯示為:
print 'I'm a good boy.
12.2代碼塊
代碼塊的顯示需要借助三個 ` 符號實現(xiàn)邢隧,即在代碼塊的前后分別使用三個。
非代碼示例:
$ sudo apt-get install vim-gnome
Python 示例:
@requires_authorization
def somefunc(param1='', param2=0):
'''A docstring'''
if param1 > param2: # interesting
print 'Greater'
return (param2 - param1 + 1) or None
class SomeClass:
pass
>>> message = '''interpreter
... prompt'''
JavaScript 示例:
/**
* nth element in the fibonacci series.
* @param n >= 0
* @return the nth element, >= 0.
*/
function fib(n) {
var a = 1, b = 1;
var tmp;
while (--n >= 0) {
tmp = a;
a += b;
b = tmp;
}
return a;
}
document.write(fib(10));
由于簡書是Markdown原生編輯器衍生出來的一個版本冈在,所以簡書編輯器對語法進行了適當?shù)男薷牡够郏沟煤啎庉嬈鞲谖恼聞?chuàng)作。
很多Markdown語法在簡書編輯器中渲染不了包券,所以本文中只列舉了最常用最方便的語法纫谅。
時間倉促,多有不足溅固,歡迎大家指正付秕!