gpt4 book ai didi

windows-xp - 为什么 "Diff with Vim"命令不起作用?

转载 作者:行者123 更新时间:2023-12-03 21:02:25 24 4
gpt4 key购买 nike

我在 WinXP 上运行 gVim。

我打开一个文件夹,选择两个文件,然后单击“Diff with Vim”。截图:

Vimdiff issue

gVim GUI 启动,每个文件都在其自己的选项卡中。我注意到每个选项卡都处于 DIFF 模式。但是,两个选项卡之间没有进行比较。这两个文件完全不同,但没有突出显示,什么也没有 - 只是左侧的一条灰线,我将其解释为“DIFF”模式:

Result of diff

这是怎么回事?我的 vimdiff 没有工作还是其他原因?


我的解决方案

早些时候,当我需要 Open files in multiple tabs using the Windows Context Menu ,我听从了海报的建议,并将以下行添加到我的 .vimrc 文件中::autocmd BufReadPost * tab ball

虽然这允许我在单个 Vim 窗口中的不同选项卡中打开两个文件,但如果我愿意,我将无法区分这两个文件。打开这两个功能的解决方案是仅在我不想diff这两个文件的情况下启用上面的autocmd,这发生在&diff ==0。因此,当我将 .vimrc 文件中的代码修改为以下内容时,我重新获得了 Diff with Vim 功能:

if (&diff==0)
:autocmd BufReadPost * tab ball
endif

我还将此解决方案添加到 Vim Wikia link 的评论部分如上所述。

最佳答案

这充其量只是一个提示,因为我不运行 Windows,甚至不在 Linux 下使用 gvim。如果将选项 -p 提供给 vimdiff,它将在单独的选项卡中打开其参数。由于差异仅在同一选项卡中跨窗口进行,因此这有效地禁用了差异。 -p 仍然可用,因为 vimdiff 只是调用 vim -d ...-p 告诉 vim 将每个参数放在单独的选项卡中;在正常调用 vim 时非常有用。因此,您可能以某种方式将 vim 配置为始终执行此操作。

我会检查 Diff with Vim 选项实际上做了什么,并跟踪它以查看调用链中的批处理文件(或现在它们所称的任何东西......)是否正在添加正常调用 vim 的 -p 选项。 IIRC 您可以从 Windows 资源管理器执行此操作;我认为“查看”菜单中有一个选项可以显示所有文件类型。您可以查看和编辑配置为“打开”这些文件类型的应用程序。

关于windows-xp - 为什么 "Diff with Vim"命令不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5558112/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com