为什么不&“与Vim融为一体”指挥工作?

我在WinXP上运行gVim。 我打开一个文件夹,选择两个文件,然后单击“Diff with Vim”。截图: gVim GUI启动,每个文件都在自己的选项卡中。我注意到每个选项卡都处于DIFF模式。但是,两个标签之间没有进行比较。两个文件完全不同,但没有突出显示,没有 - 只是左边的灰线,我将其解释为'DIFF'模式: 到底是怎么回事?我的vimdiff不工作还是别的什么? 我的解决方案 之前,当我需要使用Windows上下文菜单打开多个选项卡中的文件时,我按照海报的建议并将以下行添加到我的.vimrc文件中:
:autocmd BufReadPost * tab ball
虽然这允许我在单个Vim窗口中的单独选项卡中打开两个文件,但如果我愿意,我将无法区分这两个文件。打开这两个功能的解决方案是仅在我不想对两个文件进行区分的情况下启用上面的
autocmd
,这发生在
&diff==0
时。因此,当我将.vimrc文件中的代码修改为以下内容时,我重新获得了我的Diff with Vim功能:
if (&diff==0)
    :autocmd BufReadPost * tab ball
endif
我还将此解决方案添加到上面提到的Vim Wikia链接的评论部分。     
已邀请:
这充其量只是一个提示,因为我不运行Windows甚至在linux下使用
gvim
。如果将选项
-p
提供给
vimdiff
,它将在单独的选项卡中打开其参数。由于仅在相同选项卡中的窗口之间进行差异,因此这有效地禁用了差异。
-p
仍然可用,因为
vimdiff
只是叫
vim -d ...
-p
告诉vim将每个参数放在一个单独的选项卡中;通常调用vim时它非常有用。所以可能是你以某种方式让vim配置为始终这样做。 我会查看
Diff with Vim
选项实际上做了什么并追踪它以查看调用链中的批处理文件(或者他们现在称之为的任何内容......)是否正在为你的vim正常调用添加
-p
选项。 IIRC你可以从Windows资源管理器中执行此操作;我认为View菜单中有一个选项可以显示所有文件类型。您可以查看和编辑配置为“打开”这些文件类型的应用程序。     
如果我没错,gvim在它的股票_vimrc(
:e +/Diff $MYVIMRC
)中定义了一个自定义的VimDiff()函数 您可能想要检查它是否有效
 :call VimDiff()
您需要检查实际的功能名称和参数(如果有的话),因为我没有方便的Windows机器at.m.     

要回复问题请先登录注册