# The best Markdown editor is any editor

I’ve long known and accepted that regular people view me as something of an oddball, but it’s still unnerving when I discover another aspect in which I’m out of step even with the nerds who should be my off-center kith and kin. I can reconcile my dislike of Star Wars and my complete indifference to videogames to a generational difference—I was just a few years too old when they came along. But now I see the favorable reactions to Brett Terpstra’s Markdown editor wish list, and I wonder: Am I an outcast even among Markdown users?

It’s not that I have no interest in making Markdown easier to write. I have a handful of Markdown-specific TextMate commands that I’d hate to be without. But much of Brett’s list just seems unnecessary, and a couple of items strike me as distinctly wrong. I’m going to go through the list in the same order Brett did, and I’m not going to recap his descriptions, so if you haven’t read his post, this’ll mean nothing to you.

• The list starts out well. ⌘B and ⌘I for bold (strong) and italics (em)? Certainly. Intelligent indentation? Wouldn’t have it any other way.
• I can’t say I’m against list continuation, but I don’t feel unduly burdened if I have to type asterisk-space or numeral-period-space. TextMate’s current Markdown bundle does much of what Brett wants in this regard1, and I use it when writing on my MacBook Air. But when I’m writing on my old iMac, which apparently still has an old version of the Markdown bundle, there’s no list continuation, and my writing isn’t affected in the least.
• The auto-pairing and wrapping items mean nothing to me. TextMate has had auto-pairing for years, but I keep it turned off. Every time I give it a try—everyone seems to love it; let’s see how it works—it just gets in my way.
• Link pasting is one of those distinctly wrong things. Pasting means something, and it should always do the same thing. Having its behavior depend on the format of the clipboard contents is a recipe for confusion and anger.
• Tabbing to indent a selected block? OK, I guess, but I prefer a keyboard shortcut to a regular key. I like my regular keys to insert the same thing every time.2
• I have no interest in shortcuts for moving lines up and down. It doesn’t happen often enough that I’d be able to remember the shortcut, and the standard editing commands are efficient enough for me.
• Even though I’m not a big fan of auto-completion in general, auto-completion of reference titles sounds like a great idea.
• Brett’s desired shortcut for inserting footnotes is similar to a TextMate command I’ve stopped using. It turns out that Markdown3 can be tetchy about where you put the footnote text, especially when you’re in a list, so it’s generally better to place your footnote text “by hand.”
• I’m unenthused by the proposed shortcut for inserting reference links because I think my system for reference links (which puts them at the end of the document where God intended) is better.
• I doubt that I’d use the headline level conversion shortcut very often, but it seems pretty handy.
• Switching between ordered and unordered lists sounds like a useful shortcut, but I don’t see why anyone would need to convert a series of lines into a list. If you’re adding lines one after the other, you would know right from the beginning that you’re making a list.
• I can see how the blockquote level shortcut would be a real timesaver to people like John Gruber who write posts that are mostly quotes, but for those of us writing original material, inserting the occasional greater-than sign isn’t a big deal.
• Creating a list of references from URLs on the clipboard? Great idea. Same with converting inline links to reference links, even though I have no use for it.
• Using Shift-Return or Command-Return to add two spaces before the newline (to get a line break) strikes me as a terrible idea. The Markdown way of getting a line break is one of my least favorite features, because it uses invisible characters to affect the formatting.4 Having invisible characters inserted automatically compounds the problem. And really, doesn’t it take longer to remember to type Shift-Return than it does to type Space-Space-Return?
• I understand the desire to change the behavior of ⌘← and ⌘→ to stop at the last visible character, but standard editing shortcuts shouldn’t be messed with.

I guess the real problem with Brett’s list and me is that I disagree with the entire notion of a Markdown editor. Markdown is just plain text—any text editor should do just fine. By design, very few of Markdown’s formatting “commands” involve more than a few normal keystrokes—this isn’t HTML or LaTeX. Trying to remember a dozen or more hotkey combinations to do things that are both relatively rare and easily accomplished with a small amount of normal typing seems like the wrong thing to be using your brain for. And, with this as my basis, I don’t believe it’s any more efficient than just typing.

The recent popularity of Markdown editors suggests I’m on the wrong side of history here. Oh, well. I’m getting used to it.

1. It also screws up lists sometimes when I try to edit them, but it’s not fair to stain Brett’s wish with the bugs in a specific implementation.

2. Wait, didn’t I just say I like intelligent indentation? And don’t I use soft tabs? Yes and yes. I am large, I contain multitudes.

3. Actually, this applies only “enhanced” processors like MultiMarkdown and PHP Markdown Extra, as standard Markdown doesn’t have footnotes.

4. No, I don’t have a better idea.

## 6 Responses to “The best Markdown editor is any editor”

1. I don’t really know if it’s a matter of making Markdown easier to write or text easier to format. I tend to write first, usually on iOS, and format later on the Mac.

Like most, I’ve found a combination of the app (in my case Byword), TextExpander Snippets, KM Macros and a few of Brett’s services to do the trick, but it’d be so much nicer if these features were truly baked in.

Maybe I’m looking at it wrong, but while the purity and portability of plain text matters, so does the speed of formatting. Or at least it does for me…

2. Well, you may be cranky and old, but I agree with you. I also found his list to be weirdly specific and too much to keep in one’s head.

Trying to remember a dozen or more hotkey combinations to do things that are both relatively rare and easily accomplished with a small amount of normal typing seems like the wrong thing to be using your brain for.

I agree. I’ve tried to use some of Brett’s keybindings before, but there were just so many of them, there was never any chance I would remember them all. I also have given up on ever learning vi or emacs. It seems to me that if you understand the standard OS X keyboard shortcuts, you can do most of the fancy vi maneuvers without having to learn a bunch of new stuff.

For example, I just went back and changed a couple of words in the last paragraph. I’m sure if I were using vi I could have just pressed 3 letters to move over and kill the old words. But as it was, all I had to do was press option-arrow and option-arrow-shift a couple of times. I doubt I could have thought of the vi commands to do that as quickly as I can use option-arrow by instinct.

Brett’s desired shortcut for inserting footnotes is similar to a TextMate command I’ve stopped using.

Lately, I’ve been using a system where I hit option-t to add a dagger† to the text where I want a footnote marker or text and then going back later with a script to convert it to an auto-numbered numbered footnote reference. It works pretty well.

† Dagger is not to be confused with U+271D ‘Latin Cross’ ✝.

The Markdown way of getting a line break is one of my least favorite features, because it uses invisible characters to affect the formatting.

I gave up on the Markdown way of doing line breaks after the millionth time I forgot to add two spaces to the end of one line in a block of poetry and didn’t catch on until after I posted the item. Now, I always just write <br /> when I need a line break. It’s big dumb and obvious, so you can’t forget to do it or be unsure if you already did it.

3. I second what Carl said about just using a br tag to force a line break. I’ve done that for so long I didn’t even remember the Markdown way to do it until I read your post.

As for the wish list, I agree with you. While I tend to use Byword instead of TextMate for writing Markdown these days, that’s only because I like to keep writing and code separate, and I use Byword on the Mac and on iOS. It does what I need, and there’s not much it lacks in terms of keyboard shortcuts and fancy content-aware behavior.

…I really should bite the bullet and learn vi, probably, but the tools I have now work.

4. This is off-topic, but it’s my blog so suck it.

Isn’t it funny how little love Emacs gets among Mac users? Seems like whenever someone talks about switching to a traditional power Unix editor, it’s always vi/vim. In the old days of terminal editors, many avoided Emacs because it was bloated compared to the swift and trim vi: “Eight Megabytes And Constantly Swapping.” Today, of course, 8 MB sounds quaint, and it’s been fast enough the few times I’ve launched it. I wonder why it’s dropped off the radar?

5. Every time I try to get into emacs, I end up eating a shovel and dying.

6. I’ve wondered the same thing about Emacs and Mac users, especially given the popularity of TextMate. I always considered TextMate to be, essentially, an incarnation of Emacs with a more Mac-like design, more sensible defaults, and built-in customizations for popular use cases (e.g. web development). And people really seem to like it. So it made sense to me that TextMate fans who wanted to dive into a more powerful Unix-type editor would logically incline towards Emacs over the more conceptually challenging vim. Yet the opposite seems to be happening.

The only explanation I have for this is that vim is what’s fashionable right now. If enough people, trendsetters and tastemakers, are doing something, others will see it and want to emulate it.