What is your favorite text editor?
When I polled my readers with the same question back in 2009, Vi won by a landslide. I’m not sure if it was because I skewed the results by stating my preference for that editor above the poll, or because it’s just that popular. But I can’t say I wasn’t pleased with these results.
There are many reasons to love Vi and Vim – the speed, the flexibility, the power. But among other things, it’s a perfect editor for an operating system nomad like me. I more or less share my computing time equally between three operating system: Windows, Ubuntu and OSX. In addition to that I also (as of lately) maintain a FreeBSD server. And you know what? Vim is the same everywhere. Whether I’m working on Windows, on Mac or on a headless server, via SSH session, the user experience is exactly the same. The Register published a fragment of interview with Billy Joy recently in which he explained how he wrote vi to be usable over 300 baud modem. It’s that kind of an editor – it works the same regardless environment, and connection speed. The only other editor that gives you a remotely similar kind of experience is Emacs. And I can’t say a bad word about Emacs – it’s a damn fine editor in it’s own right. Well, except maybe for this.
But I digress.
The funny thing about text editors is that most people never actually think about them, and don’t realize that there are choices beyond Word, Notepad and/or TextEdit. Programmers on the other hand are very peculiar about their editor choice. We often bicker about them, and judge people based on their editor preferences. But it kinda makes sense because a text editor is our primary work tool. That’s how we get things done, and using sub-par tool does impact our productivity, efficiency and ability to deliver code in a timely manner.
Hence, most advanced text editors are primarily targeted at programmers. Vim and Emacs are specifically designed for coding. You can of course use them for other things, but coding is what they excel at. In recent years however, there has appeared a new group of people interested in good text editing experience. People who also work with plain text files all day, but became disillusioned and frustrated by WYSIWYG tools like Word: creative writers.
Yes, fiction writers are leaving the MS Word universe in droves. And they should, because Word is a big, bloated, ugly and unstable disaster of a text editor. It works fine for typing out a short letter, or an interoffice memo – but it is incredibly lousy for just about anything else. Let me give you an example from where I work.
We have a medium sized document – a request list of sorts, that is about 4-6 pages long, and consist of an enumerated list of about 60-80 items. Some items are a single line. Some are an entire paragraph, and some have sub-list of 5-10 items, each of which can have 2-3 sub sub items. All in all it is not a hugely complicated document. The problem is that it has to be customized for each client – which involves adding and removing items, changing their orders and etc. This work is done by some office clerk, gets reviewed by his supervisor and then approved by a director. On average the document goes through 3-5 people and somewhere in that process the enumerated lists always, always break. The order becomes screwy, the items don’t align properly and etc. Inevitably it always ends up in the IT department where we have someone (usually an intern if we have one on loan) spend anywhere from 20 minutes to an hour fixing it. I could blame the clueless users for this, but I had to “fix” that document enough times to know that the issue is with the Word shoe-horns enumerated lists into WYSIWYG paradigm.
This, among other things is why I decided to write my Masters thesis in LaTex rather than Word. I spent enough time listening to friends bitch about Word eating up their thesis to realize that they spent about as much time fighting with the infernal software as doing research.
But this is not about Word alone. All WYSIWYG editors suck. Here is an account of an aspiring writer, who after being disillusioned with Word switched to Google Docs only to discover it is plagued by the exact same problems. That’s because all WYSIWYG editors suck. More and more writers are realizing that there are two ways to write:
- Choose WYSIWYG and be a part time writer an a full time MS Word wrangler
- Choose plain text and just write
WYSIWYG is supposed to make text editing easy and improve usability, but most of the time it simply becomes a distraction. A constant needling annoyance that forces you to do silly housekeeping task, when all you want is to put words on the page.
In the recent years, a new class of text editors emerged as a direct result of this frustration and disillusionment with Word and WYSIWYG: distraction free, full screen editors. There are dozens of these out there now. I think Q10 was the oldest and most mature of the pack, but it was WriteRoom and it’s Windows clone Dark Room that made this sort of style hip and fashionable.
All these editors share a similar philosophy and design principles: simplicity, minimalistic UI that does not get in the way, and emphasis on plain text to eliminate the text management nightmare of full fledged WYSIWYG editor. Some of them go overboard with the minimalism to my taste.
I’m not against bare bones, stripped down tools but there are few features I like to have in my editor:
- I find it hard to work without an inline spell-checker. Some people hate these, but I am a big fan.
- I like word count to be displayed somewhere in the status bar.
- I don’t like full screen editors because they hide the system clock which is something I need to look at from time to time
So I haven’t really been using any such editor for my creative work. I mostly do my world building and random idea dumps in vim, but I have been intrigued with these things for a while now. Not so long ago, Creative Bits ran a promotion on Clean Writer Pro and I was able to pick it up for free. I figured to give this distraction free writing thing a whirl. I must say it is a pretty neat Mac Store app.
It looks sleek, it has very unobtrusive UI and a windowed mode which is something I appreciate quite a bit:
A very spartan set of options allows you to set the width of the margins, enable inline spell check and set few other key preferences. There are not many options, so there is really no way to go overboard with these. You will probably visit the options screen once, and then forget about it forever:
Another neat feature I have noticed is that it automatically saves your work for you in a temporary buffer even if you neglect to do it yourself. When I was testing it, I would write some gibberish, force quit the app without saving and then re-open it to make another screen shot. To my surprise the my random gibberish was preserved every time even though I have never made an attempt to save it to a file. This is a very cool feature that will likely be a great boon to all those aspiring writers who always forget to hit the save button, and can never resist to click “Don’t Save” on a popup dialog when they see one.
When saving, Clean Writer Pro supports Plain Text, RTF, HTML and Markdown. The last one is a pleasant surprise, as I happen to be a markdown affectionado. As far as I can tell though, this option doesn’t really do much – after all Markdown files are text files, and the editor does not do any special syntax highlighting or previewing in .md files as opposed to .txt files.
Unlike many of plain text editors, Clean Writer Pro preserves version history buffer for your document. At any time, you can browse through all your previous saved version and revert to them at will. The interface to do this is actually really nice:
Now we programmers use source control for this sort of thing. People from outside of our industry however have a very faint concept of version control. Even though MS Word has this feature built in, I have never actually seen anyone using it. Perhaps because UI is cumbersome and counter intuitive and therefore scary. Clean Writer Pro presents it in a clean and visually attractive way – the neat little version slider is actually fun to play with. UI design does make a difference sometimes.
All in all, it is a really solid piece of software. Definitely worth $3 which is it’s current Mac Store price. My only problem with it is that it is a OSX app rather than a multi-platform thing. Since I constantly roam between operating systems, I could only spend a third of my time editing in Clean Writer. So I’ll probably stick with my Vim, but if you are a writer and you spend most of your time on a Mac, this app is worth checking out. It’s clean, it’s minimal and it saves and versions your work for you so you don’t have to think about it. A really good addition to the family of distraction free editors for non-programmers.