In which I once again indulge my obscure command-line fetish.
I often spend hours of my day cycling through:
- Edit code and its unit tests
- Save my changes
- Push a button or change window focus to explicitly re-run the code's unit tests.
Oh frabjous day, the grinding manual labour of the last of these three
steps can now be banished forever, courtesy of
rerun, a command line
Python script that re-runs a given command whenever it detects changes
to any of the files in the current directory, or its subdirectories.
Update: It's Python 2.7, and works great on Windows XP, Macs and Ubuntu.
For example: I had previously bound f6 in Vim to 'run the current file's
unit tests. Now I've bound shift-f6 to
rerun the current file's
unit tests in a new console window. This pops up a new window showing
the test results. I then continue editing in Vim, and whenever I hit
save, the unit tests are re-run in the other window. All the while the
focus stays on my editor. It's really sweet!
Thanks for the original idea goes to to the bash command
watch, and an
old (now offline) blog post by Jeff Winkler.