Brian Dunagan

November 10 2013
Markdown in WriteRoom

I use WriteRoom to focus on writing. As its creator, Jesse Grosjean, bills it, WriteRoom provides distraction-free writing. I like it a lot. And I didn’t have any issue with it, until I switched to Markdown.

I opened a new file. I saved it as “test.markdown” on the Desktop. Then I saved it again. Error.

As the dialog says,

The document “test.markdown” could not be saved. You don’t have permission.

To shorten the painfully long saga, it’s a long-standing issue with sandboxing. Moreover, it’s not just a bug for WriteRoom; Textastic had this issue as well, although they fixed it. The error messages in suggest the issue is misuse of NSFileCoordinator itemAtURL:willMoveToURL::

WriteRoom[627]: NSFileSandboxingRequestRelatedItemExtension: an error was received from pboxd instead of a token. Domain: NSPOSIXErrorDomain, code: 1
WriteRoom[627]: -[NSFileCoordinator itemAtURL:willMoveToURL:] could not get a sandbox extension. oldURL: file://localhost/Users/bdunagan/Desktop/test.markdown, newURL: file://localhost/Users/bdunagan/Desktop/test.txt
sandboxd[624]: ([627]) WriteRoom(627) deny file-write-create /Users/bdunagan/Desktop/test.txt

I tried a number of hacks to resolve the problem. I registered “.markdown” and WriteRoom with Launch Services. I poked around WriteRoom’s Info.plist. Nothing fixed it.

So, I bought Byword. That fixed it, in WriteRoom. Seriously. Not sure what Byword changed, as the Launch Services plist is the same, but it indicates the problem is extension registration, not API misuse. I can save Markdown files with either Byword or WriteRoom.

I am writing this in Byword, though.

Why I moved from Wordpress to Jekyll Six years at Retrospect
LinkedIn GitHub Email