如果你曾经参与过WikiPedia的编写,肯定会被它简明的编辑方式所打动,[]就是链接,==就是标题等等,如果平时写文档也这么方便就好了,呵呵。开源世界的美妙就在于你的大部分需求都有人去解决, Markdown就是这样的一个工具,你按照特定的语法书写纯文本文件,它就可以将其转换为标准的html代码。虽然不一定能写出让领导满意的格式公文,用来写blog或者文档说明书还是足够而且方便的。最关键的是,即使不转换为html代码,这种标记形式的txt纯文本文件可读性也是非常好的。
Markdown官方网站上有它的 基本语法,我还找到了一份jjgod翻译的中文版, Wikipedia上也列出了各种语言的Markdown实现——由于 Markdown只是一种对格式的定义,所以不管用哪种语言都可以写出解析这种语法的工具。
但是相对于wikipedia的语法来说,markdown的功能相对少一些,所以Markdown Extra就出现了,它不仅用php语言实现了 Markdown语法的解析,而且还添加了一些额外的扩展,同样也可以方便的嵌入各种cms,比如wordpress。Markdown Extra的主要改进有:
- 可以在行中任意地方嵌入任何HTML代码,只要行开头的缩进不超过3个空格。
- 可以在table或者div等"块"元素中使用标记语言。
- 可以为标题创建id,这些id可以像链接的id一样使用,方便在标题之间跳转。
- 支持表格。
- 支持定义列表。
- 支持脚注,并且可以在脚注和正文之间来回跳转。
- 支持缩写。
- _在词中使用不再代表加重。
- 可转义字符中增加了冒号:和管道符号|。
可以看出Markdown Extra相对于原版除了完全的兼容,还更加灵活和强大了一些。另外虽然 Wordpress官方不支持Markdown或者Textile标记语言,Markdown Extra本身就是按照wp的插件方式设计的,安装非常简单,基本上就是三步:
- 下载,并把markdown拷贝到wp的wp-content/plugins/目录。
- 在管理页面激活Markdown插件。
- 在发帖时要关闭可视化编辑功能,有了Markdown,还要他们作甚。
现在,Markdown Extra就可以作用于wp的文章和留言啦。
通过简单的使用,我发现Markdown Extra发掘了txt文本的真正威力,简单、实用,无论是源文件还是生成的 HTML文档,格式和可读性都非常好,尤其是在*nix这些经常要用到字符界面的操作系统中,更能体现出纯文本的优越性来。
另注几点:
使用了*[HTML]: Hyper Text Markup Language之后,调用会出现Segmentation fault
错误,已经向作者反映了,不过贴到blog里好像又可以了。
作为wp的plugin使用时,对于我原来使用纯HTML编写的文章,由于包含很多代码或者输出片段,格式会乱掉,要是能定义哪篇文章用Markdown语法,哪篇文章不用就好了。我目前的办法是手工修改markdown.php文件,把第88行的:
注释掉,恢复wp自己的段落划分功能,和markdown一起使用就没事了。当然在使用
和
还发现了另外一个更强大的txt转HTML工具:texy,居然把css什么的功能也作进来了,不过好像刚刚起步,还不是很成熟,支持的应用和各种语言的实现也不多,对unicode的处理也不尽人意,暂时观望。