How To Make A WriteRoom For Vim
Here’s a quick tutorial that’s really nothing more than pulling a few ideas from other tutorials around the ‘net – so I can’t claim any credit, ok?
WriteRoom is a Mac-only app which seems to offer writing nirvana; a completely distraction-free writing space. It’s the total antithesis of Microsoft Word – no icons, no menus, no nothing, just a gloriously blank screen, waiting to be filled with your words.
Ironically for something so simple, so minimal, so….. well, so damned Unix, Writeroom is a devilishly hard thing to replicate under Linux. If you don’t mind online apps, there’s Writer, the internet typewriter. Alternatively, there’s RubyRoom which weighs in at just 7k but uses non-standard key commands for save and open, annoyingly uses the ESC key to quit (Nooooooooo!) and doesn’t accept a filename from the command-line. It’s only at version 0.2 though, and as it’s written in ultra-cool Ruby programming language, so even a half-stoned monkey can fix these shortcomings. So, I will.
But, there is also another way.
Y’see, Linux is all about TMTOWTDI. It’s all about simplicity, and factoring things down to be as easy as possible, even if you have to master arcane commands and weird syntax to do it. In other words, here’s how to set up your own Linux Writeroom using the tools you’ve probably already got.
Here’s how to get this, step by step:
- Create a terminal in your Desktop by following this guide
- Set your terminal colours to green-on-black, and your Desktop background to black or choose a suitably dark wallpaper
- If you want to lose your Deskop icons in GNOME to make a completely clean Desktop, use gconf-editor and drill down to /apps/nautilus/desktop/volumes_visible. Uncheck the volumes-visible value, and they’re gone
- Choose a gorgeous font for your terminal. I recommend Droid Sans Mono
- Fire up your Desktop’d terminal and use Alt-left click to move it into the centre of the screen, This gives the trademarked wide margins around your text
- Hide your toolbar/panel/whatever. A clean screen is a happy screen
- Start vim with the default colorscheme
- Happy editing!
This trick also solves one problem found in most Writeroom-like solutions I’ve found in that they assume that a clean desktop means low on features. By using vim as the editor (or emacs, for that matter), you’ve got every inch of power under the hood that you’re ever likely to need, but with none of the clutter.