简介

markdown

  1. 网址 markdown的官方是网站: https://daringfireball.net

  2. Markdown是什么? Markdown是一种轻量级标记语言,它以纯文本形式(易读、易写、易更改)编写文档,并最终以HTML格式发布。 Markdown也可以理解为将以MARKDOWN语法编写的语言转换成HTML内容的工具。

  3. 为什么要使用它? 它是易读(看起开舒服)、易写(语法简单)、易更改纯文本。处处体现着极简主义的影子。 兼容HTML,可以转换为HTML格式发布。 跨平台使用。 越来越多的网站支持Markdown。 更方便清晰的组织你的电子邮件。(Markdown-here, Airmail) 摆脱Word(我不是认真的)。

  4. 谁创造了它? 它由Aaron Swartz和John Gruber共同设计,Aaron Swartz就是那位于去年(2013年1月11日)自杀,有着开挂一般人生经历的程序员。他有着足以让你跪拜的人生经历:

#

14岁参与RSS 1.0规格标准的制订。 2004年入读斯坦福,之后退学。 2005年创建Infogami,之后与Reddit合并成为其合伙人。 2010年创立求进会(Demand Progress),积极参与禁止网络盗版法案(SOPA)活动,最终该提案被撤回。 2011年7月19日,因被控从MIT和JSTOR下载480万篇学术论文并以免费形式上传于网络被捕。 2013年1月自杀身亡。

后续

自从John Gruber2004年发布Markdown之后,Markdown进入了自由生长的状态,因为创始人John Gruber打自2004年之后就没有更新过Markdown。因为原生Markdown只是一个轻量级的标记语言,很多功能不具备。为了扩充Markdown的功能,很多Markdown拓展语法被开发出来,其中著名的有GFM、PHP Markdown Extra、MultiMarkdown、Pandoc Markdown等等

CommonMark

由于Markdown没有明确的规范,Markdown 解析渲染会有很大差异。因此用户经常会发现在一个系统(例如 GitHub)上渲染正常的文档在另一个系统上渲染不正常。更糟糕的是由于 Markdown 中不存在“语法错误”,所以无法立即发现这类问题。

在 Markdown 处理上“模糊的正确”是不可取的。所以 CommonMark 规范的目的就是消除二义性,制定统一明确的 Markdown 解析渲染规则。

CommonMark的网址是 http://commonmark.org/

作者阵容 CommonMark 规范的主创 John MacFarlane(jgm)是加州大学伯克利分校的哲学教授,他在文本标记语言领域有一个很出名的项目 Pandoc(用于在各种文本标记语言之间互转格式)。他用多种编程语言实现过 Markdown 引擎,在 Markdown 处理方面他可以称得上行家中的行家。

该规范的其他参与者包括:

David Greenspan, 来自 Meteor Vicent Marti, 来自 GitHub Neil Williams, 来自 Reddit Benjamin Dumke-von der Ehe, 来自 Stack Exchange Jeff Atwood, 前 Stack Exchange 联合创始人,Discourse 创始人 从作者阵容我们可以看出,该规范算是众望所归了,因为这几大社区都需要一个标准化的 Markdown。

除了强大的作者阵容外,最重要的是规范的严谨度我相信不会有任何问题,600+ 测试用例也尽量将各种情况都列举验证了,整体的权威性毋庸置疑。

GFM (GitHub Flavored Markdown)

官方网站 https://guides.github.com/features/mastering-markdown/

gfm是commonMark的超级。github实在commonMark上实际了一些自已的功能。 其它各公司也是像gfm一样,都是commonMark的超级。 版本也都是跟着commonMark来走的。

如 现在最新的commonMark标准是0.29,看一下commonMark和gfm差别。 https://github.github.com/gfm/#characters-and-lines https://spec.commonmark.org/0.29/#about-this-document