How can I get my WYSIWYG editor to stop *#@&%^ing up my HTML?
I had just run into this problem of wysiwyg editors reformatting the html source into a minimized blob of contiguous html.    

The solution I found was to use TinyMCE editor with WYSIWYG and to add an additional module called wysiwyg-codemagic.  With this module, you place the codemagic plugin for TinyMCE in the TinyMCE library's plugins (Follow the instructions in module's Read.Me).  

Now, when the author of the node content drops into the html source, as occasionally needed, the source is very readable and presented correctly.

This was an old post, but I thought this new info would help for the others of us that still run into this problem