给MT的编辑器加上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"), "&");
str = str.replace(new RegExp("<","g"), "<");
str = str.replace(new RegExp(">","g"), ">");
str = str.replace(new RegExp('"',"g"), """);
str = str.replace(new RegExp(' ',"g"), " ");
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文件夹下
(你可以直接用这个:fin.
页面会变得很长么?期待。
wood 2006-10-10,18:37 says: “回复”
:)
你忘了对当前这篇blog中的js代码Decode了。所以现在显示的代码用错误,而后面的修改,又过度Decode了,加粗的部分没有显示出来而变成HTML代码了。后台修改下吧:)
PS:你这里的TypeKey设置不正确哦:) 没有完全开放。
dimlau 2006-10-10,19:44 says: “回复”
多谢提醒
现在好了
难道每次修改typekey都要重新设置开启一次?
我记得前几天出现过一次这个问题了
路杨 2006-10-10,20:21 says: “回复”
每次修改typekey都要重新设置开启一次
=====
不会吧?我今天修改了自己的typekey,连Nickname都换回中文了。但是blog没有收到影响:)
Yang 2006-10-11,15:34 says: “回复”
这里不错, 很干净的感觉. 等着你的皇宫!
dimlau 2006-10-11,15:40 says: “回复”
楼上得yang大哥,是不是才说过挺干净得感觉就眼前一黑?
呵呵,刚刚风格变了一下,现在又回来了
最迟下个月,我的皇宫开始动工建造
Yang 2006-10-12,01:43 says: “回复”
哈哈,没有眼前一黑. 简单明了.
我回复了你的问题: http://www.yangkang.org/archives/2006/07/mt331.html#comment-4780
如果按照MT的基本环境要求,应该就没有问题了.
Vick 2006-10-12,04:11 says: “回复”
终于转移阵地到MT了,呵呵;用过blogger再使用MT会比较适应,两者有相似处;blogger的优点是“简单”,缺点也是“简单”,总是靠hack的话有些吃力不讨好。
dimlau 2006-10-12,14:01 says: “回复”
vick兄,你这话要是我刚转换过来的时候说,我还会有点不信。
这几天越来越体会到MT的好处