MultiMarkdown Composer has been my top pick for serious Markdown editing for quite a while now. Version 4 is a big upgrade from the previous version, and I’m excited it’s finally available to the public.

I’m going to talk about a few features, but if you already know how great Composer is, you can always jump to the giveaway form.

MultiMarkdown Composer 4 has been in the works for a few years now, undergoing a complete rewrite. Long enough, in fact, that it’s been through a couple names in the process. Its final incarnation is a free “Basic” app on the Mac App Store, with in-app purchase for the Standard and Pro versions. It was worth the wait: it’s fast and packed with amazing features you don’t find in other editors.

MultiMarkdown 6

In the process of the rewrite, Fletcher Penney wrote a whole new version of MultiMarkdown. MultiMarkdown 6 is technically still in beta, but is well-tested and I haven’t had a single issue with it in MMD Composer 4.

There are a few syntax changes to note. Most of them won’t be an issue, though changes like requiring table captions to be after the table instead of accepting it either at top or bottom might throw a few people (and existing MMD 5 documents) off. Some of the new syntax, though, is brilliant.

The Text Editor

First, let’s talk about why this is my favorite editor. Back in 2012 I penned a list of features that my dream markdown editor would have (and a followup). A healthy number of these made it into the first version of MultiMarkdown Composer, and more with each version. Here are some of the features from my list that are available in MultiMarkdown Composer:

  • Bold/italics shortcuts
  • Maintain indentation when hitting return
  • Automatically continue lists, incrementing numbered lists automatically
  • Automatically pair common characters (brackets, parens, backticks, quotes, etc.)
  • If a paired character is typed while text is selected, wrap the text in the pair
  • Pasting a link with text selected creates link syntax
  • Autocomplete reference titles, so typing a square bracket creates a pair and then typing inside of it searches the document for any title: url (or footnotes) lines and uses typeahead completion.
  • Table of Contents
  • Shortcuts for indenting lines and paragraphs and moving them up and down
  • Tools to turn text into lists and convert lists between bullet and numbered
  • One of my favorites: ⌘↩ will start a new line without inserting a linebreak in the current line

The editor adds some other great touches as well, including elastic tabstops and commands to convert block types between blockquotes, lists, plain text, and fenced code blocks. There are even options for instantly title-casing headers, controlling list spacing, and formatting the next line in tables automatically.

The MultiMarkdown Composer editor also provides highlighting for Markdown syntax. Text with strong syntax is bold, emphasis is italic, headlines and links are highlighted, etc. And you can create your own themes, allowing you to do anything from removing all highlighting to customizing your own color scheme. The list of elements the parser provides for styling is very complete.

The Preview

Composer’s live preview is something special. It’s fast, essentially 100% live as you make changes. It can be customized with CSS themes as well. One of my own themes, Pretentious, is included in the distribution.

The synchronized scrolling is amazing. Wherever you scroll to in the editor, the preview matches the position, even if there are a bunch of images or other rendered elements that would make the preview a significantly different length than the editor. A video from Fletcher demonstrates it well.

Composer also integrates with Marked 2 via the Preview With Marked command (⌥⌘P).

Document Stats and Other Tools

Every editor window has an unobtrusive stats bar at the bottom, showing word, character, line, and paragraph counts. It can be toggled on and off with ⇧⌘I.

Then there are the sidebars.

The TOC sidebar shows all of the headers in your document. In the Pro version, you can even control the maximum depth of the table of contents, so if you use a bunch of level 5 and 6 headers, you can keep the list from becoming unmanageable. In the TOC sidebar, you can even drag headers around to re-order the document sections with a simple drag and drop. That feature even lets you nest sections, modifying their header level automatically.

The Reference sidebar shows you all of the reference links (and optionally footnotes) in the document, making it easy to double click them and insert them as a link.

The CriticMarkup sidebar, well that gets its own section.


One of the things you lose when you start writing in Markdown is the collaborative abilities of Pages, Microsoft Word, or Google Docs. That’s why CriticMarkup was invented, but it’s clunky to type by hand and doesn’t allow history. MultiMarkdown Composer takes care of one of those problems.

You can turn on “Change Tracking” and any changes you make to the document will automatically be converted into CriticMarkup syntax. You can set a comment (usually my initials) to be added to each change, allowing you to track changes from multiple editors. The Preview window can show you the original document, the markup version, or the edited document if all the changes are accepted.

It can also compare two files and convert the differences into CriticMarkup. Thus, you can have multiple versions of a document and create diffs between versions to share.

Then there’s the issue of accepting and rejecting changes. Composer offers a sidebar listing all of the edits in the document. You can select them and accept or reject them individually, or accept or reject all changes at once.

And more…

There are a bunch of “Clean Up” tools in version 4. My most-used one is definitely “smart punctuation,” which will go through and convert curly quotes and apostrophes, ellipses, em and en-dashes, etc. into Markdown syntax. This is a big deal when trying to avoid encoding and rendering errors in other apps.

It can also clean up metadata, lists, wrapped paragraphs, tables, and html entities. And it can do them all at once for the whole document, if you like.

Composer also has multiple export options, including HTML, EPUB 3, OpenDocument, LaTeX, and TextPack (the bundle format that I and The Soulmen created).

In the Pro version, you can also create custom text expansions, a la TextExpander. When a shortcut is typed, MultiMarkdown Composer will insert your defined text into the document automatically.

There’s also an advanced undo mode called History Mode (Pro version) that makes it easy to step backward and forward through every change in the document.

The Versions

As I mentioned, the basic version of MultiMarkdown Composer 4 is free on the MAS. It’s somewhat limited in functionality, but you can try it out, and if you like it, upgrade to the Standard or Pro versions.

The Standard upgrade ($14.99 US) gets you:

  • The ability to open multiple documents at once
  • Print
  • Export (HTML, EPUB 3, OpenDocument, LaTeX, and TextPack)
  • Full use of the sidebars (TOC, References, CriticMarkup)
  • Custom Theme support

The Pro upgrade ($29.99 US) gets you:

  • Text expansion
  • History Mode Undo
  • Sync all your settings and themes
  • Limit depth of the Table of Contents

If you start with the standard upgrade, you can move up to the pro version at any time for the difference in price ($14.99 US).

So, to summarize, MultiMarkdown Composer remains my favorite Markdown editor on the market. There are times when an editor like Scrivener or Ulysses make sense, but for writing this blog and all of my other journalistic endeavors, MMD Composer is my standard. Check it out on the Mac App Store.

The Giveaway!

The basic version of MultiMarkdown Composer is free on the App Store, but I have four (4) codes for the full Pro upgrade. The giveaway will run until Noon CST on Friday, Sept 29, 2017. Winners will be chosen at random by the Giveaway Robot, and all you need to do to enter is provide your name and email. As always, these are not stored after the giveaway and will never be used to contact you except to send you your codes if you win.

Sorry, this giveaway has ended.