Modules needed to create the best WYSIWYG experience? What do you use to give the end user (editor) the best WYSIWYG experience, considering the following requirements (besides basic input):


Insert images/flash and align then left/center/right with optional caption, choice of sizes
Easily upload files and add links to them
Add custom css classes to content
Add custom buttons that provide custom/special formatting
Be truly WYSIWYG, i.e. using styles/typography that the end user will see


From a developer/maintainers point of view:


Keep front-end theme styles in-sync with styles used in WYSIWYG editor


Thanks, Egil.
You will need the Drupal WYSIWYG module http://drupal.org/project/wysiwyg and the TinyMCE Library here http://www.tinymce.com/

TinyMCE supports plugins and you can make that "best WYSIWYG experience" that you are looking for. You can hook it up with your theme CSS and apply styles to the text aeras and see them in the WYSIWYG. Also check the WYSIWYG plugins page http://drupal.org/node/1197256