Six Colors
Six Colors

by Jason Snell & Dan Moren

Support this Site

Become a Six Colors member and get access to an exclusive weekly podcast, community, newsletter and more.

By Jason Snell

Searching for the perfect iOS Markdown writing tool

iPad in the backyard

I love writing on my iPad. The mere act of getting up from my desk and switching away from my iMac can help me break out of a rut and be more productive. I frequently write in my backyard and at my kitchen counter on an iPad.

And I feel more focused using iPadOS itself, for some reason. I know I can run apps full-screen on my Mac—though a 27-inch iMac is spectacularly bad at that. I know I can hide and quit apps on my Mac with a few keystrokes. And, conversely, the iPad actually does make it easy to switch between apps. And yet, somehow, the iPad provides more of a mental barrier for me, making it less likely I’ll peek over at Twitter or Slack while I’m in the middle of writing something.

It’s been a while since I described my writing process on iPad, and things have changed. Editorial, previously my writing tool of choice, is out because it’s basically been abandoned by its developer. I’ve been using 1Writer most of the time, but it’s also had a slow pace of development and has bugs and quirks that continue to frustrate me. The same goes for Drafts, which gets a lot of things right but doesn’t quite fit into my workflow.

What I’m saying is, on my Mac I have a bunch of tried-and-true tools for writing—BBEdit for longer stories, MarsEdit for quick blog posts, Scrivener for longform projects. On the iPad, though, I’m simply not satisfied. My quest for the perfect iPad text editor continues.

What’s on my list

In trying out different writing tools on iOS, I’ve discovered that I actually have a checklist of features that I want. And of course, the frustrating thing is that different apps check different boxes, but none of them do it all!

Craft hides hyperlinks, which is a dealbreaker for me.

The right kind of Markdown support. I write in Markdown, and have for more than a decade. Using a plain text format makes it easy to use pretty much any app, on Mac or iOS. I prefer Markdown syntax to coding HTML by hand—I find it more readable and less prone to errors—and at this point all of my published work is on the Web.

The App Store is littered with Markdown text editors, but not all Markdown implementations are created equal. I expect my Markdown editor to show me every single keystroke I enter, which means any attempt to hide hyperlinks will be met with immediate rejection. (Sorry, Ulysses and Craft.) I do appreciate syntax coloring and styling where appropriate—so that bolded text is bolded, and headings are prominent… so long as the app doesn’t swallow the markup that makes them so.

1Writer makes it very easy to export my document as Markdown or HTML.

The app also needs to be able to convert the Markdown into HTML on command. 1Writer’s Copy command, for example, lets me choose whether I want to copy the plain text or an HTML version of my text. This is extremely useful, because one content-management system I use doesn’t understand Markdown and requires me to paste HTML. And while I don’t require an in-app preview of my document rendered as HTML, it’s sure nice. (And even better if I can define a template for the preview to use, as I can in Drafts and iAWriter.) For those who need to share files such as meeting notes with people who don’t speak Markdown, an easy export to PDF would also be nice.

Document syncing. As I’ve explained, I write on my Mac and on my iPad. And I have preferred apps—most notably BBEdit—on the Mac side. That means that any app I use on iOS needs to be able to sync with the same filesystem that I’m using on the Mac side. Right now, that’s a folder called Stories located in my Dropbox folder, but I’m open to using iCloud Drive instead.

What I don’t want is an app that builds its own clever document database, making it difficult to load up a half-written item from Dropbox or pick up what I’ve written on the iPad when I return to my Mac. I don’t want to insult apps that do this, because they often have very good reasons to do so—Drafts being a prime example—but since I am not going to be writing in Drafts on my Mac (sorry, Drafts), the inability to easily sync with my Mac documents makes me unhappy.

Drafts is great, but it uses its own document database, which complicates editing stories created elsewhere.

Sure, there are workarounds—I just don’t like them. My ideal app doesn’t make me work to see a folder full of my in-progress writing projects.

Automation. At a bare minimum, I should be able to easily kick off Shortcuts from within the app. I’ve written shortcuts to do things like transmit my posts directly to Six Colors, and I want to use those in any text editor I adopt.

But beyond that, ideally any app will support some sort of macro system that will allow me to add scripts that create specific kinds of functionality. For example, 1Writer supports JavaScript-based automations that allow me to do things like generate a link to an app in the App Store simply by typing its name. That’s incredibly handy.

Taio’s Shortcuts-inspired macro system is bananas.

I’m currently trying out an app called Taio, which has implemented a visual, Shortcuts-like automation system of its own. It was incredibly easy to build a basic automation to take the contents of the clipboard and use it to create a Markdown link around the text I’d selected in the app.

Basic features and keyboard shortcuts. Which brings me to another quirk of a surprising number of these apps: they lack basic functionality that any self-respecting Markdown editor should have. Why is it that I had to write a Markdown link feature in Taio? Any editor that supports Markdown should support linking natively.

I’ve seen numerous text editors that implement basic find and replace functionality as macros you can add to the app. I appreciate the power of those macros to extend the app’s interface, but… don’t you think your app should just support find and replace? Don’t make it a downloadable macro, or even a preinstalled macro. It belongs in the app. I’m not interested in an app that’s an empty shell—I’d like the developer to build basic functionality themselves. I want to use automation features to build the weird stuff that only I care about, not the entire app.

(While I’m at it, here are some text features that BBEdit offers that all good text editors should aspire to: pattern-matching search and replace, sorting lines, processing duplicates, processing lines matching a pattern, and changing case.)

1Writer’s Insert Link command has a keyboard shortcut, but can’t be completed with a keyboard.

And related to that: A good iPad text editor needs to thoroughly support keyboard shortcuts. These are writing tools. They are almost certainly being used with external keyboards of some kind. There is no excuse to not support a rich keyboard shortcut interface, and that includes assigning keyboard shortcuts to user-created macros. (Even more baffling than Taio requiring me to build a macro to make Markdown links is that there’s no way for me to bind it to a keystroke.)

I also see way too many apps create half-baked keyboard shortcuts that miss the point of having keyboard shortcuts in the first place. 1Writer will let me use Command-K to insert a Markdown link, and it will even offer to use the URL on the clipboard as the link—but rather than just do the deed, it brings up a dialog box displaying four different options and makes me click to choose one. And no, the dialog box can’t be navigated via the keyboard. (Taio, similarly, will let me drop down its Actions menu via a keyboard shortcut—but not actually select any items on the menu. What’s the point?)

So close, yet so far

No app I’ve tried—1Writer, Taio, iAWriter, Drafts among them—checks all the boxes.

Feature Taio 1Writer Drafts iAWriter Textastic
Don’t hide Markdown yes yes yes yes yes
Syntax color/style yes yes yes yes yes
HTML Preview yes yes yes yes yes
Generate HTML yes yes macro yes yes
Generate PDF yes no macro yes no
Dropbox/iCloud file sync yes yes no yes yes
Shortcuts support yes yes yes no yes
Macro support yes yes yes no no
Key shortcuts for macros no no yes no no
Search and replace macro yes yes yes yes
Markdown link shortcut no sort of macro yes no
Custom preview template no no yes yes no
Multiple windows tabs yes yes yes yes

1Writer, which I’ve been using for a couple of years, comes close—but it’s also been buggy lately, and its keyboard shortcut support isn’t strong.

If Drafts would optionally monitor a folder in Dropbox or iCloud, it might win this—but philosophically, supporting a filesystem seems antithetical to the app’s entire approach.

I’m surprised how well iAWriter scores on this list of features. Its lack of customizability is the issue; if it doesn’t do something I want, I can’t add that feature. But it’s close enough that I should probably revisit it.

Right now, Taio is a promising contender. It’s a young app with a mind-blowing macro interface, and the developer says that the app will add support for attaching macros to keyboard shortcuts in the future. It’s one to watch, but it’s also still missing a bunch of basic features.

In the meantime, I am an iPad writing nomad, wandering from app to app. Maybe I’ll settle down someday, but for now, I’ll see you (and all these apps) down the road.

If you appreciate articles like this one, support us by becoming a Six Colors subscriber. Subscribers get access to an exclusive podcast, members-only stories, and a special community.


Search Six Colors