# HG changeset patch # User Tomas Zeman # Date 1387401395 -3600 # Node ID 7b691c3bba6cd1a194d52ba283949d90f75f8174 # Parent 1fc1aab8014b9af4d789e7d85f95fcb20679e2bf svn: open diff in second buffer diff -r 1fc1aab8014b -r 7b691c3bba6c scripts/svn --- a/scripts/svn Wed Dec 18 09:20:53 2013 +0100 +++ b/scripts/svn Wed Dec 18 22:16:35 2013 +0100 @@ -8,7 +8,7 @@ if [ "$1" = "commit" -o "$1" = "ci" ]; then shift # pop off $1 for diff - TEMPLATE=`mktemp svn-ci.XXXXXXX` + TEMPLATE=`mktemp --tmpdir svn-ci.XXXXXXX` $REALSVN diff "$@" > "$TEMPLATE" $REALSVN $ARGS --editor-cmd="$HOME/bin/svn-diff-editor '$TEMPLATE'" else diff -r 1fc1aab8014b -r 7b691c3bba6c scripts/svn-diff-editor --- a/scripts/svn-diff-editor Wed Dec 18 09:20:53 2013 +0100 +++ b/scripts/svn-diff-editor Wed Dec 18 22:16:35 2013 +0100 @@ -1,6 +1,27 @@ #!/bin/sh -echo >> "$2" -cat "$1" >> "$2" -rm "$1" -$EDITOR "$2" +case "${EDITOR}" in + "") + EDITOR="vi" + ;; + emacs) + EDITOR="$EDITOR -nw" + ;; + gvim|vim) + EDITOR="$EDITOR -f -o" + ;; +esac + +SVNTMP="$1" +cleanup_exit() { + rm -rf "$SVNTMP" +} + +# Remove temporary files even if we get interrupted +trap "cleanup_exit" 0 # normal exit +trap "exit 255" HUP INT QUIT ABRT TERM + +#echo >> "$2" +#cat "$1" >> "$2" +#rm "$1" +$EDITOR "$2" "$1"