GitHub link: https://github.com/sebpearce/firewood

Update for April 2015: I’ve rewritten Firewood in Python, and it’s called Pyrewood. It has more functionality and outputs Windows-friendly filenames. See the GitHub link.

The best feature of the Kindle is its ability to clip sections of text and append them to a text file called My Clippings.txt. The fact that Amazon decided to use plain text as a storage method is great because it makes it easy to work with.

If you’re like me, you hate the idea of losing track of good ideas you come across while reading, but don’t want to have to write them down every time. The solution is to clip anything you want to remember.

What I do is clip only the parts of a book that I think are worth remembering. Then, a few weeks later, I come back and read my abridged version without all the chaff. I got this idea from Robert Greene’s index card technique as modified by Ryan Holiday. If you set recurring calendar reminders to review your notes periodically and then actually do it, you can avoid forgetting the good stuff.

The problem is, it’s hard to make this abridged version because the Kindle just appends your clippings one after the other in the order you clipped them. So if you read more than one book at the same time, it becomes difficult to find the info you want by scrolling through it. One solution is to use Clippings.io, which saves your clippings and lets you view them by title, but it doesn’t allow you to generate plain text files, which is what I wanted (Edit: now it does, but only one at a time — Firewood does the whole lot at once). Why are text files better? Because of the Spotlight function on Mac OS X, which lets me instantly find a passage I’m looking for in any book I’ve read.

Anyway, I wrote a program in C that will parse your My Clippings.txt file and generate an organised list of text files, one per book. It strips away all the unnecessary info about the date, location, etc. so you can just read it straight through.

It’s a command-line application so you’ll need to be familiar with the terminal if you use a Mac or Linux (Edit: I’ve made a Mac desktop app version that you can just double-click to run — download it here). No Windows support yet.

See the README for details on how to use it.

If you find it useful or have feature requests, let me know.