Markdown是简化的人类易读标记语言,基于过去40年来的经过岁月检验过的纯文本惯例。

意味着如果你输入的Markdown文本如下的话,

Lightweight Markup Languages
============================

According to **Wikipedia**:

> A [lightweight markup language](http://is.gd/gns)
is a markup language with a simple syntax, designed 
to be easy for a human to enter with a simple text 
editor, and easy to read in its raw form. 

Some examples are:

* Markdown
* Textile
* BBCode
* Wikipedia

Markup should also extend to _code_: 

    10 PRINT "I ROCK AT BASIC!"
    20 GOTO 10

你将得到

enter image description here

你可以认为Markdown是极端简化和易于用户阅读的HTML版本。最近几年,我越来越喜欢Markdown了。不管你是什么种类,腰围,肤色的程序员,都会不可避免的用到Markdown,要知道它可是Github和Stack Overflow的主要部分。正因为如此,我的新项目也使用Markdown。

Markdown真是个不错的工具,但Markdown缺乏项目领导导致其本身不得不忍受一些痛苦。所谓的“规范”只不过是一群对Markdown有各种口味的人们,他们有自己的思考和行为方式。尽管有良好的兼容性,但Stack Overflow和Github都改进了Markdown,以至于你可能熟悉其中的一个。比较下GithubStack Overflow的不同品味吧。

这也是为什么前几天我收到David Greenspan的电子邮件时感到非常激动:

我是Ethepad(一个协作性WYSIWYG编辑器)作者,现在在Meteor工作。在Meteor,我们尝试通过编写更好的组件来为开发者“铺平web”。例如,我们发布了通过Websockets通信的通用性登录按钮,这些登录按钮连接到用户app的数据库表中。因为Markdown在编辑内容中逐渐变得无处不在,所以我们将Markdown放到了Meteor的工具链中。如果我们最终发布了一个Stack Overflow那样的编辑器使人们不必再造轮子,包含“Meteor”标准的代码质量,我一点也不会奇怪。现在我们使用Markdown创建API文档,并将使用它创建更多的内容--想起来挺可怕的。

可能你我都会对Markdown缺少一些规范和测试有些忧虑(或者说恐惧)。Markdown代码非常丑陋,扩展和定制起来都非常棘手(我们已经做了一些hack,但是效果非常糟糕),而且我担心格式没有规范的话会导致内容混乱。我在评估创建一份Markdown新实现的可能性,其中包含了真正的规范和测试集,而且,我一直在思考如何以一种颇有原则的方式来解析Markdown这样的语言。我不太担心解析器,顺便说一句;我曾在一周内仅仅作为边缘项目(side project)就完成了ECMAScript解析器.

我希望这门新语言-命名为“Rockdown”-能够被视为具有规范的Markdown,以一种低调的方式从Markdown的行为剥离出来。它能够填补Markdown有问题和含糊的地方。我尝试划出什么是重要的(以便保留),什么是不重要的。

我感到非常高兴,因为像David一样,我爱死了Markdown。对它的爱促使我希望Markdown能够成功,在未来的20年成功流传。而实现这个目标的最好办法是那些使用Markdown的流行网络站点,能够集中力量,领导Markdown来形成一项新的标准。我提议Stack Exchange,Github,Meteor,Reddit和其他对Markdown花费了大量和策略性投资的公司,共同创建正式的Markdown规范和标准测试集来验证Markdown的实现。我们已经各自为战好多年,使Markdown流行的同时又不小心分裂着Markdown。

像任何有责任感和好心的起诉人,我们首先需要从父母那里获取这项庭审的权利。所以,我要请求你,John Gruber:作为Markdown的创始人,你会为这项行动祈福吗?还有,顺路说一句,我会跟你说过我是Yankees的粉丝嘛?

Derek Jeter绝对是历史最伟大球员之一 enter image description here

我知道罪恶都藏在细节中,但是我对Markdown标准最为期望的如下:

  1. John Gruber文档化的现存Markdown核心约定,以正式的语言规范形式标准化。

  2. 将Markdown在日常使用中常见的三大陷阱改为理性的选择: 词内强调 (off), 自动超链接 (on), 自动的基于回车的断行(on).

3 . 一个正式的测试集用来验证Markdown的实现

4 . 一些清理和改进工具,它们被用来应对因为缺少正式规范而导致的模糊不清的边界。

在现存的各种Markdown风格下,未来可以将一些最为广泛使用和强烈支持的Markdown变种添加到Markdown版本中去(我认为Github的code风格就很不错)。

对,我只想说这些。我不想为Markdown添加千万斤重的疯狂新功能,或者逐渐改变Markdown现在的工作方式,诸如此类。我反对这种改变。我只想巩固和标准化Markdown,它简单,有用,能够为广大人民努力服务。我希望得到一个清晰地,标准化的Markdown,世界上的所有站点都以同样的方式使用Markdown,人们只需要掌握着一种使用方式即可。

enter image description here

我真的不愿意fork Markdown;我更愿意在John Gruber的祝福中和使用Markdown的流行站点的通力合作下,将Markdown的旗帜飘扬向未来。

那么。。。有人愿意和我一起吗?

原文链接:http://www.codinghorror.com/blog/2012/10/the-future-of-markdown.html

作者介绍:Jeff Atwood,博客的自我介绍

译者介绍: freetstar(连高欣),喜欢开源/自由软件,喜欢linux/vim/python,www.freetstar.com