我在 WinXP 上运行 gVim。
我打开一个文件夹,选择两个文件,然后单击“Diff with Vim”。截屏:
gVim GUI 启动,每个文件都在其自己的选项卡中。我注意到每个选项卡都处于 DIFF 模式。但是,没有在两个选项卡之间进行比较。这两个文件完全不同,但没有突出显示,什么都没有——只有左边的一条灰线,我将其解释为“DIFF”模式:
到底是怎么回事?我的vimdiff不工作还是其他原因?
我的解决方案
早些时候,当我需要使用 Windows 上下文菜单在多个选项卡中打开文件时,我遵循了海报的建议,并将以下行添加到我的.vimrc文件中::autocmd BufReadPost * tab ball
虽然这允许我在一个 Vim 窗口的不同选项卡中打开两个文件,但如果我愿意的话,我失去了区分这两个文件的能力。打开这两个功能的解决方案是autocmd
仅在我不想区分这两个文件的情况下启用上述功能,这种情况发生在&diff==0
. 因此,当我将.vimrc文件中的代码修改为以下代码时,我重新获得了具有 Vim功能的Diff :
if (&diff==0)
:autocmd BufReadPost * tab ball
endif
我还在上面提到的Vim Wikia 链接的评论部分添加了这个解决方案。