Semantic rich text editor
I've written before about the idea of a WYSIWYM editor. Something to bridge the gap between the semantic clean code we write as web developers and what our clients and users generate via rich text tools. There are projects out there, such as WYMEditor, but they still seem to fall short of what I think is needed.
When we design a content managed site using CSS we invent classes and structures for the sort of data that will be used. An example of this might be a blockquote with quote images either side, this would use a blockquote tag containing a div, CSS would then apply two background images aligned top left and bottom right. Using a standard rich text editor the client would have to go into source view to recreate this! You could have another structure for inserting images into content with a caption, the surrounding block might have a class that decides whether it is left or right aligned. Same goes for headings or complicated structures like an address (microformat!)
I've been working on a new rich text editor where the web designer can template these structures and add them as buttons onto the toolbar, and the user will be kept within the styles available. What I want to do though is gather some more information on how this would be used.
These are what I think the basic objectives should be, but please do comment to refine and focus these a bit.
- End user works in WYSIWYG, actual site styles applied
- Conventional word processor or email editor look and feel
- Simple configuration of templates for web designer to use
- Support multiple style contexts for different site sections
- Generate XHTML
- Hides all technical aspects from end user