Weird formatting edge case options

I’d love to be able to toggle options during compile that would handle some of the weirder formatting edge cases - in particular, how Scrivener, and most OSes in general, handle smart quotes. Specifically, the combination of m-dash and quotation mark with no space between. In the vast majority of cases this should be interpreted as m-dash and closed quote, but it never is. It always gets rendered as m-dash and open quote.

I’m sure there are other edge case issues that people encounter that I haven’t thought of, but this is the big one for me. It’s technically not a “bug” because it’s actually doing the expected behavior. It’s just that the expected behavior is usually wrong. The expected behavior can’t handle interrupted dialogue (which is where m-dash + closed quotes is usually found).

I am sure the main problem with that theory is that you’re asking an engine that got it wrong once to get it right the second time, without any further prompting or help given to it. It’s just going to determine the same exact thing it did while you were typing.

A better place to be proofing typography is in the context where it is being created. You have a measure of control over this—as noted in the user manual where the Edit ▸ Substitutions ▸ Smart Quotes option is spoken of:

Although to be frank, I would find it simpler to just type it in correctly in the first place, with ⇧⌥[, if I’m at a spot where I know the engine will get it wrong.