After a pointer by Jérôme Piétri, a colleague of mine at Valtech, I have had a look at RichNesse, a WYSIWYG interface for editing pages under Fitnesse. It is based on FCKEditor. All in all, I am impressed.
As it is, RichNesse comes with a number of buttons that helps with the format of your wiki page. The format will eventually be converted into the appropriate Fitnesse markup, which you’ll see if you later visit the usual Edit button.
Those buttons in themselves are very useful. I don’t know about you, but in my case, I often have to go from one wiki engine to another, depending on the client and on the project. And I continually get mixed up for the first few minutes I edit a wiki page. Those WYSIWYG buttons really help.
Here is a look to the RichNesse editor (note the button bar on top)
Compare to the old editor:
There are four features that make the difference:
- Undo/Redo; yep, it seems that everything you do while under the editor can be undone
- Search and Replace! That was not in the basic editor. So when you wanted to change the name of a variable, you had to copy & paste into a text editor, and copy back again. It’s now built in!
- one button to insert a whole column: saves tons of keystrikes
- a button that redirects to the upload section of Fitnesse; that was not in the basic editor.
Unfortunately, I spotted a number of limitations. None of them are very serious, though:
- Some formattings very specific to Fitnesse such as collapsible sections are not available yet.
- The Copy and Cut buttons did not work and Paste behave curiously. The message I got was that my ‘browser security settings don’t permit the editor to automatically execute cutting operations.’ Of course, Ctrl-C, Ctrl-X and Ctrl-V still work perfectly.
- Integration with Fitnesse is not perfect. For example, if you create a table, the wizard will allow to enter a ‘caption’. Unfortunately, this caption will mess up the display and prevent the table from being properly interpreted as a fixture.
- The editor that opens when you first create a page is the basic Fitnesse editor. This is not a big deal: you can always save the empty page and reopen it again.
Another feature that I’d like to see, but that will no doubt be tricky to implement, would be some kind of search & insert feature for links to other pages. Fitnesse is rather complex on this, especially since it supports hierarchical pages (a concept not usually found on wikis). It’d be cool to be able to search for a page, and then specify whether you want to link to it as a sub-page, or an absolute URL, or even as a SymbolicLink.
All in all, it is a very useful addon to FitNesse, one that I now systematically install. No doubt that lots remain to be done, but come join the fun now, it is already worth it!
Note the RichNesse button on the left when viewing a page; the Edit button is still available