【问题标题】:Subversion with MacVim configured as the editor将 MacVim 配置为编辑器的 Subversion
【发布时间】:2011-10-29 08:42:56
【问题描述】:

我正在使用 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 作为日志消息编辑器?

【问题讨论】:

    标签: svn macvim


    【解决方案1】:

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

    【讨论】:

      【解决方案2】:

      苹果终端:

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

      或者对于 iTerm 或 iTerm2:

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

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

      【讨论】:

        【解决方案3】:

        open --help:

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

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

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

        【讨论】:

        • open 适用于 MacVim.app 应用程序包。 mvim 是命令行工具,需要上面描述的-f 标志。
        【解决方案4】:

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

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

        export SVN_EDITOR="mate -w"
        

        -w 等待

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2012-09-23
          • 2019-01-30
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多