1. * ---
tags: hackmd
---
# Hackmd Cheatsheet
這篇文章是 Hackmd 語法的 Cheatsheet,修改自 [Markdown Cheatsheet 中文版](https://gist.github.com/billy3321/1001749662c370887c63bb30f26c9e6e)。
這篇文章旨在作為快速參考與展示。要更多完整的資訊,請見 [John Gruber 原本的規格](http://daringfireball.net/projects/markdown/)與 [Github 偏好的 Markdown(Github-flavored Markdown,簡寫為GFM)資訊頁](http://github.github.com/github-flavored-markdown/)。
如果你正在找 Markdown Here 的小抄(Cheatsheet),[這裡](https://github.com/adam-p/markdown-here/wiki/Markdown-Here-Cheatsheet)也有一篇。你也可以看看更多 Markdown 的工具。
譯註:可以參考這份[中文版文件](http://markdown.tw/),有更詳盡的 Markdown 語法說明;如果需要可以練習的線上編輯器,可以試試看[HackMD](https://hackmd.io/)。
##### 目錄
[Headers](#headers)
[Emphasis](#emphasis)
[Lists](#lists)
[Links](#links)
[Images](#images)
[Code and Syntax Highlighting](#code)
[Tables](#tables)
[Blockquotes](#blockquotes)
[Inline HTML](#html)
[Horizontal Rule](#hr)
[Line Breaks](#lines)
[Youtube videos](#videos)
<a name="headers"/>
## 標題
```no-highlight
# H1
## H2
### H3
#### H4
##### H5
###### H6
你也可以使用下劃線的方式標記 H1 與 H2:
Alt-H1
======
Alt-H2
------
```
# H1
## H2
### H3
#### H4
##### H5
###### H6
你也可以使用下劃線的方式標記 H1 與 H2:
Alt-H1
======
Alt-H2
------
<a name="emphasis"/>
## 重點
```no-highlight
重點,又被稱為斜體,在兩邊加上 *星號* 或是 _下劃線_ 。
更強的重點,又稱為粗體,在兩邊加上 **兩個星號** 或是 __兩個下劃線__ 。
也可以用 **星號與 _下劃線_** 結合重點。
刪除線使用兩個波浪符號。 ~~刪除這個。~~
```
重點,又被稱為斜體,在兩邊加上 *星號* 或是 _下劃線_ 。
更強的重點,又稱為粗體,在兩邊加上 **兩個星號** 或是 __兩個下劃線__ 。
也可以用 **星號與 _下劃線_** 結合重點。
刪除線使用兩個波浪符號。 ~~刪除這個。~~
<a name="lists"/>
## 列表
(在這個例子裡,前置與後面的空白以點的方式顯示:⋅)
(In this example, leading and trailing spaces are shown with with dots: ⋅)
```no-highlight
1. 第一個有序列表項目
2. 另一個項目
⋅⋅⋅* 無序子列表
1. 實際數字不重要,只要它是一個數字
⋅⋅⋅1. 有序子列表
4. 與其他項目
⋅⋅⋅要在列表項目下加入段落,只要縮進就好了。注意前面的空白行,以及前置的空白(至少要一個空白,不過我們在這裡會使用三個空白以剛好對齊原始的文字)。
⋅⋅⋅要使文字段行而不會成為新的段落,你只需要在後面加上兩個空白。⋅⋅
⋅⋅⋅注意這行已經分開了,不過還是在同樣的段落中。
⋅⋅⋅(如果不要求後面的兩個空格,就為伴了典型的 GFM 斷行格式。)
* 無序列表可以使用星號
- 或減號
+ 或加號
```
1. 第一個有序列表項目
2. 另一個項目
* 無序子列表
1. 實際數字不重要,只要它是一個數字
1. 有序子列表
4. 與其他項目
要在列表項目下加入段落,只要縮進就好了。注意前面的空白行,以及前置的空白(至少要一個空白,不過我們在這裡會使用三個空白以剛好對齊原始的文字)。
要使文字段行而不會成為新的段落,你只需要在後面加上兩個空白。
注意這行已經分開了,不過還是在同樣的段落中。
(如果不要求後面的兩個空格,就為伴了典型的 GFM 斷行格式。)
* 無序列表可以使用星號
- 或減號
+ 或加號
<a name="links"/>
## 連結
有兩個方法可以建立連結
```no-highlight
[這是一個行內樣式的連結](https://www.google.com)
[這是一個加上標題的行內樣式連結](https://www.google.com "Google 的首頁")
[這是一個引用樣式的連結][任意不區分大小寫的文字]
[以相對的文件路徑引用其他文件](../blob/master/LICENSE)
[可以用數字來宣告一個引用樣式的連結][1]
或讓他空白並使用[連結文字本身]。
網址,或是尖括號中的網址會自動轉換成連結。
http://www.example.com 或 <http://www.example.com> 甚至有時候 example.com 也可以(只是舉例,Github上無效)。
引用連結可以在一些文字後面。
[任意不區分大小寫的文字]: https://www.mozilla.org
[1]: http://slashdot.org
[連結文字本身]: http://www.reddit.com
```
[這是一個行內樣式的連結](https://www.google.com)
[這是一個加上標題的行內樣式連結](https://www.google.com "Google 的首頁")
[這是一個引用樣式的連結][任意不區分大小寫的文字]
[以相對的文件路徑引用其他文件](../blob/master/LICENSE)
[可以用數字來宣告一個引用樣式的連結][1]
或讓他空白並使用[連結文字本身]。
網址,或是尖括號中的網址會自動轉換成連結。
http://www.example.com 或 <http://www.example.com> 甚至有時候 example.com 也可以(只是舉例,Github上無效)。
引用連結可以在一些文字後面。
[任意不區分大小寫的文字]: https://www.mozilla.org
[1]: http://slashdot.org
[連結文字本身]: http://www.reddit.com
<a name="images"/>
## 圖片
```no-highlight
這是我們的 Logo(把游標指向 Logo 可以看到標題文字)
行內樣式:
![alt 文字](https://raw.githubusercontent.com/adam-p/markdown-here/master/src/common/images/icon48.png "Logo 標題文字 1")
引用樣式:
![alt 文字][logo]
[logo]: https://raw.githubusercontent.com/adam-p/markdown-here/master/src/common/images/icon48.png "Logo 標題文字 2"
```
這是我們的 Logo(把游標指向 Logo 可以看到標題文字)
行內樣式:
![alt 文字](https://raw.githubusercontent.com/adam-p/markdown-here/master/src/common/images/icon48.png "Logo 標題文字 1")
引用樣式:
![alt 文字][logo]
[logo]: https://raw.githubusercontent.com/adam-p/markdown-here/master/src/common/images/icon48.png "Logo 標題文字 2"
<a name="code"/>
## 程式碼與語法高亮
程式碼區塊是 Markdown 規格的一部分,不過語法高亮不是。無論如何,許多渲染器──如 Github 和 *Markdown Here* ──支援語法高亮。每個渲染器支援的程式語言,以及程式語言的名字寫法都不一樣。*Markdown Here* 支援幾十種語言(以及不一定是真的程式語言,像 diffs 與 HTTP headers)的語法高亮;要看完整的列表,以及語言的名稱,請見 [highlight.js 的示範頁](http://softwaremaniacs.org/media/soft/highlight/test.html)。
```no-highlight
行內的 `程式碼` 用 `反引號` 包圍起來。
Inline `code` has `back-ticks around` it.
```
行內的 `程式碼` 用 `反引號` 包圍起來。
程式碼區塊可以用只有三個反引號<code>```</code>的一行圍起來,或是以四個空格縮排。我建議用三個反引號的方式圍起來 ── 這比較簡單,而且只有這個方式支援語法高亮。
<pre lang="no-highlight"><code>```javascript
var s = "JavaScript 語法高亮";
alert(s);
```
```python
s = "Python 語法高亮"
print s
```
```
沒有指定程式語言,所以沒有語法高亮。
不過,我們可以放進一個 <b>標籤</b>。
```
</code></pre>
```javascript
var s = "JavaScript 語法高亮";
alert(s);
```
```python
s = "Python 語法高亮"
print s
```
```
沒有指定程式語言,所以 Markdown Here 沒有語法高亮(在Github 上可能不一樣)。
不過,我們可以放進一個 <b>標籤</b>。
```
<a name="tables"/>
## 表格
Markdown 的核心標準沒有表格,不過表格是 GFM 的一部分,而且 *Markdown Here* 支援表格。這是在電子郵件中加入表格的好方法 - 本來是需要從其他應用程式複製貼上的工作。
```no-highlight
冒號可以用來標示欄位的對齊方式。
| Tables | Are | Cool |
| ------------- |:-------------:| -----:|
| 第三欄 | 靠右對齊 | $1600 |
| 第二欄 | 置中對齊 | $12 |
| 斑馬條紋 | 是整齊的 | $1 |
每個標頭元件都要用至少三個破折號分隔開來。
最外面的豎線可以省略,你也不需要讓原始的文字排列整齊。你也可以使用行內樣式的 Markdown。
不 | 漂亮 | 的文字
--- | --- | ---
*依然* | `渲染的` | **很好**
1 | 2 | 3
```
冒號可以用來標示欄位的對齊方式。
| Tables | Are | Cool |
| ------------- |:-------------:| -----:|
| 第三欄 | 靠右對齊 | $1600 |
| 第二欄 | 置中對齊 | $12 |
| 斑馬條紋 | 是整齊的 | $1 |
每個標頭元件都要用至少三個破折號分隔開來。
最外面的豎線可以省略,你也不需要讓原始的文字排列整齊。你也可以使用行內樣式的 Markdown。
不 | 漂亮 | 的文字
--- | --- | ---
*依然* | `渲染的` | **很好**
1 | 2 | 3
<a name="blockquotes"/>
## 引用文字
```no-highlight
> 在電子郵件中,引用文字可以很方便的模擬回應的文字。
> 這行也在同樣的引用區塊。
引用區塊結束
> 就算這行很長,只要包裹的好,依然可以很好的被引用。哦,我們繼續寫以保證每個人都確實的被包在裡面。喔,你也可以在引用文字中 *放入* 其他 **Markdown** 語法。
```
> 在電子郵件中,引用文字可以很方便的模擬回應的文字。
> 這行也在同樣的引用區塊。
引用區塊結束
> 就算這行很長,只要包裹的好,依然可以很好的被引用。哦,我們繼續寫以保證每個人都確實的被包在裡面。喔,你也可以在引用文字中 *放入* 其他 **Markdown** 語法。
<a name="html"/>
## 行內 HTML
你也可以在 Markdown 裡面撰寫原始的 HTML,這些 HTML 一樣大多數運作的很好。
```no-highlight
<dl>
<dt>定義列表</dt>
<dd>有時候,人們偶爾會用到。</dd>
<dt>在 HTML 中撰寫 Markdown</dt>
<dd>*無法* 運作的 **非常** 好。改用 HTML<em>標籤</em>。</dd>
</dl>
```
<dl>
<dt>定義列表</dt>
<dd>有時候,人們偶爾會用到。</dd>
<dt>在 HTML 中撰寫 Markdown</dt>
<dd>*無法* 運作的 **非常** 好。改用 HTML<em>標籤</em>。</dd>
</dl>
<a name="hr"/>
## 水平線
```
三個或更多個……
---
連字符
***
星號
___
下劃線
```
三個或更多個……
---
連字符
***
星號
___
下劃線
<a name="lines"/>
## 斷行
如果你想要學習斷行如何運作,我基本上建議最好就是實驗看看 ── 按<Enter>一下(也就是,插入一個換行符號),接著再按一次 (也就是,插入兩個換行符號),看看會發生什麼。你很快就會得到你想要的。「Markdown Toggle」是你的好朋友。
你可以試試看這裡的一些方式:
```
我們從這一行開始。
兩個換行符號分開了這行和前面那一行,所以這會變成 **分開的段落** 。
這行也是個分開的段落,不過……
只有一個換行符號分開這行,所以這是 *同段落* 中的分開兩行。
```
我們從這一行開始。
兩個換行符號分開了這行和前面那一行,所以這會變成 **分開的段落** 。
這行也是個分開的段落,不過……
只有一個換行符號分開這行,所以這是 *同段落* 中的分開兩行。
(技術提示: *Markdown Here* 使用 GFM 的換行,所以不用使用 Markdown 原先的兩個空格換行法。)
<a name="videos"/>
## Youtube 影片
Youtube 影片在 hackmd 可以被直接加入:
```no-highlight
{%youtube xvDZZLylNSk %}
```
{%youtube xvDZZLylNSk %}
---
License: [CC-BY](https://creativecommons.org/licenses/by/3.0/)
翻譯自 [adam-p](https://github.com/adam-p/) 的 [wiki](https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet)
本文短網址: [bit.ly/mdcheat](https://bit.ly/mdcheat)