I’ve been very busy lately with my real job, so I have neglected to blog in a while, but much has been happening, so it would seem to me, in the news (especially with Microsoft and Sun and Gmail), but I’ll post on these later. For now, let me promote FCKeditor. In the process of developing a CMS for a government Web site, it was decided that we needed a WYSIWYG editor that we could embed in a Web page and use as part of our system. We looked around at many different options and decided to go with Rich Editor, a paid and licensed editor that was supposed to work well in all browsers.
Unfortunately, Rich Editor required much recoding on my part in order to get it to work in our CMS, and I was never too excited about the terms of its license agreement, which states: “You may use the Software to create content for third parties, or in your commercial products.” According to this, you cannot use the product in your commercial products or in products for third parties. Rather, you can use the product only to create content for third parties or commercial products. It’s a very fuzzy sentence, but that’s what it means.
So, after having used Rich Editor and being fed up with its license and some of its functionality (the remote image/files browser was clunky and took a long time to load), I decided to scrap Rich Editor when I found a light-weight, cleanly coded LGPL-licensed editor: FCKeditor.
FCKeditor works only in IE (in all other browsers it displays a simple textarea), as it makes use of IE’s built-in HTML generation functions; however, do not fear, for it is not an ActiveX object. This is fine when developing a CMS that you can restrict to a specific browser (since there are only a few people using it to manage the content of the site). So, it was fine for us. Also, it is extremely easy to extend and modify: another plus. In fact, I was able to easily add “Preview Page” and “Insert Flash” functionality, and because of that, I decided to join the project at Sourceforge and contribute my changes to it.
So far, I’ve contributed only those two modifications as patches to the project, but I hope to also help with the project documentation, since it is currently lacking, though that should all change as version 2 nears.