Markdown的各种扩展

Markdown在标准语法( )之外,还支持各种扩展。

PHP Markdown Extra

Markdown的php解析与实现,并且增加了许多有用的扩展。PHP Markdown Extra其中几个比较重要的改进有:

支持在html块元素中插入markdown语法支持为一些元素添加id或class,比如为header添加id属性,用带锚点的链接导航。例如:[Link back to header 1](#header1)Header 1{#header1}========## Header 2 ##{#header2}

支持元素包括header、code block、link、image

支持将代码块用`或者~包起来,这样可以避免一些二义,还可以为代码块添加id或class~~~~~~~~~~~~~~~~~~~~~~~~~~~~ {.html #example-1}<p>paragraph <b>emphasis</b>~~~~~~~~~~~~~~~~~~~~~~~~~~~~支持手写的表格:| Function name | Description|| ————- | —————————— || `help()`| Display the help window.|| `destroy()` | **Destroy your computer!**|支持dl和dt在markdown中的对应语法支持脚注引用That’s some text with a footnote.[^1][^1]: And that’s the footnote.支持专有名词abbr避免下划线出现在单词中间,导致斜体输出Maruku

在”始作俑者PHP Markdown Extra”后,很多基于Ruby的Markdown解释器开始浮现。其中,Maruku号称:

Maruku的语法详见这里

不过,该项目已经停止维护了。

kramdown

同样是ruby开发的解释器,kramdown吸取了Maruku几乎所有的特点,功能更为强大。其中有特点的功能有:

Github-Page推荐使用这个解释器

RDiscount

RDiscount又是一个基于Ruby开发的解释器,不过它是基于Discount的语法移植的,所以语法规则需要参考。其语法支持几种上面没有提到过的特性:

文本居中,即输出: <center>图片大小定义:![dust mite]( =150×150)输出alpha列表: <ol type=’a’></ol>Redcarpet

Redcarpet是一个转化库,可以在标准Markdown的基础上,配置一些额外的功能:

Github支持

Github Page对于上述的基于Ruby的markdown是支持的,从这里可以看到。另外,Github对于Issue、comments等,还定义了GFM(GitHub Flavored Markdown),其中的语法一般基本来源于上面的提到的东西。除此之外,,github还支持一些额外的特性:

支持把列表变成带勾选框的任务列表- [x] @mentions, #refs, [links](), **formatting**, and <del>tags</del> are supported – [x] list syntax is required (any unordered or ordered list supported) – [x] this is a complete item – [ ] this is an incomplete item站内对分支、问题、用户等对象的直接引用表情

没有什么可留恋,只有抑制不住的梦想,

Markdown的各种扩展

相关文章:

你感兴趣的文章:

标签云: