markdown
一種標記語言
Markdown是一種可以使用普通文本編輯器編寫的標記語言,通過簡單的標記語法,它可以使普通文本內容具有一定的格式。
Markdown具有一系列衍生版本,用於擴展Markdown的功能(如表格、腳註、內嵌HTML等等),這些功能原初的Markdown尚不具備,它們能讓Markdown轉換成更多的格式,例如LaTeX,Docbook。Markdown增強版中比較有名的有Markdown Extra、MultiMarkdown、 Maruku等。這些衍生版本要麼基於工具,如Pandoc;要麼基於網站,如GitHub和Wikipedia,在語法上基本兼容,但在一些語法和渲染效果上有改動。
Markdown的語法簡潔明了、學習容易,而且功能比純文本更強,因此有很多人用它寫博客。世界上最流行的博客平台WordPress和大型CMS如Joomla、Drupal都能很好的支持Markdown。完全採用Markdown編輯器的博客平台有Ghost和Typecho。
用於編寫說明文檔,並且以“README.md”的文件名保存在軟體的目錄下面。
除此之外,由於我們有了RStudio這樣的神級編輯器,我們還可以快速將Markdown轉化為演講PPT、Word產品文檔、LaTex論文甚至是用非常少量的代碼完成最小可用原型。在數據科學領域,Markdown已經廣泛使用,極大地推進了動態可重複性研究的歷史進程。
最常見的Markdown格式選項和鍵盤快捷鍵:
輸出后的效果 | Markdown | 快捷鍵 |
Bold | **text** | Ctrl/⌘ + B |
Emphasize | *text* | Ctrl/⌘ + I |
Link | [title](http://) | Ctrl/⌘ + K |
Inline Code | `code` | Ctrl/⌘ + Shift + K |
Image | ![alt](http://) | Ctrl/⌘ + Shift + I |
List | * item | Ctrl + L |
Blockquote | > quote | Ctrl + Q |
H1 | # Heading | |
H2 | ## Heading | Ctrl/⌘ + H |
H3 | ### Heading | Ctrl/⌘ + H (x2) |
標題能顯示出文章的結構。行首插入1-6個 # ,每增加一個 # 表示更深入層次的內容,對應到標題的深度由 1-6 階。
• H1 :# Header 1
• H2 :## Header 2
• H3 :### Header 3
• H4 :#### Header 4
• H5 :##### Header 5
• H6 :###### Header 6
(帶“*”星號的文本樣式,在原版Markdown標準中不存在,但在其大部分衍生標準中被添加)
• 鏈接 :[Title](URL)
• 加粗 :**Bold**
• 斜體字 :*Italics*
• *高亮 :==text==
• 段落 : 段落之間空一行
• 換行符 : 一行結束時輸入兩個空格
• 列表 :* 添加星號成為一個新的列表項。
• 引用 :> 引用內容
• 內嵌代碼 : `alert('Hello World');`
• 畫水平線 (HR) :--------
• 方框:- [ ] -
使用Markdown將圖像插入文章,你需要在Markdown編輯器輸入 ![]() 。這時在預覽面板中會自動創建一個圖像上傳框。你可以從電腦桌面拖放圖片(.png, .gif, .jpg)到上傳框, 或者點擊圖片上傳框使用標準的圖像上傳方式。如果你想通過鏈接插入網路上已經存在的圖片,只要單擊圖片上傳框的左下角的“鏈接”圖標,這時就會呈現圖像URL的輸入框。想給圖片添加一個標題,你需要做的是將標題文本插圖中的方括弧,e.g;![This is a title]().
腳註不存在於標準Markdown中。
使用這樣的佔位符號可以將腳註添加到文本中:[^1]. 另外,你可以使用“n”而不是數字的[^n]所以你可以不必擔心使用哪個號碼。在您的文章的結尾,你可以如下圖所示定義匹配的註腳,URL將變成鏈接:
添加內嵌代碼可以使用一對回勾號 `alert('Hello World')`.對於插入代碼, Ghost支持標準的Markdown代碼和GitHub Flavored Markdown (GFM) 。標準Markdown基於縮進代碼行或者4個空格位:
GFM 使用三個回勾號```
鏈接
列表格式
使用Markdown 引用文本:
Typora、Simplenote、Laverna、Boostnote、Inkdrop、Cmd Markdown、馬克飛象、Yu Writer、看雲、有道雲筆記、為知筆記、螞蟻筆記、scratch(中國社區)
Typora、Typed、Ulysses、Falcon
Markdown Preview、Markdown Here
Draft、JotterPad X、堅果雲Markdown
Byword、simplenote、堅果雲Markdown
John Gruber在2004年創造了Markdown語言,在語法上有很大一部分是跟亞倫·斯沃茨(Aaron Swartz)共同合作的。這個語言的目的是希望大家使用“易於閱讀、易於撰寫的純文字格式,並選擇性的轉換成有效的XHTML(或是HTML)”。其中最重要的設計是可讀性,也就是說這個語言應該要能直接在字面上的被閱讀,而不用被一些格式化指令標記(像是RTF與HTML)。因此,它是現行電子郵件標記格式的慣例,雖然它也借鑒了很多早期的標記語言,如:Setext、Texile、reStructuredText。
Markdown已經成為典型的轉換為HTML的非正式規範 和參考實現。隨著時間的推移,出現了許多Markdown實現。人們開發這些主要是由於在基本語法之上需要額外的功能 - 例如表格,腳註,定義列表(技術上的HTML描述列表)和HTML塊內的Markdown。其中一些行為偏離了最開始的參考實現。與此同時,非正式規範中的一些含糊不清引起了人們的注意。這些問題促使Markdown解析器的一些開發人員努力實現標準化。
2016年3月發布了RFC 7763和RFC 7764。RFC 7763 從原始變體引入了MIME類型 text/markdown。RFC 7764討論並註冊了MultiMarkdown、GitHub Flavored Markdown (GFM)、Pandoc、CommonMark及Markdown等變體。
從2012年開始,包括Jeff Atwood和John MacFarlane在內的一群人啟動了標準化工作。社區網站旨在記錄可用於文檔作者和開發人員的各種工具和資源,以及各種markdown實現的實現者。 2014年9月,Gruber反對在這一工作中繼續使用“Markdown”這個名字,其被更名為CommonMark。 CommonMark發布了規範、參考實現和測試包的幾個版本,並計劃在2018年宣布最終的1.0規範和測試包。
2017年,GitHub發布了基於CommonMark的GitHub Flavored Markdown(GFM)的正式規範。除了表格、刪除線、自動鏈接和任務列表被GitHub規範作為擴展添加之外,它遵循CommonMark規範。 GitHub還相應地更改了其站點上使用的解析器,這要求更改某些文檔 - 例如,GFM要求創建標題的哈希符號由空格字元分隔。
Markdown Extra是一種輕量級標記語言,基於在PHP(最初)、Python和Ruby中實現的Markdown。它添加了普通Markdown語法不具備的功能。內容管理系統支持Markdown Extra,例如Drupal,TYPO3和MediaWiki。
它為Markdown添加了以下功能:
● HTML塊內的markdown標記
● 具有id / class屬性的元素
● 圍欄代碼塊
● 表格
● 定義清單
● 腳註
● 縮寫
Markdown是一種簡單的格式化文本的方法,在任何設備上看起來都很棒。它不會做任何花哨的事情,比如改變字體大小、顏色或類型——只是基本的,使用你已經知道的鍵盤符號。
Markdown語法 | 詳解 | 快捷鍵 | 效果 |
---|---|---|---|
*斜體* | 無 | Ctrl/⌘ + I | 斜體 |
**粗體** | 無 | Ctrl/⌘ + B | 粗體 |
# 一級標題 | "#"后需加空格 | 無 | 無 |
## 二級標題 | 以此類推三級標題為三個“#” | 無 | 無 |
[鏈接](http://a) | “[ ]”間為顯示的超文本 | Ctrl/⌘ + K | 鏈接 |
![圖片](http://url/a.png) | “[ ]”間為圖片名 | Ctrl/⌘ + Shift + I | markdown |
“ > ”引用 | " > "后需加空格 | Ctrl + Q | 無 |
* 無序列表 | 無 | Ctrl + L | 無 |
1. 有序列表 | 無 | 無 | 無 |
--- | 水平分割線 | 無 | ———— |
`內聯代碼` 的使用 | 無 | Ctrl/⌘ + Shift + K | 無 |
``` 代碼塊 ``` | 無 | 無 | 無 |
顏色代碼 | 無 | 無 | |
***斜體+粗體*** | 無 | 無 | 斜體+粗體 |
居中格式 | 文字 | 無 | 文字 |
自動換行 | 例:12345 67890 | Enter | 12345 67890 |
輸入框 | 例:1234 | 無 | 輸入框內的1234 |
顏色第二種 | 文字 | 無 | 無 |
文字大小 | 文字 | 無 | 無 |
字體 | 無 | 無 |
Markdown亦可用於編輯LaTex公式,可跨平台編輯、跨環境顯示。