David Dyer-Bennet wrote on Tue, Dec 07, 2010 at 08:44:28 -0600: > On Tue, December 7, 2010 04:18, Julian Foad wrote: > > On Tue, 2010-12-07, Daniel Shahaf wrote: > >> I suppose setting VISUAL="\"/path with spaces/to/editor/binary\"" is the > >> easiest solution --- it requires no code changes so it will work with > >> any svn binary out there. > > > > Yes, I think that's the best solution. > > That's an interesting idea. > > Unfortunately, it doesn't seem to work. (Example from Centos 5.5 again): >
The following syntaxes work for me: % SVN_EDITOR="'$HOME/pre fix/bin/vim' +%d" $svn mkdir file:///tmp/svn/r1/foo3 % $svn mkdir file:///tmp/svn/r1/foo3 --editor-cmd "'$HOME/pre fix/bin/vim' +%d" (the +%d is there both to prove to myself that it's not simply falling back to my default editor --- which is also vim --- and to show that passing argv[1] to the editor works) > sh-3.2$ export VISUAL='"/home/path with spaces/bin/emacs"' > sh-3.2$ echo $VISUAL > "/home/path with spaces/bin/emacs" > sh-3.2$ ls -l "/home/path with spaces/bin" > total 8 > -rwxr-xr-x 1 root root 192 Dec 7 08:40 emacs > sh-3.2$ svn commit > basename: extra operand `spaces/bin/emacs' Why is basename(1) invoked here? ^^^ (That's almost certainly something in your configuration.) > Try `basename --help' for more information. > Can't find > svn: Commit failed (details follow): > svn: system('"/home/path with spaces/bin/emacs" svn-commit.tmp') returned 256 > And, in any case, VISUAL is a public interface, and I wonder how many > other applications would break if I put that kind of thing into > VISUAL. > Morale: don't use paths with spaces.