25 June 2011

PyRoom - a distraction-free editor

PyRoom is a full-screen text editor: it adopts a minimalist approach, largely doing away with icons and menus. Your screen shows the text being worked on and nothing more until you invoke a simple help screen or the preferences dialog.

It’s a clone of WriteRoom for the Mac and runs under Linux. Other full-screen editors are listed at this Wikipedia page.

What appeals to me about such writing tools is their simplicity. For many years I used a DOS word-processor called XyWrite; this, despite an unfriendly interface and a potential for infinite, time-wasting customization, can offer an uncluttered working screen. It’s perfect for immersive writing, when the machine becomes transparent to the user and all that matters is the text. Except under emulation, I no longer use DOS at all, or Windows for anything except a music server.

PyRoom is not a word processor. Its files are pure ASCII, and it does not support smart quotes or highlighting of any kind. Those need to be added when the first draft of your text is complete. (Just adopt some arbitrary characters to denote the beginning and end of bold or italic regions.) PyRoom is fast: even on a humble netbook it loads a 125,000 word book almost instantaneously.

The working screen looks like this:

Click images to enlarge
The theme preferences dialog lets you choose the colours of the “ink”, “paper”, and a border if you want one, together with the size of the text area relative to the screen. I set up the grey-blue theme illustrated because I find it restful on the eyes.


The general preferences dialog is largely self-explanatory.


The “indent” option is nice because it permits a book-like appearance and obviates a double keypress at the end of every paragraph. However, increasing the line-spacing produces a slight extra space between paragraphs, which I find unsightly, so I chose a font which is small on the body.

The PyRoom command-set is as follows:

Control-H: Show help in a new buffer (a “buffer” is a full-screen window)
Control-I: Show buffer information (buffer name, file path, number of characters, words and lines)
Control-P: Show preferences dialog
Control-N: Create a new buffer
Control-O: Open a file in a new buffer
Control-Q: Quit
Control-S: Save current buffer
Control-Shift-S: Save current buffer as
Control-W: Close buffer and exit if it is the last buffer
Control-C: Copy
Control-X: Cut
Control-V: Paste
Control-Z: Undo last typing
Control-Y: Redo last typing
Control-Page Up: Switch to previous buffer
Control-Page Down: Switch to next buffer

The Linux mouse-buffer works: text highlighted with the mouse can be pasted elsewhere by clicking the middle button. Highlighted text can also be dragged into a new position.

And that’s it. There is nothing more to play with or distract you. At first I felt the absence of a search function, but soon realized that I had formerly wasted much time on looking for repetitions of phrases and constructions – something that is much better done at the polishing stage, using a full-blown word-processor.

Once you have set up a theme to your taste, all you can really do with a distraction-free editor is compose the first draft. There is no potential for electronic pencil-sharpening; the software brings you to the coal-face more quickly and lets you spend longer there. I think I’m becoming a fan.

3 March 2014: This post has been expanded and updated here.

No comments: