Messing around with UIMenuController.
Tapping on “Style…” would bring up several styling options for the selected text. Either plain RTF styles, such as “bold/italic/underline”, or semantic styles such as “emphasize”. It could also host text insertions; think of tags, which would be inserted before/after the selection.
These options could either be shown in the current menu (replacing cut/copy/paste/etc.) or in a larger popover which still points to the selection. The first option being much more direct, if pretty limited. The second option could hold more options and could go WYSIWYG on the selection. It could even hold the basic format palette of B/U/I, text alignment, lists/intendation. It might break in landscape, though, and the initial menu might get awfully long in certain languages.
Other caveats/questions: Would it act as a switch (undo “bold” when already bold), would it be fixed styles (or would the user need to customize the available options), would it work on a selection of zero (just the insertion point), would it allow paragraph-based styling (headline) and so on.
But I like the idea, as it would allow text manipulation without having a button bar visible. It would also be much more direct: manipulations would happen in visible context and would thus be seperate from nav-bar buttons (which might then only manipulate global options such as view, spell-check on/off etc.). Dunno, but it could well hold a basic set of markdown tags… hm.
Please note that this is filed under Research & Development, so don’t expect to find it in any shipping product. :)