Hi, I read that vanilla MultiMarkdown supports smart typography, which (quote) ‘converts “plain” punctuation into “smarter” typographic punctuation’.
- Straight quotes (
') into “curly” quotes
- Backticks-style quotes (```this’’`) into “curly” quotes
- Dashes (
---) into en- and em- dashes
- Three dots (
...) become an ellipsis
But as I tried it out in DT’s markdown editor, there’s seems to be no conversion in html-rendered preview. On the other hand, the conversion did happen if I try to render the same text with
multimarkdown command line tool.
So I’m wondering if this smart typography feature is intentionally disabled by DT? Or this is unintentional and possibly a bug?
Quoting from the MD6 documentaton:
This feature is enabled by default, but is disabled in
compatibility mode, since it is not part of the original Markdown.
But I think that you can simply turn on intelligent quotes in DT’s global settings:
That of course only helps with MD that you write in DT. If you import it from somewhere else, the quotes will probably remain what they are.
Unrelated: I don’t think it’s particularly smart to change the quotes on rendering. If someone want’s typographic quotes, they should be already in the text. Also, backticks are reserved for
code in MD, and three backticks for code fences. Re-purposing them for typographic quotes is irritating at best. Also, this gets more complicated with locale-dependend quotes (think US vs. German vs. French).
This will not convert existing quotes and dashes. It is a replacement technology that will make the change on-the-fly as you type.
If you don’t want this to be a global setting, you can also enable this on a per-document basis via the Edit > Substitutions commands. However, you should enable it before you start editing. The commands are also available in the contextual menu.
Hi chrillek, thanks for the info.
Oh, I guess I was just assuming it works like the LaTeX way… you know, that
I think you are right about locale-dependent quotes. Although MMD6 does support defining language locale, it’s only available for a small number of locales. And it fails as soon as more than one locales are involved in a doc.
Good to also know there’s a local way of doing it, thanks bluefrog.
Also, I don’t think DT is running MMD6 in compatibility mode, since most of MMD’s extension features work well. It might just disabled this feature via some flag equivalent to
--nosmart command line option.