I reviewed 5 WYSIWYG editor modules for drupal 6: FCKEditor, TinyMCE, WYMeditor, jwysiwyg, HTMLBox. The latter three aren't yet mature, so I saved the in depth reviews for the big guys, tinyMCE and FCKeditor. Truth be told, I decided to have low expectations, and rated these modules against the following:
I tested these modules with drupal 6.4.
Before plunging into the abyss, a shout out is in order for a certain project: WYSIWYG API. This project is taking on the extremely unsexy, and unfun problems that any WYSIWYG js script is going to run into when included into a drupal page. Their roadmap is ambitious, maybe more ambitious than it needs to be.
If you're frustrated with WYSIWYG editors in drupal, I urge you to show solidarity with Daniel Kudwien (sun) and Nathan Haug (quicksketch) efforts. Regardless of whether you agree with particular decisions (i'm on the fence about the fact that it doesn't come with a single working WYSIWYG editor), I think we can all agree its in drupal's best interest to organize community efforts to make the the platform more friendly to WYSIWYG editors as a whole. I hope maintainers of a WYSIWYG modules will let these guys do work for them, instead of fighting them. A sign of to the difficulty of this problem is seen in how many previous maintainers this project has.
Tested: tinymce 6.x-1.1-dev
JS: version 3.2.0.2
VERDICT: Once configured, its a solid editor. Recommended for consultants who want to pad their hours with long, byzantine configuration steps. Is likely to make new users hate drupal.
I click on the recommended release for drupal 6, and immediately read:
First functioning version of TinyMCE for Drupal 6. Still has issues. Not recommended for a production site.
At least they've covered their ass...
I pretended to be one of the odd sorts who read instructions, and downloaded the tinyMCE files into the module. Since nothing happens to my node forms afterwords, I go to the module settings page where it immediately orders me to create "a profile". Sir! yes sir!
Though I followed its orders, it then gets angry at me (messages turn red when angry). Now it says, "You must assign at least one role with the 'access tinymce' permission before creating a profile." (I think it was calling me stupid.) This is one bossy module. Why does setting up a WYSIWYG editor require me to make so many decisions, and fill out so many forms anyhow? Whatever. I'll play along.
So I check off permissions for "authenticated user", and mosey my way back to the tinyMCE settings page. The message box is back to being colored green. Good. Its still bossy as ever, but at least it isn't angry with me. I click "create new profile".
Now, I'm at a multi sectioned form. I'm asked what ISO-639-2 language code I'm using, "EN" sounds safe... I guess... Do I want to "annoy and prod safari users". "Is there a group of people who like bothering safari users?". I wonder..
The "buttons and plugins" section of tinyMCE represents everything I hate about this module, and even drupal as a whole.
Apart from the terrifying number of options, total randomness of their order, and the fact that there's only 6 or so I need to check in this puddle of vomit, the names of these checkboxes are question begging. What's the difference between "fontselect – font", and "fontselect"? What's a bullist? Are the numlists the sworn enemies of the bullists? Or are they sects that peacefully coexist? What on earth could "movebackward " do? Or is that same as "undo"? The list goes on...
Whatever...
I just wanna test the thing. Considering the ordeal of configuration, I'm presently surprised by what I find. Performs rock solid.
Module version: 6.x-1.3-rc1
Js version:
VERDICT: Best in class. Not perfect, but it at least passed every one of my review's 6 points. It works as soon as you download the JS library, the module's personality is polite, and the selection of options are decent.
Note: See FredCK's [FredCK as in FCKeditor] post on drupal groups about the overhauls he planned last March. That must be why it feels like a totally different editor.
Back in 2004, I first tired using this plugin. Its strange behavior actually ended up making a client scream (true story).
So I install it, and then see if it lets me know on the settings page if I have to download it. Unlike tinyMCE, its not bossy, using words like "please", instead of phrases like "you MUST".
So I download the plugin, and it alerts me that no permissions are set for it. Whatever, does it work without me having to fill out a series of long forms? To my surprise: YES!
Not only does it work, but it works pretty damn well. Sure the default interface is cluttered, and center aligning content doesn't work (who wants to change text alignment anyway?).

What turned me on to it the most was small interesting decisions in its behavior that I caught, for example if I have an unordered list, hit return twice, it assumes I meant to end the list. That's evidence that the authors have put thought into how people write.
As for the module maintainers, I get a feeling they've been putting some love into this module.
Perhaps its unfair to compare tinyMCE with FCKeditor, since FCKeditor is now in RC1 for drupal six, where as tinyMCE is still stuck in dev (released March 08). Regardless, tinyMCE used to be the king of drupal wysiwyg editors; FCKeditor has picked up the crown off the floor.
Verdict: its broken.
Doesn't work. Has a settings page -- doesn't change anything. Options page returns a curious access denied message. Configuring user permissions has no effect. No errors, just doesn't work.
Verdict: promising, but needs more time and effort.
Philosophically, this is my favorite editor. Its main issues are a custom input format that gets applied automatically at install (worries me), and the bizzare decision of the js file's author to put a right hand sidebar in the editor. Also causes PHP errors, and exhibits unpredictable behavior in various circumstances.
Verdict: the WYSIWYG javascript is holding back an otherwise decent module ;-D.
Painless setup, but the WYSIWYG area's behavior needs a lot of work that is outside the module maintainers control. Its way too easy to mess up simple paragraph tags, if you stress test it.
Note leave a comment or contact me if I made a mistake or feel that I was unfair, etc. I reviewed these editors while rather grumpy.
Comments
Finally! I just installed YUI
Finally! I just installed YUI and wow, finally an awesome, usable, easy to configure WYSIWYG for Drupal! I was reading through your review of the other 5 and have come to similar conclusions on my own, they all left me wanting.
TinyMCE is not maintained AFAIK
I don't think the TinyMCE module is maintained any more. Just check the CVS messages and the pending issues. There are some valuable patches in the issues that solves bugs in the module and has been tested by community but nothing is being committed. The Wysiwyg API module is supposed to take over and has already taken care of a lot of the bugs in the TinyMCE module according to sun. The Wysiwyg API module just recently got support for TinyMCE 3.x so there's some progress going on.
Yeah, the project appears to
Yeah, the project appears to have dropped dead in March. All activity since then has just been people adding additional translations.
http://drupal.org/project/cvs/18803
The sense I got was that wysiwyg API has a lot of momentum building, but wasn't ready to make a big beautiful debut yet (its a big enough idea that it really needs to have smooth debut, ya know?) , which is why I didn't consider reviewing it. Now you have me very curious...
Status, roadmap, and progress
Wysiwyg API will replace all of those modules.
Admitted, this project strives to revolutionize content-editing in Drupal. However, we are getting closer each day.
See http://groups.drupal.org/node/6492/summary for a complete overview of what's happening currently and what needs to happen.
bahaha... when I was looking
bahaha... when I was looking at the screenshot I thought "bullist" said "bullshit"! darn, I wish my WYSIWYG had a bullshit button!!!
I have tried fckeditor and whizzywig, but I stick to fck for pretty much everything. I do strip out a lot of things though.
That's a good idea. Better
That's a good idea. Better yet, there should be a [bullshit][/bullshit] html tag in version 5! The tag would be used to markup any text on web pages that reads something like:
[bullshit]We develop innovative solutions for profit driven business[/bullshit]
[bullshit]I'm an objective blogger[/bullshit]
[bullshit]I'm considered a world class expert[/bullshit]
Try YUI Rich Text Editor
I have had very good luck using the YUI Rich Text Editor.
Give it a shot ... it is very nice, neat and clean. Perfect for setting up for clients http://drupal.org/project/yui_editor
quickstretch? :)
quickstretch? :)
Doh. quicksketch is a better
Doh. quicksketch is a better name isn't it.
but what about the HTML produced?
As someone who wants the content of a site to be useful in two, five, ten or twenty years; as someone who knows What-You-See-Is-What-You-Get will never always get what you actually want, and that hand editing may be necessary; and as someone who just wants to be able to edit straight HTML or through a WYSIWYG editor as I choose... the key thing about WYSIWYG editors for me is the code they produce.
TinyMCE, I know, can be configured (with great difficulty) to produce code that looks like you typed it into a Drupal textarea yourself– no paragraph (
<p>) tags, just natural line breaks that Drupal then interprets correctly.FCKeditor when I've seen it mashes everything together in an uneditable mush– essentially violating the sacred Drupal tenet, do not mess with text on input, mess with it on output. Can it be configured otherwise?
I've also seen really ugly un-semantic tags and could swear something produced a <font> tag in 2008 but maybe that was just a flashback.
Did you look at this angle in the editors you reviewed?
benjamin, Agaric Design Collective
In my experience with
In my experience with FCKeditor, i've found the time when it's most likely to produce unacceptable code is when content is pasted in which was copied from a word processor like Word or a web browser (but especially Word). I'm not sure this is entirely FCKeditor's fault, though, because the HTML that results from pasting in Word content looks suspiciously similar to what you get if you save a Word document as an HTML file. If you stay inside FCKeditor and only paste in content which has been stripped of formatting, FCKeditor does all right.
Customizing the editor's button bar to remove non-critical buttons, menus and widgets helps as well; give non-tech-savvy clients less rope and they'll have a harder time hanging themselves.
For my own projects, I personally prefer the non-WYSIWYG markItUp! in Markdown mode.
Me too, I never use WYSIWYG
Me too, I never use WYSIWYG personally. Thanks for pointing me at that project. I guess I didn't find it because drupal's module tags are a bit out of control (user management, vs community management? isn't any module a utility of one sort or another. I usually markup my blog entries by hand, or use Microsoft live writer (besides for the hellish things it does with uploaded images). I'm the bizzare sort of person who likes closing a "p" tag. Clients don't seem to share my peculiar love of markup however.
I am using FCKeditor and other modules
The markup generated by FCKeditor isn't terrible. What I recommend is working with "Show Blocks" turned on so that you can see what is going on. This gives you a WYMeditor feeling without the suck.
I mostly use FCKeditor so that I can insert images uploaded via ImageField in a less sucky manner.
If anything I recommend using something like FCKeditor turned off be default only to be used when a blog post is already written.
I tested the basics, ul, ol,
I tested the basics, ul, ol, strong, italics, header tags. I didn't see any noticeable difference between tinyMCE and FCK in terms of the markup they spit out. I'm assuming that a font selector, or text color changer will produce nasty markup no matter what. Really the only thing that stood out to me is how much FCKEditor has improved over the last year or so.
TinyTinyMCE
TinyTinyMCE is another module that uses TinyMCE, but it's less buggy and more customisable than the original TinyMCE module; at least it was when I tried TinyMCE for Drupal 6.
Giving it a spin now.
Giving it a spin now.
I vastly prefer it to
I vastly prefer it to tinyMCE. The only part that worries me is what I had to know in order to figure it out:
1. tinyMCE likes its configuration to be set in javascript
2. Drupal naturally would give user id 1 the "advanced" version.
3. That I would only have to flip a switch to make it simple mode for user ID 1.
Regardless, this is a great alternative to tinyMCE module for people who know JS, and have mucked about with tinymce before.
Post new comment