EditorMonkey修复与完善

写Blog时有一个好的编辑器会有一份好心情。WP默认编辑器把<pre>中的&nbsp;都吃掉,实在是霸道。Zoundry的编辑器也不成熟,我就暂时放弃了离线编辑。

近来一直在用EditorMonkey写Blog,感觉比起WP默认的编辑器来要好得多。当然我选择的是FCKEditor,tinyMCE已经删 除了,它占了很大的空间,而且有大量的语言文件,查看源代码时全放在一行中:(。不过EditorMonkey的作者在集成FCKEditor的时候没有能够解决<!–more –>和<!–nextpage–>两个标记的插入问题。在他的论坛里问的时候他说由于FCKEditor太难搞了,以后也不会再 支持它了。

我在那个thread上订了E-Mail通知,最近发现Cougar解决了这个问题,在他的一篇日志中:EditMonkey 2.5 Patched Version,日志里有patch过的下载链接。

最初装上的时候觉得还有很多问题,后来证明都是我对XHTML的不了解。唯一发现的错误是如果文章中有图片,就不能显示源代码了,不过这已经被修正。在他的文章里提到<!–more–>和<!–nextpage–>标记的支持至少和原来的WP默认tinyMCE一样好了。如果使用的是Windows下的Firefox,可能换了之后还是不能使用可视化编辑器来插入这两个标记,因为Firefox的缓存机制有些问题吧。直接在浏览器中打开fckeditor\editor\plugins\wordpress\fckplugin.js文件并刷新就可以了。

当然我是不喜欢用这两个标记,呵呵,只是Bright Young曾经问我怎么点那个按钮什么效果都没有(Firefox中源代码中是插入标签的,而IE中则是完全无效),现在你方便了:)。接下来就说说怎么排版文章好让发表出去的日志符合Web标准吧,针对Cougar修改过的FCKEditor。

  1. 段落:FCKEditor在你回车的时候并不会把刚写的一段用<p></p>标记包起来,这与tinyMCE不同。Cougar的patch把<br/>全去掉了,所以发表的日志就只有一个段落。正确的做法是为每个段落在格式下拉框里选择“普通”,在回车几次后新的段落就自动包含在<p></p>标记中了,自己体会吧。
  2. 代码:粘贴代码时,不要仅仅用<code>标记wrap。<code>实际是<span class="Code">,其中的<br/>会被剔除,因此发表后只有一行了。应该在外面用<pre>标记wrap起来。
  3. 编辑框的样式表:通过修改fckeditor\editor\css\fck_editorarea.css文件可以控制编辑区域元素的样式,例如图片样式等。同样在Windows中的Firefox里,最好手动刷新这个文件。
  4. 插入图片:在XHTML中<img>标记必须有alt属性,所以插入图片时最好加上它(插入图片对话框的“替换文本”),图片不能显示的时候可以显示文字。另外,同样根据XHTML标准,不要使用border/align等属性,而把相关样式放在CSS文件中,在插入图片的对话框中,高级页里的样式类名称中填上它应属的class。我的CSS相关设置(从themes/my theme/style.css中抽取):
    .img-right {
        float: right;
        margin: 5px 0px 5px 5px;
    }
    .img-left {
        float: left;
        margin: 5px 5px 5px 0px;
    }

    这样,插入图片时在样式类名称中填上img-right或img-left就可以使图片靠右或靠左了。而FCK的样式下拉列表中有"image on left"和"image on right",是给<img>加align属性,不建议使用。但这样的话,编辑的时候并不显示图片的停靠,解决办法很简单,照第3点讲的,把这CSS代码复制一份到fck_editorarea.css中去。

  5. 最后:FCKEditor/tinyMCE的对话框都是Javascript弹出窗口。某些Firefox用户(比方我)使用了tab浏览插件的单进程功能,从而对话框在新标签页中打开,把整个窗口缩小,很难受。如果不想这样还是取消单窗口模式,并对javascript弹出窗口设置为允许所有窗口。

现在我最想要的功能就是像Twilight-Autosave那样的自动保存功能,这个插件在EditorMonkey中不再起作用,我也看不明白,似乎要FCKEditor中的API才能取得textarea内容。

Happy editing, happy blogging.

This entry was posted on Thursday, May 18th, 2006 at 10:26 am and is filed under Blogging. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

15 Comments »

Comment by Yidiot
2006-05-18 11:50:24

快完善吧,过段时间好有经验帮我弄,哈哈..
+U+U

Comment by zhouqb
2006-05-18 12:13:52

呵呵,你的还没架好啊
现在论文正郁闷,静不下心

 
 
Comment by kenwell
2006-05-18 12:05:14

呵呵
我现在是这样,
如果实在要分页
就把编辑器改一下

 
Comment by Bright Young
2006-05-18 19:32:57

呵呵,谢谢Qingbo了。试试这个patch先。
作者居然不打算支持FCKEditor了……。。

 
Comment by liucougar
2006-05-19 00:32:46

CODE tag (which will be supported in next EditMonkey version, or patched version) is only meant for one line code reference, while PRE can preserve the format.

As for FCKeditor in EditMonkey, don’t worry, I will maintain it (or co-maintain it with the original author)

Comment by Bright Young
2006-05-21 12:09:14

校友

 
 
Comment by Zhang-Zi
2006-05-20 22:48:55

1。我这里不一样,它会自动设置为段落。
4。虽然这样方便,但在RSS阅读时就有些乱。

Comment by zhouqb
2006-05-21 08:28:32

1. 自从换成FCK我回车就不自动设置段落了,而是<br/>,但输出the_content的时候会整个地用<p></p>包起来,cougar的patch不这样做了

4. 确实不好。即使是inline的CSS,多数RSS阅读器也还是会把它抹掉。有点过分地追求标准了,没意思,以后就用样式列表中的image on xxxx了。

 
 
Comment by zhouqb
2006-05-22 16:33:55

test

 
Comment by zhouqb
2006-05-22 16:34:16

test again

 
Comment by zhouqb
2006-05-22 16:34:37

test 3rd

 
Comment by zhouqb
2006-05-22 16:35:22

test 4

 
Comment by zhouqb
2006-05-22 16:35:37

test5

 
Comment by zhouqb
2006-05-22 16:35:54

test last?

 
Comment by zhouqb
2006-06-18 10:24:31

haha

 
Name (required)
E-mail (required - never shown publicly)
URI
Your Comment (smaller size | larger size)

Please copy the string okB1C3 to the field below: