如何知道vim中是否有来自Git的vim调用

时间:2013-08-20 06:09:31

标签: git vim

的.gitconfig

    [core]
    editor = /usr/bin/vim

的.vimrc

autocmd VimEnter * NERDTree ./

我不想在git commit中调用它。

我想要这个

    if !gitcommit
      autocmd VimEnter * NERDTree ./
    endif

2 个答案:

答案 0 :(得分:2)

一种选择是在-u <path>命令中包含vim选项,该命令指定要加载的备用.vimrc文件。然后,您可以专门为.vimrc设置git commit

或者,您可以使用--cmd <command>选项来vim命令,该命令会在加载常规.vimrc之前执行vim命令 - 这样您就可以让该命令设置一个变量,.vimrc将在运行autocmd之前检查该变量。

答案 1 :(得分:2)

这段代码应该让你朝着正确的方向前进:

augroup IsNotGitCommit
  autocmd!
  autocmd VimEnter * NERDTree ./
augroup END

autocmd BufRead COMMIT_EDITMSG autocmd! IsNotGitCommit

NotGitCommit组包含适用于任何“常规”文件的通用autocmd

autocmd事件之前编辑提交邮件时会触发另一个VimEnter,并删除NotGitCommit组。