Markdown語法入門
大家在項目開發的過程中,編寫文檔是不是大家的痛點呢?如果文檔只是寫在word裏面,那不成問題。文檔格式在windows,Linux或者MacOS之間不兼容,那麽將word直接轉為PDF再發布出去,這也不成問題。但是現在是互聯網時代,用戶都喜歡在網絡上直接瀏覽文章,那在word編寫文檔之後,我們是很難直接將word格式轉為相應HTML,這需要一定量的工作。
最顯而易見的例子就是,當我們在word裏面寫好了文檔,編輯好了格式,但是粘貼到confluence中,還是需要重新排版。
Markdown為此而生,用戶使用markdown編寫純文本後,markdown自動就將元素翻譯成html頁面,直接就能在網站裏面顯示。現在的github中的文檔,以及簡書等網站,都是用擴展名為md的markdown文件作為默認編寫工具的。
這篇分享就是用Markdown來編寫的哦。我在使用markdown的感覺是方便,快速,統一。扔掉鼠標,用鍵盤搞定一切。當然Markdown有很多缺點,格式沒有word等工具豐富,可能各個瀏覽器支持的也並不是很統一
Markdown 是什麽?
參照官網的解釋。
Markdown is a text-to-HTML conversion tool for web writers. Markdown allows you to write using an easy-to-read, easy-to-write plain text format, then convert it to structurally valid XHTML (or HTML).
Markdown 是一個網絡作者編寫文本的工具。它能將純文本轉換為html。Markdown允許作者書寫易讀,易寫的純文本,然後將這些文本轉換為有效格式的XHTML(HTML)文件。
Thus, “Markdown” is two things: (1) a plain text formatting syntax; and (2) a software tool, written in Perl, that converts the plain text formatting to HTML. See the Syntax page for details pertaining to Markdown’s formatting syntax. You can try it out, right now, using the online Dingus.
以上表明,Markdown包含部分東西:(1)一個純文本格式語法;(2)一個使用Perl語言編寫的軟件,它可以將純文本轉換為HTML格式文件。現在,你可以使用在線工具Dingus來嘗試Markdown。
工具
工欲善其事必先利其器,先給大家介紹幾款趁手的編輯器
- Dingus 在線工具
官方推薦的在線學習工具- MarkdownPad Windows
- Mou MacOS
Mac下傑出的markdown編輯器- Haroopad All OS
極力推薦Linux/Unix的同學使用該工具- 有道雲筆記
此分享就是在有道雲筆記上完成的。有道雲筆記還支持流程圖,甘特圖等圖形。
基礎語法
標題
在行首查出1到6個#,緊接著後面加一個空格,添加標題文字,對應到標題1到6階,例如
標題1
標題2
標題3
標題4
標題5
標題6
代碼
# 標題1
# 標題2
# 標題3
# 標題4
# 標題5
# 標題6
區塊
類似email信件中的引言部分,在段落前添加 > 就會將此段落變為區塊.
上面就是一個區塊
代碼
> 類似email信件中的引言部分,在段落前添加 > 就會將此段落變為區塊。
列表
無序表使用星號*,例如:
- Red
- Blue
- Green
代碼
* Red
* Blue
* Green
有序表則使用數字接著一個英文句點
- Alphabet
- Apple
- Microsoft
代碼
1. Alphabet
2. Apple
3. Microsoft
代碼區塊
要在 Markdown 中建立代碼區塊很簡單,只要簡單地縮進 4 個空格或是 1 個制表符就可以,例如,下面的輸入:
這是一個普通段落:
這是一個代碼區塊。
分割線
你可以在一行中用三個以上的星號、減號、底線來建立一個分隔線,行內不能有其他東西。你也可以在星號或是減號中間插入空格。下面每種寫法都可以建立分隔線:
***
---
區段元素
鏈接
Markdown 支持兩種形式的鏈接語法:行內式和參考式兩種形式。 要建立一個行內式的鏈接,只要在方塊括號後面緊接著圓括號並插入網址鏈接即可,如果你還想要加上鏈接的 title 文字,只要在網址後面,用雙引號把 title 文字包起來即可,例如:
This is [an example](http://example.com/ "Title") inline link.
[This link](http://example.net/) has no title attribute.
強調
Markdown 使用星號(*)和底線(_)作為標記強調字詞的符號,被 * 或 _ 包圍的字詞會被轉成用 <em> 標簽包圍,用兩個 * 或 _ 包起來的話,則會被轉成 <strong>,例如:
single asterisks
single underscores
double asterisks
double underscores
代碼
*single asterisks*
_single underscores_
**double asterisks**
__double underscores__
圖片
Markdown 使用一種和鏈接很相似的語法來標記圖片,同樣也允許兩種樣式: 行內式和參考式。
![Alt text](/path/to/img.jpg)
![Alt text](/path/to/img.jpg "Optional title")
高級語法(僅有道雲筆記支持)
制作代辦清單
- 了解markdown語法 -5min
- 使用有道雲筆記進行練習 -10min
- 發現問題,與作者討論
代碼
- [x] 了解markdown語法 -5min
- [ ] 使用有道雲筆記進行練習 -10min
- [ ] 發現問題,與作者討論
表格,甘特圖,序列圖
表格
時間 | 事項 | 花費 |
---|---|---|
2017.02.26 | 水果 | ¥50 |
2017.02.27 | 交通 | ¥40 |
代碼
時間|事項|花費
---|---|---
2017.02.26|水果|¥50
2017.02.27|交通|¥40
流程圖(打印機流程)
是 否 開始 輸入打印份數 機器運轉是否正常 裝訂 糾正錯誤代碼 graph TB A{開始}---B(輸入打印份數) B -->C[機器運轉是否正常] C -->|是|D[裝訂] C -->|否|E[糾正錯誤]
我沒有介紹什麽
在有道雲筆記中,還有一些高級語法在本文中沒有涉及,需要大家根據文章最後的參考文獻進行學習。還有Markdown的作者 John Gruber,也是個傳奇人物。
總結
此次分享,我向大家介紹了什麽是Markdown,它解決了什麽問題,並且向大家介紹了幾種編寫工具。重點是Markdown中簡單的語法規則。希望大家有所收獲。
如果有任何錯誤,請聯系我。大家一起學習,共同進步。最後來一個markdown的口號:keep calm and markdown。
參考文獻:
Daring Fireball link
有道雲筆記markdown簡明語法 link
有道雲筆記markdown進階語法 link
Markdown語法入門