我在 vim 中安装了一个名为 YouCompleteMe 的插件。当安装了此插件的 vim 启动时,如果 vim 版本低于最低要求,它会发出警告。
我正在使用 vim 7.3.754,它可以运行 YCM,但是当我执行诸如git merge
或 之类的命令时git commit --amend
,我会看到警告:
YouCompleteMe unavailable: requires Vim 7.3.584+
我的问题是:为什么 git 使用的 vim 版本与 zsh 不同,我怎样才能让它使用相同的版本?
答案1
根据man git-var
git 确定编辑器使用以下顺序:
优先顺序是 $GIT_EDITOR 环境变量,然后是 core.editor 配置,然后是 $VISUAL,然后是 $EDITOR,最后是 vi。
我猜你没有设置任何这些变量,所以 git 采取vi
-- 通常在vi 兼容模式(取决于您的分布)。
因此,请检查最新的 vim 位于何处:
which vim
然后将此可执行文件定义为默认的 git 编辑器:
git config --global core.editor /usr/bin/vim
或者,设置 也不错$VISUAL
。其他程序也使用此环境变量。为此,请包括
export VISUAL=/usr/bin/vim
在你的~/.zshrc
并做source ~/.zshrc
。
答案2
Git 使用 或$EDITOR
或$VISUAL
您在 中$GIT_EDITOR
指定的编辑器。core.editor
~/.gitconfig