vim - 在 Mercurial 中使用 VCSCommand Vim 插件时出现问题

标签 vim mercurial vcscommand

我刚刚安装了 VCSCommand,每当我尝试运行命令时,都会收到“没有合适的插件”错误。我在 Vim 中加载了一个文件,该文件位于包含 Mercurial 存储库的目录中。

我发现一些解释,如果您不在“工作目录”中,可能会显示“没有合适的插件”错误,我认为这意味着您正在编辑的文件应该位于“工作目录”中从存储库中 checkout 的文件数。问题可能是(作为 Hg 的新用户)我没有正确理解 Mercurial。我正在编辑的文件位于我创建 Hg 存储库的目录中,只是为了跟踪我的本地更改。我发出的命令是“hg init”,然后是“hg add”,从那以后我一直在愉快地使用“hg commit”、“hg log”和“hg diff”。该目录不是存储库的“工作目录”吗?假设这就是问题所在,我如何将 hg 存储库中的文件“ check out ”到工作目录中?

或者也许上面的问题根本不是“没有合适的插件”错误的问题。我确实在正确的插件目录中有 vcshg.vim 文件,因此该插件就在那里。

谢谢,感谢任何帮助。

更新:为了防止我对 Mercurial 的使用出现问题,我尝试创建我的主 Mercurial 存储库的“克隆”并在克隆中编辑文件。仍然得到相同的“没有合适的插件”。信息。

另外:我遗漏了我在 Windows 上运行的原始消息,并且我认为我已经将问题归结为字符串中转义码的不正确引用。一旦获得完整解决方案,将提供进一步的更新。

最佳答案

我确实让 VCSCommand 运行良好。我认为这个问题与 Mercurial 无关,而是与 VCSCommand 中引用 Windows 系统命令的问题有关。至少这是主要问题。

为了使 VCSCommand 正常工作,我首先确保变量 b:VCSCommandVCSType 设置为“HG”。由于某种原因它没有被设置,这就是为什么我收到“没有合适的插件”错误的原因。

其次,我必须修改 vcshg.vim 中的一行。 s:Executable() 函数由一行 'return 组成。 。 。 ' 功能。系统调用周围的 shellescape() 包装器引用不正确;我删除后它工作得很好。 (对于 Mercurial 以外的系统,vcsXX.vim 文件中也可能存在同样的问题,我没有检查过。)

我认为这个引用问题只存在于 Windows 上,并且可能是因为主要开发人员没有 Windows 机器来测试而突然出现的。 。 。 .

关于vim - 在 Mercurial 中使用 VCSCommand Vim 插件时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3771615/

相关文章:

Mercurial `hg clone` 但忽略所有子存储库?

Mercurial 设置 : One central repo or several?

mercurial - 如何在 Mercurial 中将文件从一个分支 check out 到另一个分支?

svn - VCSCommand 不断向我的所有提交添加一个额外的空行

Xcode 和 SPM 库

vim - 漏洞: activate Jade highlighting?

vim - 在Debian上的Vim:cterm = bold不起作用(在以PuTTy作为客户端的ssh上使用它)

vim - 如何更改 vim 状态行颜色?