5

我正在使用 Subversion 在 OSX 上签入文件。我将EDITOR变量配置为 MacVim

我的.profile包括:

export EDITOR=/Applications/MacVim/mvim

当我使用-m选项 ( svn ci somefile) 签入时,MacVim 会启动,但 Subversion 会立即显示:

Log message unchanged or not specified
(a)bort, (c)ontinue, (e)dit:

在我有机会在 MacVim 中保存我的日志消息之前,它会显示此信息。

有没有办法让 SVN 使用 MacVim 作为日志消息编辑器?

4

4 回答 4

11

您需要使用-f标志运行 mvim 以使其保持在前台。默认情况下,它分叉并将控制权返回给终端,这使得颠覆认为它已经完成。

于 2010-04-02T20:42:13.387 回答
4

苹果终端:

export EDITOR='mvim -f -c "au VimLeave * !open -a Terminal"'

或者对于 iTerm 或 iTerm2:

export EDITOR='mvim -f -c "au VimLeave * !open -a iTerm"'

来自“常见问题 - macvim - GitHub:如何使用 MacVim 编辑 Git 提交消息?”。我已经确认它也适用于 Subversion。

于 2011-01-08T22:13:30.123 回答
0

open --help

-W, --wait-apps 阻塞,直到使用的应用程序关闭(即使它们已经在运行)。

export EDITOR="open --wait -a /Applications/MacVim/mvim"

如果上述方法不起作用,您可能需要将其放入 shell 脚本并使用 $EDITOR 来指向该脚本。[编辑:不起作用,请参阅下面的评论。]

于 2010-04-02T20:03:10.130 回答
0

我使用 textmate 作为我的 svn 编辑器,我遇到了同样的问题。但我的解决方案是设置 textmate 等到文件关闭。

我在我的 .bash_profile 中添加了这个

export SVN_EDITOR="mate -w"

-w 等待

于 2011-10-29T00:42:56.733 回答