I am trying to shell to get 'svn log %'. In order to get this into a different buffer, it seems the best way is to call:
:new | set buftype=nowrite | r !svn log #
r puts output from the shell command into the buffer created from
# references the filename of the previous buffer. The problem I have is that my default shell is DOS and my svn is cygwin. I get
svn: E155010: The node '/e/code/branch\project\myproject\main.cpp' was not found.
So it seems the shell is passing the DOS path and svn is interpreting it to the base path
/e/code/branch but then appends the rest of the path using
\ -- which confuses itself.
I've also tried:
silent exec "r !bash -c \"svn log `cygpath -u \'" . file . "\'`\""
But I get an attempt to authenticate the user. Which is odd, because when I run the same command from the 'Start' menu or a command shell, I don't have to login.
How do I get svn to behave? Does anyone have a good plugin for vim for svn?