Wednesday, March 16, 2005


WYSIWYG editors are a key feature in most CMS products: both commercial and open source. These components add HTML controls to a web form field so that a non-technical user can apply their own formatting to the text that they enter. I think of WYSIWYG editors as being The Great Compromise of content management. WYSIWYG editors balance the needs of the authors, who would rather use something like MS Word to enhance their prose with formatting, and systems people who want structured data to store and reuse.

In the commercial world, the leader is Ektron's eWebEditPro which is OEM'ed in Interwoven Teamsite and many other commercial CMS products. On the open source side, there are many projects including htmlArea, Kupu and BXE and Xopus. Both BXE and Kupu are hosted on OSCOM and there is some code sharing between them. Most WYSIWYG editors are based on Javascript to be cross browser compatible although not all are tested on both IE and Gecko based browsers.

A couple of weeks ago I was setting up Bricolage to work with htmlArea (which is integrated with Bricolage and several other open source CMS) and was surprised to see that the latest version (3.0) was no longer available on the htmlArea website. I learned from the list that InteractiveTools is no longer maintaining the code and the project has moved to (thanks, Bret Dawson for the answers).

Then last week, there was an interesting discussion on the OSCOM mailing list about htmlArea losing momentum and other emerging editors. Drupal has shifted from htmlArea to TinyMCE and has a module to integrate FCKEditor. XOOPS is now using Kiovi. Some simple editors such as widgeEditor and Cross-Browser Rich Text Editor. Unfortunately, all of these WYSIWYG editor projects (like many Javascript projects) are pretty small and it is hard to tell where they are going. On the plus side, it is not a great risk to maintain these Javascript libraries on your own if you find one that meets your needs today.

If you want a list of HTML Editors and the the browsers they support, check out the HTMLArea website.