给MT的编辑器加上decode功能

decode 以前装过一段时间FckEditor,不过感觉不但拖慢了速度而且也用不到那么些的编辑功能,于是不断完善我的MT过程中把FckEditor编辑器删掉了。

一直耿耿于怀的是,我在发布一些代码的时候,MT的编辑器会在发布的时候直接把代码解析出来,而不能以显示代码的原始形态。比如输入

<a href="http://www.dimlau.com">D&V</a>

那么发布之后显示的就是D&V。这在有些时候不是我想要的结果,以前的办法是在一些编辑器里把html代码decode之后在粘贴到MT编辑器里,而现在通过简单的两步,就可以在MT的编辑器里加入了这个功能了:

首先在mt的mt-static文件夹下找到mt.js
在文件里加入下面这段代码:

function Decode(e) {
    if (!canFormat) return;
    var str = getSelected(e);

    if (!str) return;
    str = str.replace(new RegExp("&","g"), "&amp;");
    str = str.replace(new RegExp("<","g"), "&lt;");
    str = str.replace(new RegExp(">","g"), "&gt;");

    str = str.replace(new RegExp('"',"g"), "&quot;");
    str = str.replace(new RegExp(' ',"g"), "&nbsp;");
    setSelection(e, str);
    return false;
}


然后,在mt安装目录的tmpl文件夹下找到edit_entry.tmpl,找到其中两处添加按钮的地方,照猫画虎,添加
write('<img title="<MT_TRANS phrase="Decode">"
 onclick="return Decode(document.entry_form.text_more)"
 src="<TMPL_VAR NAME=STATIC_URI>images/formatting-icons/decode.gif"
 alt="<MT_TRANS phrase="Decode">" width="26" height="19" />'); 

注意我加粗的地方,看上下文改成 text或者text_more
当然,其中的decode.gif你要自己准备了放在mt-static/images/formatting-icons文件夹下
(你可以直接用这个:
OK,新建日志,看看编辑框,是不是多了个按钮了?

这个方法是从wood那里学来的。
如果你有兴趣,可以修改mt中的其他内容实现不同效果。。。我想我已经有了一点想法关于添加插入图片按钮等等功能了

标签:

引用通告(2)

引用本文: 给MT的编辑器加上decode功能

引用地址: http://kaix.in/cgi-bin/mt-tb.cgi/338.
复制上述链接到您文章的引用地址栏,您的文章将显示在下方列表中。

  1. 来自D&V | October 20, 2006 10:13 PM

    上次只是加了一个decode按钮,今天一鼓作气加上了几乎所有经常能用到的功能按钮 按钮图片都是自己做的,好像有点不太统一风格。不过没关系拉,反正在后台给... ——来自:MT后台编辑器基本完美了
  2. 来自D&V | November 2, 2006 4:15 AM

    ——有时候小修改比插件贴心 装插件导致整个程序崩溃,估计有过自己搭建blog或者bbs经验的人都有过经验吧? 所以,厚道的插件作者都会标明装插件有风险之类... ——来自:关于修改和插件
  1. 1楼 wood | 2006-10-10,18:37

    :)
    你忘了对当前这篇blog中的js代码Decode了。所以现在显示的代码用错误,而后面的修改,又过度Decode了,加粗的部分没有显示出来而变成HTML代码了。后台修改下吧:)
    PS:你这里的TypeKey设置不正确哦:) 没有完全开放。

  2. 2楼 dimlau | 2006-10-10,19:44

    多谢提醒
    现在好了
    难道每次修改typekey都要重新设置开启一次?
    我记得前几天出现过一次这个问题了

  3. 3楼 路杨 | 2006-10-10,20:21

    每次修改typekey都要重新设置开启一次
    =====
    不会吧?我今天修改了自己的typekey,连Nickname都换回中文了。但是blog没有收到影响:)

  4. 4楼 Yang | 2006-10-11,15:34

    这里不错, 很干净的感觉. 等着你的皇宫!

  5. 5楼 dimlau | 2006-10-11,15:40

    楼上得yang大哥,是不是才说过挺干净得感觉就眼前一黑?
    呵呵,刚刚风格变了一下,现在又回来了

    最迟下个月,我的皇宫开始动工建造

  6. 6楼 Yang | 2006-10-12,01:43

    哈哈,没有眼前一黑. 简单明了.
    我回复了你的问题: http://www.yangkang.org/archives/2006/07/mt331.html#comment-4780
    如果按照MT的基本环境要求,应该就没有问题了.

  7. 7楼 Vick | 2006-10-12,04:11

    终于转移阵地到MT了,呵呵;用过blogger再使用MT会比较适应,两者有相似处;blogger的优点是“简单”,缺点也是“简单”,总是靠hack的话有些吃力不讨好。

  8. 8楼 dimlau | 2006-10-12,14:01

    vick兄,你这话要是我刚转换过来的时候说,我还会有点不信。
    这几天越来越体会到MT的好处

发表评论