使用 MacVim 做 svn diff

对于终端的 vim

  1. ~/.subversion/config

    [helpers] diff-cmd = /usr/local/bin/svndiff

 

  1. 将下面的代码保存为 svndiff:

    #!/bin/sh DIFF="/usr/bin/vimdiff" LEFT=${6} RIGHT=${7} $DIFF $LEFT $RIGHT
  2. 拷贝到 /usr/local/bin/svndiff 并设置权限:

    sudo chmod +a /usr/local/bin/svndiff

对于 MacVim

修改 /usr/local/bin/svndiff 内容如下:

#!/bin/bash LEFT=${6} RIGHT=${7} TMPLEFT="/tmp/${LEFT##*/}.$$" TMPRIGHT="/tmp/${RIGHT##*/}.$$" cp "$LEFT" "$TMPLEFT" cp "$RIGHT" "$TMPRIGHT" mvim --servername SVNDIFF --remote-tab-silent +"vertical diffsplit $TMPLEFT|wincmd w" "$TMPRIGHT" sleep 0.1 SN=`mvim --serverlist | grep "SVNDIFF"` until [ "$SN" == "SVNDIFF" ]; do sleep 0.1 SN=`mvim --serverlist | grep "SVNDIFF"` done rm -f "$TMPLEFT" "$TMPRIGHT"

之前尝试过修改终端方案中的

DIFF="/usr/bin/vimdiff"

为:

DIFF="gvim -d"

未遂,右侧的代码会为空。

See Also


Tags: MacVim, Vim, SVN

Published on 2012-10-31