Markdown是一種可使用普通文本編輯器編寫的標記語言,經過簡單的標記語法,它可使普通文本內容具備必定的格式。html
Markdown 的優勢以下:
純文本,因此兼容性極強,能夠用全部文本編輯器打開。
讓你專一於文字而不是排版。
格式轉換方便,Markdown 的文本你能夠輕鬆轉換爲 html、電子書等。
Markdown 的標記語法有極好的可讀性。
文件後綴名: .md;.markdown;.mdown
宗旨: 易讀易寫
特色: 輕量、簡單、通用
Markdown的語法簡潔明瞭、學習容易,並且功能比純文本更強,所以有不少人用它寫博客。世界上最流行的博客平臺WordPress和大型CMS如Joomla、Drupal都能很好的支持Markdown。徹底採用Markdown編輯器的博客平臺有Ghost和Typecho。
用於編寫說明文檔,而且以「README.MD」的文件名保存在軟件的目錄下面。
除此以外,如今因爲咱們有了RStudio這樣的神級編輯器,咱們還能夠快速將Markdown轉化爲演講PPT、Word產品文檔、LaTex論文甚至是用很是少許的代碼完成最小可用原型。在數據科學領域,Markdown已經被確立爲科學研究規範,極大地推動了動態可重複性研究的歷史進程。
markdown
基本用法:app
段落和換行
一個 Markdown 段落是由一個或多個連續的文本行組成,它的先後要有一個以上的空行(空行的定義是顯示上看起來像是空的,便會被視爲空行。比方說,若某一行只包含空格和製表符,則該行也會被視爲空行)。普通段落不應用空格或製表符來縮進。
「由一個或多個連續的文本行組成」這句話其實暗示了 Markdown 容許段落內的強迫換行(插入換行符),這個特性和其餘大部分的 text-to-HTML 格式不同(包括 Movable Type 的「Convert Line Breaks」選項),其它的格式會把每一個換行符都轉成 <br /> 標籤。
若是你確實想要依賴 Markdown 來插入 <br /> 標籤的話,在插入處先按入兩個以上的空格而後回車。的確,須要多費點事(多加空格)來產生 <br /> 編輯器
標題
Markdown 支持兩種標題的語法,類 Setext 和類 atx 形式。
類 Setext 形式是用底線的形式,利用 = (最高階標題)和 - (第二階標題),例如:
學習
1 This is an H1 2 ============= //這種語法不常見 3 This is an H2 4 -------------
任何數量的 = 和 - 均可以有效果。
類 Atx 形式則是在行首插入 1 到 6 個 # ,對應到標題 1 到 6 階,例如:this
1 //這種語法經常使用 2 # 這是 H1 3 ## 這是 H2 4 .... 5 ###### 這是 H6
你能夠選擇性地「閉合」類 atx 樣式的標題,這純粹只是美觀用的,如果以爲這樣看起來比較溫馨,你就能夠在行尾加上 #,而行尾的 # 數量也不用和開頭同樣(行首的井字符數量決定標題的階數):spa
1 //也能夠閉合,建議不用,只是別人寫的時候能看懂就行 2 # 這是 H1 # 3 ## 這是 H2 ## 5 ..... 6 ### 這是 H3 ######
引用
在咱們寫做的時候常常須要引用他人的文字,這個時候引用這個格式就頗有必要了,在 Markdown 中,你只須要在你但願引用的文字前面加上 > 就行了,例如:
> 一盞燈, 一片昏黃; 一簡書, 一杯淡茶。 守着那一份淡定, 品讀屬於本身的寂寞。 保持淡定, 才能欣賞到最美麗的風景! 保持淡定, 人生今後再也不寂寞。
注:> 和文本之間要保留一個字符的空格。code
列表
Markdown 支持有序列表和無序列表。
無序列表使用星號、加號或是減號做爲列表標記:
htm
1 * Red 2 * Green 3 * Blue
4 等同於:
5 + Red 6 + Green 7 + Blue
8 也等同於:
9 - Red 10 - Green 11 - Blue
有序列表則使用數字接着一個英文句點:blog
1 1. Bird 2 2. McHale 3 3. Parish
很重要的一點是,你在列表標記上使用的數字並不會影響輸出的 HTML 結果,上面的列表所產生的 HTML 標記爲:
1 <ol> 2 <li>Bird</li> 3 <li>McHale</li> 4 <li>Parish</li> 5 </ol>
若是你的列表標記寫成:
1 1. Bird 2 1. McHale 3 1. Parish 4 或甚至是: 5 3. Bird 6 1. McHale 7 8. Parish
你都會獲得徹底相同的 HTML 輸出。重點在於,你可讓 Markdown 文件的列表數字和輸出的結果相同,或是你懶一點,你能夠徹底不用在乎數字的正確性。
固然,項目列表極可能會不當心產生,像是下面這樣的寫法:
1986. What a great season.
換句話說,也就是在行首出現數字-句點-空白,要避免這樣的情況,你能夠在句點前面加上反斜槓。
1986\. What a great season.
代碼區塊
和程序相關的寫做或是標籤語言原始碼一般會有已經排版好的代碼區塊,一般這些區塊咱們並不但願它以通常段落文件的方式去排版,而是照原來的樣子顯示,Markdown 會用 <pre> 和 <code> 標籤來把代碼區塊包起來。
要在 Markdown 中創建代碼區塊很簡單,只要簡單地縮進 4 個空格或是 1 個製表符就能夠,例如,下面的輸入:
這個每行一階的縮進(4 個空格或是 1 個製表符),都會被移除,例如:
1 Here is an example of AppleScript: 2 tell application "Foo" 3 beep 4 end tell 5 會被轉換爲: 6 <p>Here is an example of AppleScript:</p> 7 <pre> 9 <code>tell application "Foo" 10 beep 11 end tell 12 </code> 14 </pre>
一個代碼區塊會一直持續到沒有縮進的那一行(或是文件結尾)。
在代碼區塊裏面, & 、 < 和 > 會自動轉成 HTML 實體,這樣的方式讓你很是容易使用 Markdown 插入範例用的 HTML 原始碼,只須要複製貼上,再加上縮進就能夠了,剩下的 Markdown 都會幫你處理,例如:
1 <div class="footer"> 2 © 2004 Foo Corporation 3 </div> 4 會被轉換爲: 5 <pre><code><div class="footer"> 6 &copy; 2004 Foo Corporation 7 </div> 8 </code></pre>
代碼區塊中,通常的 Markdown 語法不會被轉換,像是星號便只是星號,這表示你能夠很容易地以 Markdown 語法撰寫 Markdown 語法相關的文件。
分隔線
你能夠在一行中用三個以上的星號、減號、底線來創建一個分隔線,行內不能有其餘東西。你也能夠在星號或是減號中間插入空格。下面每種寫法均可以創建分隔線:
* * * *** ***** - - - ---------------------------------------
連接和圖片
在 Markdown 中,插入連接不須要其餘按鈕,你只須要使用 [顯示文本](連接地址) 這樣的語法便可,例如:
[簡書](http://www.jianshu.com)
在 Markdown 中,插入圖片不須要其餘按鈕,你只須要使用 ![](圖片連接地址) 這樣的語法便可,例如:
![](http://ww4.sinaimg.cn/bmiddle/aa397b7fjw1dzplsgpdw5j.jpg)
注:插入圖片的語法和連接的語法很像,只是前面多了一個 !。
強調
Markdown 使用星號(*)和底線(_)做爲標記強調字詞的符號,被 * 或 _ 包圍的字詞會被轉成用 <em> 標籤包圍,用兩個 * 或 _ 包起來的話,則會被轉成 <strong>,例如:
1 *single asterisks* 2 _single underscores_ 3 **double asterisks** 4 __double underscores__ 5 會轉成: 6 <em>single asterisks</em> 7 <em>single underscores</em> 8 <strong>double asterisks</strong> 9 <strong>double underscores</strong>
你能夠隨便用你喜歡的樣式,惟一的限制是,你用什麼符號開啓標籤,就要用什麼符號結束。
強調也能夠直接插在文字中間:
un*frigging*believable
可是若是你的 * 和 _ 兩邊都有空白的話,它們就只會被當成普通的符號。
若是要在文字先後直接插入普通的星號或底線,你能夠用反斜線:
\*this text is surrounded by literal asterisks\*
反斜槓
Markdown 能夠利用反斜槓來插入一些在語法中有其它意義的符號,例如:若是你想要用星號加在文字旁邊的方式來作出強調效果(但不用 <em> 標籤),你能夠在星號的前面加上反斜槓:
\*literal asterisks\*
Markdown 支持如下這些符號前面加上反斜槓來幫助插入普通的符號:
1 \ 反斜線 2 ` 反引號 3 * 星號 4 _ 底線 5 {} 花括號 6 [] 方括號 7 () 括弧 8 # 井字號 9 + 加號 10 - 減號 11 . 英文句點