Monday, January 31, 2011

Writing in plain text

So I've been working on shorter pieces lately, and using the simplest of tools: text files. And there are some advantages to that, especially when your process involves lots of rewrites, as mine currently does.

That is to say, right now I'm doing a lot of my editing by starting a new file and retyping the whole piece over again, making changes along the way.

And with plain text files, I can:

- Write on any machine. Everybody has a text editor. And since I use DropBox, my files are available anywhere too.
- I can use my pal Emacs.
- I can grep for things. I'll
- I can use a diff tool to compare two files...even more easily that when I'm using XML.

So I'm implementing some comments from some friends, and I find that several comments reveal that I dropped a detail or two in a later version, something that made a later thing make sense. I've got drafts with suffixes like _v01.txt, _v02.txt. So, I can grep for a string and find every version that contained it...and get some context around the string, too.

Thus I can not only see when I stopped having the main character consider hanging up the phone, but also HOW I phrased that in each version. I can do that across twelve versions and without opening any of the files.

Sure, for some markets I'll have to drop the thing into an RTF file and format it. But I'm completely sidestepping formatting during the writing phase, and that's a good thing.


  1. Interesting! With plain text files you could also use version control software like Subversion. (It sounds like you're manually doing a lot of things that Subversion does for you.) Although that might not fit will with your practice of retyping every new version completely.

  2. Well, I'm using DropBox, which uses Subversion under the covers. I'm getting the backup aspect of version control, and I have a 30day backtrail if I want it.

    I guess you're referring to my manual version numbering...the thing is, my versions are not one-per-change but one-per-draft, mostly. I create a new file at a point that is significant to me.

    I keep notes on the meaning of each version. I could get more fine-grained control using SVN, but I'm not sure yet what I'd do with that. :)

    Suppose I was using would I approach the task of seeing every prior usage of a term? Wouldn't I have to check out each prior version (and in source control there would be many more versions) into a folder? Or is there some way to do that more easily?

    My manual system maintains fewer versions, but I have each version handy in a local folder...and all of those are automatically backed up.

  3. Hmm, I don't know how you could do the cross-version grepping with Subversion. You might indeed have to check out each version. Or every time you create a new version create a new branch. It might be more trouble than it's worth.

    Incidentally, you could still have one-per-draft versions. New versions of files are not created automatically, you have to explicitly commit them to the repository.

    DropBox -- neat!

  4. It's funny, when you said "the simplest of tools", I immediately thought of what I turn to when I want to strip distractions out of my writing:

    a pen and a pad of paper

    Okay, usually two or more pens, of different colors.

    (I have this neat revision tracking technology where I cross out a word and write in a new one over it, usually in a different color. Then I can compare the changes!)

    Seriously, I'm sure that I lose a lot of things that I write down on paper. But it does tend to help me focus.