Sunday, May 4, 2003

Fun With vc-svn.el

so i've been playing with emacs this weekend (which somehow feels like going over to the dark side, since i'm normally a vi person), and i must say that the Subversion VC module is pretty cool. it definately has drawbacks, since the VC interface dates from the days of RCS and SCCS, so it doesn't deal well with a revision control system where one almost always wants to commit a few different files all at once, but other than that it's very nice. you can do many of the day to day things one wants while writing code with a version control system (view diffs, read log entries, etc), all from within emacs.

there are still a number of missing features, but even with my minimal emacs lisp knowledge, i was able to find some low hanging fruit. we now have an implementation of vc-svn-find-version and vc-svn-mode-line-string, which means you can grab some other version of the file you're editing in another buffer (via 'svn cat') and see a little more information in the modeline for a file that's under svn's control (specifically you can tell if it's added but hasn't been checked in or if it's been locally modified).