There's 3 types of content:
- Arbitrary written content
This is where markdown shines and IMO completely solves content creation.
- Arbitrary written content with mixed in assets
Nothing works here. Ever try floating some text to the right of an image when you don't have access to CSS or the raw html because we have to assume the content creator has no technical knowledge.
Even wordpress fails horribly at this but it's such a common thing you want to do.
- Structured content that has clear properties
This is pretty easy to design a nice UI for because it's no longer "anything". For example a todo item or a photo that belongs to a gallery. All you have to do in this case is create a form field for each property. It's something a non-technical person could do.
- Arbitrary written content with mixed in assets
Nothing works here.
You're right. Offering a simple way for a non-technical user to manage (locally) his layout is the challenge of most WYSIWYG.I don't use Medium but was quite impressed by this quick demo: http://www.youtube.com/watch?v=iO8hysXMfvQ
Check out around 2:00 how images are inserted within the text. The interface works because it offers only 3-4 possibilities: zoomed in/normal size, full width/left float. Also, there are only 2 levels of heading.
This limited interface is a great compromise between a content-focused experience, and some layout flexibility.
He even dealt with a number of non-image quirks and he probably coded the editor. Like when the paragraph and header were both bolded and he had to go back and fix it.
Medium is also highly targeted to blog posts too. A lot of non-technical users somehow want the ability to edit the content on the pages of their web site that might have fairly complicated markup/css to get the desired result.
But yeah TinyMCE is DEAD.
If it were that simple there would be more good editors around. You should try to prototype what you're talking about and open source it, maybe it will gain traction if it's implemented well.