Markdown指南
什麼是Markdown?
Markdown是一種輕量級標記語言,您可以用它為純文字文件添加格式元素。它允許您使用簡單、易讀的語法建立格式化文字,可以轉換為HTML和其他格式。
將Markdown視為一種無需複雜文字處理器即可編寫格式化文件的方式。您只需在純文字中添加特殊字元來指示格式,如粗體、斜體或程式碼
。
為什麼使用Markdown?
Markdown非常簡單且易於學習。您可以在短短10分鐘內掌握基礎知識。格式符號直觀 - 星號表示強調,井字號表示標題。您只需輸入並添加簡單符號來格式化文字。
Markdown在任何平台和任何文字編輯器上都能工作。由於檔案是純文字,即使在幾十年後也始終可讀。檔案輕量且載入迅速。
Markdown在各個平台都有廣泛支援。GitHub、Reddit、Discord和Slack都使用Markdown。Obsidian、Notion和VS Code等熱門應用程式原生支援它。這使其成為文件、筆記和Web內容的完美選擇。
Markdown與Git等版本控制系統完美配合。您可以專注於內容而不受格式干擾。團隊協作更容易,因為每個人都可以在沒有特殊軟體的情況下編輯檔案。
Markdown開發歷史
起源:原版Markdown(2004年)
Markdown最初由John Gruber在2004年建立,Aaron Swartz做出了重要貢獻。Gruber將其設計為一種使用易讀易寫的純文字格式編寫的簡單方式,可以轉換為結構有效的HTML。這是John Gruber最初設計和實作的「核心」,包含最基本的格式語法 - 我們稱之為「基本原版風味」。
基本語法(原版Markdown包含):
- •標題:使用
#
符號(# 標題
) - •強調:
- •斜體:使用
*
或_
包圍文字(*斜體*
或_斜體_
) - •粗體:使用
**
或__
包圍文字(**粗體**
或__粗體__
) - •清單:
- •無序清單:使用
*
、-
或+
(- 項目
) - •有序清單:使用數字和句點(
1. 項目
) - •連結:使用
[連結文字](連結位址)
- •圖片:使用

- •程式碼區塊:用空格縮排(通常4個空格或1個Tab)
- •引用:使用
>
符號(> 這是引用
) - •水平線:使用
---
或***
問題:不一致的實作
然而,原版Markdown缺乏嚴格的正式規範。這導致不同Markdown解析器在處理邊緣情況時行為不一致。
空白處理:例如,在清單項目中,多少個空格的縮排算作子清單?是2個空格、3個空格還是4個空格?不同的解析器可能有不同的判斷。
換行處理:在某些情況下,常規換行(\n
)應該被解析為<br>
(換行)標籤,還是應該簡單地作為文字中的空格處理?這也可能因解析器而異。
HTML混合使用:Markdown允許嵌入HTML。然而,在一些複雜的HTML結構中,Markdown解析器如何處理其中的Markdown語法也存在模糊區域。
解決方案:CommonMark(2014年)
2014年9月,引入了CommonMark來解決這些不一致問題。由John MacFarlane領導,它為Markdown提供了嚴格的規範。
CommonMark提供了精確的規範,其中每個邊緣情況都有明確定義。它包括一個包含600多個測試案例的綜合測試套件,以確保實作之間的一致性。該規範提供了一個參考實作,作為其他解析器遵循的標準。它保持與大多數現有Markdown文件的向後相容性,同時確保明確的解析,相同的輸入在所有相容解析器中始終產生相同的輸出。
擴充風味和附加功能
隨著使用者有不同的需求,出現了各種擴充的Markdown風味來滿足特定要求。
GitHub風味Markdown(GFM)附加語法:
- •表格:使用管線語法建立表格
| 標題1 | 標題2 | 標題3 |
|-------|-------|-------|
| 儲存格1 | 儲存格2 | 儲存格3 |
| 儲存格4 | 儲存格5 | 儲存格6 |
- •刪除線:使用
~~
包圍文字(~~刪除的文字~~
) - •任務清單:建立互動式核取方塊
- [x] 已完成任務
- [ ] 未完成任務
- •圍欄程式碼區塊:使用帶語言規範的三重反引號
```javascript
function hello() {
console.log("Hello World!");
}
```
- •自動連結:URL和電子郵件地址自動變為可點擊
- •腳註:學術寫作使用
[^1]
語法
這是帶腳註的句子[^1]。
[^1]: 這是腳註內容。
結果:這是帶腳註的句子¹。
- •數學表達式:科學文件使用
$E=mc^2$
- •表情符號快捷鍵:使用
:smile:
變成😊 - •定義清單:用於詞彙表和技術文件
術語1
: 術語1的定義
術語2
: 術語2的定義
: 術語2的另一個定義
結果:建立帶有突出顯示術語和縮排定義的格式化清單
如何運作?
Markdown遵循簡單的三步工作流程:
步驟1:建立Markdown檔案
首先,使用任何文字編輯器建立帶有.md
或.markdown
副檔名的純文字檔案。使用簡單的格式符號編寫內容:
步驟2:使用Markdown工具處理
您的.md
檔案然後由Markdown轉換工具或處理器處理。這些工具讀取您的Markdown檔案並將其轉換為所需的輸出格式。
步驟3:輸出到各種格式
Markdown處理器可以將您的檔案轉換為多種格式:
Web顯示:
- •轉換為HTML用於網站、部落格和Web應用程式
- •在瀏覽器中顯示具有適當樣式的格式化內容
- •轉換為PDF用於可列印文件和報告
- •產生Word文件(.docx)用於辦公用途
- •建立LaTeX用於學術論文和出版品
- •產生電子書(EPUB格式)
- •建立簡報投影片
- •製作文件網站
附加資源
基本文件
- •John Gruber的Markdown文件:由Markdown建立者編寫的原始指南。理解理念和基本語法的必讀材料。
- •維基百科 - Markdown:Markdown歷史、變體和技術細節的全面概述。
- •Markdown指南:包含範例和最佳實務的全面、初學者友善指南,適合所有技能水準。