本文面向不了解 markdown 或刚准备上手的同学。
它是什么
首先,什么是 markdown?我们可以直接看一下 WIKI……不过 wiki
很长,让人没有耐心读下去。那么,简单来说,markdown 其实是一种轻量级的标记语言;
或者说,它规定了一些文本的书写格式,就像这样:
写上你的标题 ============ 开始书写正文吧 当然也可以用 *列表* 的形式: * 列表项目 * 还是列表项目
上面这一段东西就是 markdown 了——它看上去和普通的文本没什么两样,只不过文字“被一些
标记 格式化”了,所以看上去会感觉比较漂亮,书面化一点形容叫做 具备更高的可读性
这一段 markdown 给我们的直观感受是我们能够清楚地识别出其中的“标题”、“段落”以及“列表”,
对,就和我们熟知的 html 一样,用来格式化内容
为何使用
接下来的问题自然是,我们为什么要使用 markdown?
我们可以把这个问题进一步拆分为三个问题:
- 使用 markdown 而不是 html 的好处在哪
- 在哪些场景下使用?
- 这个东西的普及度如何?(这意味着它的前途)
接下来一一回答:
- 
前文已说,markdown 和 html 都是一路的标记语言,用来格式化内容。而内容之所以要显得很 
 格式化,是因为这样我们更容易阅读和理解。被渲染后的 html 是很可读的,但是 html 代码读起来
 就很糟糕,因为它夹杂着大量 ;而 markdown 不管是写还是读,都很舒服有一点需要注意的是,markdown 并不是为了取代 Html,因为根本取代不了。Markdown 的理念是, 
 能让文档更容易读、写和随意改。HTML 是一种发布的格式,Markdown 是一种书写的格式最后一点,markdown 可以被编译为 html,比如使用在线的 Pandoc 
- 
我个人认为,我们在 txt 上写的文档或随手记之类的东西,就完全可以使用 markdown,简单且美观 另外,最重要的一点,我们可以在 支持把 markdown 编译为 html 的地方书写 markdown,好处是 
 显而易见的:书写简单、展现美观。典型的场景有:github 仓库的 README 描述文件、github 中的
 issue、评论框等。总而言之,把它用在要写文档的地方,妥妥的
- 
我们知道,这世界上还有很多类似于 markdown 的轻量级标记语言,比如形形色色的 wiki 语法。所以, 
 我们凭什么使用 markdown 而不是 markup 或者 wikidown?答案很简单,因为它很流行。至少著名的程序员社区如 github 和 stackoverflow 
 都提供了对它的大量支持
说了那么多,结论就是,学习并且使用 markdown,必须的!何况 markdown 学起来非常简单
语法简要介绍
接下来会非常简单地介绍一下语法,而详细的语法大全可以直接去 作者的官网 查看。
作者对语法的介绍富有条理且细致入微。
语法介绍之后会着重说一下几个比较给力的特性,这个部分是重点
部分语法如下:
- 
使用一个或多个空行分隔内容段来生成段落 。 
- 
标题(h1~h6)格式为使用相应个数的“#”作前缀,比如以下代码表示 h3: ### this is a level-3 header ### 
- 
使用“>”作为段落前缀来标识引用文字段落。这其实是 email 中标记引用文字的标准方式: > 引用的内容 > 这个记号直接借鉴的邮件标准 
- 
使用“*”“+”“-”来表示无序列表;使用数字加“.”表示有序列表。如: 1. I am ordered list item 1... 2. So I should be item 2!? 
- 
使用 4 个以上 空格或 1 个以上 的 tab 来标记代码段落,它们将被 和 包裹,这意味着代码段内的字体会是 monospace 
 家族的,并且特殊符号不会被转义。
- 
- 
使用 [test](http://example.net “optional title”) 来标记普通链接。 
- 
使用  来标记图片。 
 引号内的 title 文字是可选的,链接也可以使用相对路径。 
- 
- 
使用 * 或 _ 包裹文本产生 strong 效果: _语气很重的文本_ 以及 **语气更重的文本** 
给力的特性
- 
普通换行并不产生新的段落或 
 ,但是产生空格。其实这个和 html 对 line-break 换行 的处理方式是一致的。为了使文本良好地展示在视野内, 
 我们会选择 手动地 将文字折行,但是并不意味着这两行在逻辑上不是一个段落。我们也可以插入真正的手动换行符 
 ,如果要问
 在什么时候有用,下面是一个例子:我 
 其实
 是一首
 诗……楼上 
 这一段
 说得漂亮!
- 
支持 setext-style 的 header 定义: - 
定义 h1: THIS IS THE MAIN TITLE ====================== 
- 
定义 h2: This is the subtitle -------------------- 
 更低级别的 header 就无法使用这种方式定义了。我们不用管 setext-style 是什么意思,只需要知道 
 这种标记方式更能凸显文章标题
- 
- 
在 blockquote(“>”标记的段落) 之内可以嵌套使用其他标签,甚至可以再嵌套 
 blockquote——上古神书《商古》写道: > 今有一鼎,镌以奇文: > > 吾乃鼎,非杯具也。 
- 
支持引用式的链接格式。什么叫做“引用式”的链接呢,举例来说, 
 对于本文中的一段文字,相应的 mkd 代码是:首先,什么是 markdown?我们可以直接看一下 [WIKI][1]…… 另外,markdown 可以被编译为 html,比如使用在线的 [Pandoc][2] [1]: http://en.wikipedia.org/wiki/Markdown "wiki_markdown" [2]: http://johnmacfarlane.net/pandoc/try "pandoc online" 看上去就好像是“引用文献”的格式一样。好处非常易见: - 正文文本中不会出现 url 链接这种读者不关心的信息,从而不影响读者的阅读
- 链接地址可以当做一个变量,进行复用
 
- 
支持快捷链接。一般来说,我们如果要显示一段 url 文本,最好也希望这个 url 
 本身能够点击。比如 http://ued.taobao.com如果使用 html,则要写作 http://ued.taobao.com 包含了冗余信息且可读性很差,而在 mkd 中,只要写 <http://ued.taobao.com> 就 OK 了,非常方便。 
结尾
以上便是对 markdown 的一个简要介绍了,需要了解进一步内容的,请移步
- Markdown 项目主页
- WordPress 的 markdown 插件
- 中文版语法说明
- 强大的文本编译工具 Pandoc,支持 markdown 和 html 之间的互译
VIA http://ued.taobao.com/blog/2012/07/getting-started-with-markdown/

原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/39653.html
