DEV Community

Cover image for Different Markdown Editors, And Why I Use Ulysses
Paul Walker
Paul Walker

Posted on • Originally published at solarwinter.net on

Different Markdown Editors, And Why I Use Ulysses

Since I’ve started blogging I’ve naturally needed more from my editors, in terms of both writing and organisation.

For better or worse, blogging and static site systems seem to have settled on Markdown for formatting input. It has the advantage of being fairly simple to learn and using only normal text characters for formatting.

I’ve tried various different editors for writing text - iA Writer, MarkdownPad, StackEdit, and of course Vim/Emacs. Here's why I've settled on Ulysses for my editing.

Ulysses

It has great Markdown support, but more than that:

  • it integrates with multiple blogging platforms (Ghost, Medium, WordPress and Micro.blog), supporting the extra metadata available on each one.
  • the navigation panel makes it easy to move around what you're writing and see the outline of the work (using the headings)
  • sheets can be arranged into groups and sub-groups, to help with organisation
  • sheets can also have tags and notes added
  • there's a great markup helper in case you forgot a particular tag
  • support for images and other attachments
  • first class iCloud support
  • available on iOS, iPadOS and macOS, so it's available pretty much most places I might want to write. Tie that with the iCloud sync and you can pick up and go.
  • it can export to multiple formats - Word document, PDF, HTML, Markdown, or even straight to ePub.

There’s also a variety of features I don’t use (yet), simply because I haven’t needed to.

I’m going to resist the temptation to take a screenshot of each individual point and just link to the Ulysses app page instead, where they show off each feature at its best.

The features mean Ulysses is surprisingly flexible - while I use it for blogging, I also use it for tracking projects I’m working on. Things that aren’t developed much go in an ‘ideas’ sheet, while others get their own group. Those groups have more sheets inside - for example, a ‘user walkthrough’ sheet for the website in question.

Other options

iA Writer

iA Writer isn’t bad as such. They both have focus mode and the style checking does seem a nice feature.

One downsides for me was that iA Writer doesn’t seem to have any concept of libraries, groups etc. and I use those a lot.

In addition, each supported platform is purchased separately so it would cost me $60 to use both Mac and iOS. Ulysses isn’t priced per platform, and is even included in the Setapp subscription.

StackEdit

StackEdit is actually very good. It has a nice smooth UI, good integration with other sites, and it’s free software. It lacks some of the features like tags, but the features it has work well. I have a private instance that I use sometimes.

One feature that is lacking is direct publishing as Markdown - publishing expects to export to HTML or Jekyll format. If you want Markdown you have to export the file.

MarkdownPad

Briefly - it’s Windows only and has a very outdated UI, which makes sense since the last update was in 2014.

Vim

Vim using the preview plugin is surprisingly good. When you start the preview the settings are to open a page in your default browser, which is kept in sync as you type. A lot of the behaviour can be changed.

It doesn’t just preview Markdown, but understands formats like PlantUML as well. I suspect that without Ulysses I’d be using this plugin to write posts, along with NerdTree and other plugins to keep things organised.

Emacs

Yep, I did try it! No simple way for a live preview. I’ve never found Emacs a great fit for the way I work anyway (and the key chords hurt after a while), so I didn’t spend a lot of time here.

The end

Well, that’s it really. I just wanted to share with you about a tool I’ve come to use increasingly often as time’s gone on. :-) Probably next time we’ll be back to coding in some form or another…

Discussion (1)

Collapse
moopet profile image
Ben Sinclair

I might be in the minority here but I like reading markdown as unstyled markdown. I edit in Vim and don't use a previewer because I'm often on a remote system with no GUI and the text-based previewers barely differ from syntax-highlighted markdown anyway - all they do is hide a few indicators like heading, bold, and italic. When I'm editing something, I want to see those formatting characters.

That means that any editor is a markdown editor!

Ulysses Lets You Work Anywhere, Anytime

I bet it doesn't let you work in a remote ssh session. I bet it doesn't let you work on your friend's PC or in an Internet cafe when your Mac gets stolen on your weekend away. I don't understand why people make things and tie them to one platform. Ulysses might be great at some things, but from what I read on their website,functionally it appears to be inferior to pen and paper :) And if you don't keep paying $50 per year it stops working.

Honestly I wish more platforms offered Markdown as a way of entering copy. If you clear HTML and script tags from it it ensures that people aren't pasting in things like Twitter embeds or tracking scripts into unexpected places, and rules for things like heading order are straightforward to validate. You could even do things like re-number headings based on where you were rendering the output without having to parse HTML and hope there's no missing </div>.