Index: /issm/trunk/scripts/svnvimdiff
===================================================================
--- /issm/trunk/scripts/svnvimdiff	(revision 5824)
+++ /issm/trunk/scripts/svnvimdiff	(revision 5825)
@@ -1,19 +1,40 @@
 #!/bin/bash
-#
-# Copyright (C) 2007,
-#   Geoff Buchan	<geoffrey.buchan@gmail.com>
-# Based on the script cvsvimdiff, written by
-#   Stefano Zacchiroli	<zack@cs.unibo.it>
-#   Enrico Tassi	<tassi@cs.unibo.it>
-#
-# This is free software, you can redistribute it and/or modify it under the
-# terms of the GNU General Public License version 2 as published by the Free
-# Software Foundation.
-#
 
-mv $1 $1.yourfile
-svn update $1
-mv $1 $1.currentsvnfile
-vimdiff $1.currentsvnfile $1.yourfile
-mv $1.yourfile $1
-rm $1.currentsvnfile
+#get files to check
+if [ $# -eq 0 ]
+then
+	echo "no file specified"
+	return
+fi
+
+#first, check that all files exist
+for FILE in $*
+do
+	if [ ! -f "$FILE" ]
+	then
+		echo "File $FILE not found!" >&2   # Error message to stderr.
+		exit 1
+	fi 
+done
+
+#svn diff all files
+for FILE in $*
+do
+
+	FILENAME=$(basename $FILE);
+	EXT=${FILENAME/*./}
+	RELEASE=$(svn info $FILE | grep "Revision" | awk '{ print $2 }')
+
+	YOUFILE="YOUR_FILE"."$EXT"
+	SVNFILE="SVN_FILE"."$EXT"
+
+	mv $FILE $YOUFILE
+	svn update $FILE
+	mv $FILE $SVNFILE
+
+	vimdiff $YOUFILE $SVNFILE
+
+	svn update -r$RELEASE $FILE
+	mv $YOUFILE $FILE
+	rm $SVNFILE
+done
