Musings from Mars Banner Image
For Software Addicts: Yes!MaybeNah!
Mars Report:

WriteRoom: If TextEdit Were Full Screen and A Standard Cocoa Feature

Published December 17th, 2006

WriteRoom: Distraction Free Writing

WriteRoom Text EditorOriginally downloaded 10/14/06. WriteRoom implements a new concept for text editing that some other Mac apps have moved to lately—letting users work in full-screen mode without distractions from other user-interface elements or applications. Aperture is a prominent example of this, and Aperture’s little brother, iPhoto, has a similar implementation. Whether WriteRoom has enough of the tools a writer needs to do his/her job is yet to be seen… its emphasis on simplicity is good as long as it’s not too simple. One thing that looks promising is WriteRoom’s extensibility through scripts and plugins, a large number of which are already available on the Hog Bay Software’s website. (Written in reference to WriteRoom 1.0)
WriteRoom's Full Screen Editing Environment

Update 12/17/06. Man, did this app grow up quick! For one thing, it pretty quickly went from being freeware to being shareware. (Version 1.0 is still available as freeware, though.) In early December, Hog Bay released a beta of WriteRoom 2.0, which implements what could be a killer feature for users like me. Besides vastly improving the full-screen environment and broadening WriteRoom’s word processing chops, Hog Bay has implemented an extension for Cocoa applications that basically turns WriteRoom into an extension of every editing environment on your Mac (well, unless you’re still stuck using Carbon-based editors like Microsoft Word or BBEdit).

After installing the optional “Edit in WriteRoom” plugin from within WriteRoom’s preferences, any time you encounter an editable text view in a Cocoa application you’ll find a new “Edit in WriteRoom” menu item in the application’s Edit menu. (Well, almost every environment… I’m editing this in WordPress in a Safari browser, and the Edit in WriteRoom selection doesn’t work here for some reason.) Select that item, and WriteRoom launches (if it’s not already running) and displays the text you want to work on in its beautiful full-screen editing world. Work on it there, hit Save, and you’ll find the text has been piped over to the original application.

WriteRoom's Edit-In Plugin Preference Pane

Now, why would you want to do this? Let me give you an example of how great this will be for me. I do a lot of writing in DevonThink Pro, and I have a particular fondness for using DT Pro’s “sheets,” which are a kind of spreadsheet text view that make working with some kinds of data very nice. The main limitation of sheets is that each text field is like a single-line spreadsheet cell, and you can’t configure it to handle multiline text. This makes typing in a bulleted list of pros and cons kind of tough: To get a new line, you have to type Option-Return, and no rich-text editing options are available. Oddly, I’ve noticed that if I paste a bulleted list from TextEdit (or any other Cocoa app) into DT Pro’s sheet cells, the list is preserved as such… it’s just that you can’t format them within DT Pro.

So along comes WriteRoom, and now I can select “Edit in WriteRoom”, format my list, and save, and I’m done. If I need to edit it later on, it’s pretty much the same steps. (I’ve written to the developer noting that WriteRoom mis-handles bulleted lists that are re-imported from DT Pro… and hopefully that will be fixed one day.) This feature of WriteRoom works so seamlessly that it’s like enabling a full-screen editing environment from within DevonThink Pro… or any other Cocoa app you may be typing in.

Another great place to use this is in applications like Stickies. Even though Stickies support the full range of Cocoa text features–such as styles, lists, tables, and so on–it provides no way to format those. There are workarounds you can try, such as pasting a Cocoa table into a sticky and using it as a template for any Sticky in which you need a table. But WriteRoom adds an elegant way to natively add these features to Stickies. Just select Edit in WriteRoom, and there you can add a Cocoa text ruler, or format a table, or whatever you need to do, and when you save it back to Stickies, it’s all there just like you want it. I’ve started using Edgies lately, and although there’s a way to format lists and tables in Edgies by opening them in the MemoList window, doing this in WriteRoom is faster and more fun. (There’s a bug in doing this if you have Edgies set up without a top menu or Dock icon, and I’ve passed this info on to the developer.)

This new feature of WriteRoom is still in beta and can be a bit rough. If you use DefaultFolder, you’ll need to either disable it in WriteRoom or implement the workaround described in the HogBay forums. I also found I had to disable Application Enhancers in WriteRoom, to avoid a nasty crash bug. But it has the potential to be the kind of application service that many of us have always wanted from the Services menu. And yes, WriteRoom does add services there, too… you can open files from the Finder with the service, or append text to the frontmost WriteRoom document, or create a new file with your selection using the app services. (I found these to be a little buggy at this point, however.)

The thing that distinguished WriteRoom in version 1.0–full screen editing–is more than just a “wow, look at that!” feature in 2.0. You can now customize the full screen’s colors, transparency, width, font, padding, scrolling behavior, and much more using WriteRoom’s preferences. If you’re editing in RTF, you can add a ruler to the top of the screen, but otherwise, it’s just you and your words against a serene background of your choosing.

Preferences for Full Screen Editing in WriteRoom

Here’s my notes on pros and cons for WriteRoom during my recent testing:

Pros

Cons

  • Nice, unique interface with lots of options for appearance
  • New application service makes adding content from other applications a breeze. You can either append or create a new note.
  • Familiarity from TextEdit is a plus… same basic features. In Rich Text mode, WriteRoom supports lists, tables, and text styles… all the same as in TextEdit.
  • WriteRoom implements an innovative Cocoa plugin that lets you ship text from any editing application to WriteRoom for work. When you save in WriteRoom, the text is saved back to the original document. I’m testing this now with DevonThink Pro sheets… One of the big drawbacks to sheets is that you have to live without line-wrap, lists, styles, and all other niceties of rich text mode. I’m hoping that I can add bullets here and save them back to DevonThink, with the RTF data preserved. Let’s see… Yes! it works! You still can’t preserve hyperlinks, text styles, etc., but merely having a better editor to work in for Devon’s sheets will be terrific!
  • One feature missing from WriteRoom is the ability to save text as HTML, and to open HTML source code. This is a relatively new feature of TextEdit, which apparently uses a native Cocoa HTML converter. It would be awesome for WriteRoom to adopt this ability as well.
  • WriteRoom crashes when I close a document without saving, and when I’ve saved a document that I’m working on from another app and then close the WriteRoom copy. WriteRoom turns the whole screen black, becomes unresponsive, and then crashes after I hit the Escape key. (Note: I think the problem is a conflict with Application Enhancer. When I disabled APE in WriteRoom, I could close non-saved files without WriteRoom crashing.)
  • WriteRoom needs more contextual menu commands… for example, convert from Text to RTF. When in RTF, add or remove the ruler, or add Text items like lists and tables.
  • I could really use an “Edit in WriteRoom” context menu item when I right-click in the text view I want to edit.
  • Editing back and forth with Mail is very iffy… pretty unreliable at this point. Note: This is a big caused by my use of DefaultFolder. See next item.
  • WriteRoom has to be quit and restarted in order to edit a file after you’ve saved and closed it. In other words, the only way I could get WriteRoom’s “Edit in WriteRoom” feature to work is by closing it and trying again. Note: This bug was apparently caused by my use of DefaultFolder. Once I disabled DF in WriteRoom, this behavior ended.
  • I couldn’t format a table in WriteRoom and save it back to Mail (?), although this works in most other Cocoa apps.
  • After turning DefaultFolder off in Mail, I was able to use WriteRoom there. However, a fairly serious limitation is that even though I’m working on a RTF message, I have to use plain text format in WriteRoom.
  • Whenever I open a new text view in WriteRoom, the new document is at the back of the file list when I’m switched to WriteRoom. In other words, I can’t see it if there was previously another document I was working on.

Although there are still some bugs to be worked out, I predict I’ll be buying the $14 license for WriteRoom soon. It’s turning out to be an insanely great replacement for TextEdit as your basic text editor for Mac OS X.

Version as tested: 2.0 b2.

    
  • del.icio.us
  • Google
  • Slashdot
  • Technorati
  • blogmarks
  • Tumblr
  • Digg
  • Facebook
  • Mixx

Show Comments
Just Say No To Flash