An open letter to Second Gear about not imposing windows newlines

Thanks for a great product - I am enjoying being able to work on the move.

However, I strongly dislike the design decision to append CRLF to every line without my explicit approval. You might think that this is the path of least resistance for keeping Windows users happy, but it causes big problems.

My blog (http://agilesysadmin.net) is published to using git. I write my copy locally in markdown (either on my mac or with my iPad), and when I’m happy (thanks for the excellent markdown preview) I push my changes to my git server. A post commit hook copies the text to the blog, and the copy goes live.

That’s great…. apart from the fact that my blog (Nesta, an excellent Ruby CMS) barfs its guts out because unbeknown to me, a text editor has unilaterally decided to impose non-standard line endings. I say unilaterally, because if I work on a file initially on my mac, and then on my iPad, every time Elements syncs, it replaces standard UNIX line ends with CRLF.

This is causing me a big headache. Firstly I didn’t really want to waste time over the weekend working out why the hell Sinatra was throwing exceptions when all I’d done was correct a typo in my blog post. Secondly, I’m going to have to write extra code to check for CRLF endings, and patch Nesta, or hack together a pre-commit hook that undoes the damage. Not really the impact I want from a ‘productivity’ application, is it?

I’m not saying you shouldn’t attempt to address Windows compatibility issues. What I am saying is that you should not impose a non-standard on the rest of the world to satisfy one group of users. I appreciate that extra options clutter user interface, but I don’t think one option ‘I am using a windows-only text-editor that doesn’t understand the universally accepted standard for line endings, please append CRLF to my file to work around this idiotic design flaw’ would be a problem.

I look forward to seeing this option (named exactly as above) in the next release!