为 extdiff 目录配置 Mercurial 与 Windows 上的 vim 比较

我在 Windows XP 上从命令行运行 Mercurial。 我有 extdiff 插件。 我想要

hg vimdiff

使用 Vim 是 DirDiff 命令。 我已经尝试放置

cmd.vimdiff = gvim
opts.vimdiff = -f '+next' '+execute "DirDiff" argv(0) argv(1)'

在我的 Mercurial.ini 中。 如果我在 gvim 以文件名“+next”打开之后执行 hg vimdiff。 我认为问题与估计以及特定于 Windows 的路径名有关。 我尝试了许多反斜杠排列以及单引号和双引号(并非完全随机)但没有任何运气。

与此同时,我通过制作一个单独的脚本来调用 gvim 解决了我的问题,即

[extdiff]
cmd.vimdiff = c:\python25\python.exe
opts.vimdiff = c:\test\gvimdiff.py

和 gvimdiff.py 是

import sys
import os

os.system('gvim -c "DirDiff %s %s"' % (sys.argv[1],sys.argv[2]))

但是,如果有人认出了使其直接从命令行工作的秘密咒语,请告诉我,我可能会尝试更新文档。

1
2022-06-07 15:15:42
资源 分享
答案: 1

当调用带有 f - args 的函数以及 args 是以 'bkslsh' 结尾的字符串时,问题是由 vim 的一种错误引起的。 该服务是删除每个 arg 的路由“bkslsh”。

我在这里有一个更小的服务:

将 vimdiff 与 mercurial 一起使用

2
2022-06-08 06:06:39
资源