分享

Markdown 的缘起和扩展

 圆角望 2016-07-06

题图:One Yellow Spring by Jake Olson Studios on 500px

5月底我写过一篇文章「还没有使用 Markdown 写作么」,收到了200条留言,热情的读者希望我再写一些 Markdown 相关的故事。不过,做为一个矜持的写作者,你让我写我就写,那我的形象不是全毁了?所以,这一篇等到了7月份。

Markdown 的缘起

我在上一篇文章中写道,Markdown 是一种轻量级的「标记语言」,它允许写作者以一种非常简单易学的标签来控制文章的版式,让人专注于纯粹的文字,而不是最终的版式。这一点,和之前推荐过的「字里行间」相比,就像两条山路,一条巍峨陡峭蜿蜒至顶追逐创意无限,一条深入谷底探求文字的奥秘,各自不同。

Markdown 是由约翰·格鲁伯(John Gruber)和亚伦·斯沃茨(Aaron Swartz)发明的。前者是一位来自美国宾夕凡尼亚州的作家、著名博客作者、UI 设计师。后者就是大名鼎鼎的「互联网之子」,英年早逝的天才少年。我们看一下他年轻时候的事迹:

12岁创建了一个类似于Wikipedia式的网站(那时还没有Wikipedia)。

13岁赢得了为年轻人而设的、创作教育及协同非商业网站的ArsDigita Prize比赛首名。

14岁成为了 RSS1.0 的开发组的一员。(后来,他和 John Gruber一起开发了Markdown)

15岁进入W3C的 RDF 核心工作组,并写了RFC3870。

18岁和 John Gruber 一起开发了 Markdown 标记语言,无数喜爱写作的人们基于 Markdown 写出了传世之作,用户遍及天下。

19岁的时候他编写了著名的 web.py 开发框架,深得 Python 开发这喜爱,并成为了 Reddit 的创始人……

关于 Markdown,Aaron 在自己的博客上是这么写的:

For months I’ve been working with John Gruber on a new project. The idea was to make writing simple web pages, and especially weblog entries, as easy as writing an email, by allowing you to use much the same syntax and converting it automatically into HTML.

可见,Markdown 的缘起,就是发明者希望把写博客这件事变得像写邮件一样简单,你可以用一些简单的标记控制文字的版式,并自动转化成 HTML 页面。

为什么你应该使用 Markdown 写作?

基于 Markdown 写作的好处非常明显,用两段话就可以说清楚。

首先,Markdown 是纯文本格式,你几乎可以用任何一款编辑器打开你的文稿进行编辑,你可以用 Ulysses,也可以用有道云笔记,甚至,你可以直接在命令行打开 Vim 进行写作,兼容性好得令人发指,支持的工具多如牛毛,还可以进行版本控制。

其次,Markdown 的标记非常简单易学,掌握了基础的内容,就可以编排出美观、简洁的页面。不同的 Markdown 编辑器可以提供不同的渲染方式,转换成不同的格式。可以成书,可以成文,可以做成 epub、pdf、mobi(Kindle 格式)等。可谓一次写作,四处得瑟。

有了 Markdown,你在写作的时候完全不需要去考虑文章最终的排版,只管「诗赋倒流三峡水,笔阵独扫千人军」。

我在「还没有使用 Markdown 写作么」已经介绍过了 Markdown 的基础语法,今天聊聊 Markdown 的扩展。

Markdown 的扩展

Markdown 是一种相对简单的标记语言,如果用来做复杂的语义表达,就会力不从心,所以产生了许多第三方的扩展语法,其中比较著名的是 GitHub Flavored Markdown,简称 GFM。

GFM 主要是为了方便开发者在 GitHub 上写文章,所以有针对性的做了扩展,比如:

1、GFM 在 issue 中通过 # 和 数字 可以自动链接到对应的 issue,例如 #1024
2、自动识别链接,链接不用尖括号括起来也会被认为是链接。
3、GFM 实现代码语法高亮
4、协作的是时候可以直接 @ GitHub 里的联系人
5、增加了一些自动引用,比如,项目,用户,issue 等等
6、支持任务列表的模式,更好的语法高亮模式等

详细内容可以参考:

https://help.github.com/categories/writing-on-github

除了 GFM,很多优秀的编辑器也提供了基于 Markdown 的扩展,比如我上次介绍到的有道云笔记,他们除了对标准的 Markdown 标签进行了很好的支持,还提供了待办事项、流程图、序列图、甘特图和 LaTex 公式的支持,你可以通过简单的文本划出各种精美的图形。当然,这些特性我上次已经说过了,但我还是想说一次,因为有道云笔记终于发布了 Mac 版!

有道云笔记 Mac 版来了

最早的有道云笔记 Mac 版是相对简陋的,外壳是 Mac 的,芯还是 Web 的,使用起来并不舒展,和 OS X 的风格也大相径庭。最新推出的 Mac 版2.0 增加了很多原生的支持,UI 界面也进行了全新的设计,可谓焕然一新。

Mac 版有道云笔记的界面布局和 Web 版本保持了一致,左边是树状结构的文件夹,中栏是文件列表,右边是主要的文本编辑区。左边栏采用了类似 OS X 的毛玻璃设计,颜色雅致,与文件列表区和编辑区的色彩进行了区分。点击分割栏,可以收起左侧的边栏,给文件和编辑区更大的空间。

有道云笔记的文件管理没有采用群组或笔记本的模式,而是模拟了类似操作系统的文件夹功能,你可以分门别类的建立自己的文件夹和文件,多级目录,海量文档,并进行全文检索。唯一的遗憾是,目前有道云笔记只针对自己的笔记格式进行了索引,对于 Markdown 和其他结构化文档,只提供针对文件名的搜索,希望下个版本的全文检索能够补足这个功能。

Mac 版有道云笔记对 Markdown 的支持和 Web 版类似,有兴趣的童靴可以去读上一篇的介绍,不再复言。这次让我吃惊的是,新版本增加了对非结构化文档 Office、iWork、PDF 等多种格式的支持,这意味着你可以直接在客户端浏览 Keynote、Pages 和 PDF 文档,而不是仅仅以附件的形式作为文档的附属品。我们曾经做过 iWorks 文档的转化,格式处理起来非常复杂的,有道云笔记在这方面也没能处理的尽善尽美,有些格式或大文件的预览会出现一些问题,另外,你也无法对 Pages 或 Word 等文档进行编辑。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多