Markdown 版本演进

摘要:本文主要是梳理 Markdown 的主要版本变化,使用的是提纲的形式,列出了常见的功能支持和差别,阅读大约须要 3 分钟,能够直接看思惟导图。php

Markdown

  • 初始版本:2004-03-19
  • 最新版本:2004-12-17 , V1.0.1
  • 做者:John Gruber 和 Aaron Swartz(互联网之子,已逝)
  • 语言: 第一个版本为 Perl,目前有其余实现
  • 网站:
  • 特性:易读易写
    • 文字格式:粗体,斜体
    • 插入内容:标题,图片,连接,引用,水平线,块(`)
    • 功能:列表(无序,有序)
    • 限制:
      • 不支持表格
      • 块级标签必须先后空行,且不能被空格或制表符缩进
      • 块级标签内不能使用 Markdown 语法
      • 支持列表、段落、引用嵌套,方法为每行行首使用4个空格或1个制表符进行缩进

CommonMark

  • 初始版本:2012 年发起,2014-10-25 发布 Release 0.5
  • 最新版本: V0.28.1(2017-8-2)
  • 做者:Jeff Atwood 和 John MacFarlane 为首的小组
  • 语言: 实现版本众多,commonmark.js 和 cmark 是最普遍。
  • 网站:
  • 特性:严格定义了 Markdown 语法转为 Html 的实现

GitHub Flavored Markdown (GFM)

  • 初始版本:2017-08-01,V0.28-gfm
  • 最新版本:2018-09-10,V0.28.3.gfm.16
  • 做者:Github
  • 语言:C 语言,forked from commonmark/cmark
  • 网站:
  • 特性:描述代码项目功能和变动
    • 基于 CommonMark 的 cmark 分支
      • 文字格式新增:删除线(~~)
      • 插入内容新增:自动连接,修订版本(+/-)
      • 功能新增:简单表格(支持对齐:),任务列表,代码块及高亮功能(```)
      • 限制:
        • Html 支持限制
        • 列表嵌套方法:改成每次嵌套缩进两个空格

Markdown Extra

  • 初始版本:First release 1.3 (11 Apr 2013)
  • 最新版本:1.8.0 (14 Jan 2018)
  • 做者:Michel Fortin
  • 语言:初始版本为 PHP
  • 网站:github.com/michelf/php…
  • 特性:增强网页展现功能
    • 基于 Markdown
      • 插入内容新增:
        • 标题增长锚点属性(方便引用,样式,属性设置)
        • 增长脚注
        • 缩写备注(HTML tag
      • 功能新增:
        • 表格(支持对齐:)
        • 任务列表
        • 与 GFM 类似的代码块及代码高亮功能
      • 修改:
        • 内嵌 Html:块标签可缩进不超3空格,可在块标签使用 Markdown 语法
        • 强调:两字词中间的下划线不会被解释成强调
        • 不支持多词强调,反斜杠使用替代的 : 和 |

MultiMarkdown

  • 初始版本:2011 年 4 月
  • 最新版本:V6 (2018.02.02)
  • 做者:Fletcher T. Penney
  • 语言
    • 初始版本为 perl
    • 版本 V3 后基于 peg-markdown 项目重构为 C 语言
    • 使用 PEG(解析表达文法)处理文本
  • 网站:
  • 特性:增强导出转换功能
    • 基于 Markdown,兼容 PHP Markdown Extra
      • 插入内容新增:支持脚注,参考文献,缩略语,交叉引用,上下标(^,~)
      • 功能新增:支持元数据,数学公式(MathJax),部分复杂表格,修订功能(CriticMarkup), 内嵌其余文件,目录(TOC)
      • 修改 Html 块内支持,导出支持 HTML,LaTeX ,OPML ,OpenDocument Text document

Pandoc's Markdown

  • 初始版本:2006
  • 最新版本:V2.3
  • 做者:John MacFarlane
  • 语言: Haskell
  • 网站:
  • 特性:多格式文档的转换工具
    • 根据配置能够支持多种 Markdown 扩展格式

以上内容作成一张思惟导图,使用 Atom + markdown-mindmap,因为格式不支持 SVG,作了转换为 PNG 上传,若是知足不了无损需求,请到百度网盘文件下载html

思惟导图

版本演进,公众号ProgramLife042

参考文献

  1. 感谢 John Gruber 和 Aaron Swartz 给咱们带来如此美妙的 Markdown
  2. 参考了大量的文章:
    2.1 维基百科
    2.2 Markdown 原始的John Gruber站点
    2.3 少数派 Markdown 专题
    2.4 Commonmark 官网
    2.5 GitHub Flavored Markdown 官网
    2.6 PHP Markdown Extra 官网
    2.7 Multimarkdown 官网
    2.8 Pandoc 官网 Markdown 帮助
  1. 博客是我学习过程的输出,但愿你有所收获。
  2. 有想法请留言,共同探讨学习。
  3. 因为博主能力有限,文中可能存在描述不正确,欢迎指正、补充!
  4. 你也能够关注个人公众号:ProgramLife042,名称:风之程序人生,方便接收最新内容。
    公众号
相关文章
相关标签/搜索