« 安装并调试好了MTcodebeautifier+MTTextile | Main | 今天改了改MT样式表,舒服了一点 »

版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本声明。
本文网址:http://www.hzqbbc.com/blog/arch/2005/04/aemtaeceaee.html
 

April 08, 2005

使MT支持代码高亮功能

介绍 对于喜欢写写code的人,不能在CMS里显示代码高亮是非常遗憾的,之前我本来想做个MT的插件,调用vim来实现高亮,但后来发现有一个叫MTcodebeautifier 可以实现类似功能。于是下载了,并下载了MTTextile一并安装. 但按照readme设置后,死活有问题: 1)如果发文时选Convert break line 就会在code里将\n换成\n很不爽 2)如果加了<pre>又变不了彩色 3)做了一下其他设置,又无法高亮(虽然已高亮,但所有的html代码都给entites了!)
安装调试 主要参考: a.http://www.superluminal.com/dave/weblog/archives/000361.html a.http://www.bradchoate.com/mt/docs/mtmanual_textile2.html a.http://www.joangarnet.com/blog/archives/2004/11/instalacian_de.php 我的做法: 安装了MTcodebeautifier + MTTextile(都是最新版)后,不需要有任何配置(建议不需要任何配置),发文的时候注意几点即可: 1)使用==标记(MTTextile里的,详细见手册)将代码块闭和包裹,该标记的意思是不需要进行Textile转换,sample:

==
 <pre>
 <code language="perl">
 use strict;
 print "Hello world, i'm in MT now!\n";
 </code>
 </pre>
==

2)发文时转换格式选None (即不使用任何转换) 3)注意==(escape)标记要被空行包裹(newline)即:
newline
==

及 
==
newline
该注意事项详见mttextile2手册。 总结 其实原理大致是这样的:首先 block 激活了Mtcodebeautifier,对block里的字符进行高亮显示,显示完后,如果转换格式选Textile_2的话,由于高亮显示后的流是html,所以会对诸如<>;等进行转换,导致输出的信息变成了痛苦的烂code!!:)

Posted by hzqbbc at April 8, 2005 01:57 AM

Comments

Post a comment




Remember Me?

(you may use HTML tags for style)