Windows Vim 符号链接配置文件持续错误

Windows Vim 符号链接配置文件持续错误

我正在尝试配置本机 Windows Vim/gVim 和 Cygwin Vim/gVim,使它们可以很好地协同运行。为此,我创建了符号链接~/.vimrcC:\Users\<myusername>\_vimrc,它们都指向一个vimrc包含我实际共享 Vim 配置的公共文件。(我对另一个由我的提供的配置文件做了类似的技巧vimrc。)(请注意,$HOMEC:\Users\<myusername>,因此上述链接位于同一目录中;我只是想强调一个由 Cygwin 使用,而另一个由 Windows 本机 Vim 使用。)该.vimrc文件是ln -s在 Cygwin 中使用创建的,而该_vimrc文件是使用mklinkWindows 命令创建的。

在我移动链接指向的实际文件的位置之前,这一直很正常vimrc。我忠实地更正了 Cygwin 和 Windows 符号链接;现在 Cygwin gVim 可以正确找到 rc 文件,但 Windows 给出了以下错误:

首先,会弹出一个命令提示符窗口,显示以下消息:

C:\windows\system32\cmd.exe /c <symlink> ■p
The system cannot find the file specified.
shell returned 1
Hit any key to close this window...

当我按下一个键时,该窗口关闭,并出现一个小型 gVim 弹出窗口,其中包含以下消息,我认为这是导致问题的 Vim 命令:

:!<symlink><ff><fe>p

当我关闭此窗口时,gVim 正确启动,使用我的 vimrc 文件中的正确设置最后一部分让我有些困惑,因为我认为这意味着_vimrc符号链接实际上配置正确——但如果是这样的话,为什么我仍然收到错误?

现在,有一些注意事项:

  • 当我第一次移动vimrc文件时,我对 Windows 符号链接的“更正”是使其指向 Cygwin 符号链接。显示的错误消息相同,但当 gVim 最终启动时,它确实不是从文件加载配置vimrc
  • 我尝试完全删除 Windows 符号链接;我还尝试卸载并重新安装原生 gVim。这些都无法改变行为。
  • 我看到还有其他几个关于使用类似设置的问题,但我没有看到任何描述与我的问题非常相似的问题。

答案1

好吧,这是我见过的最愚蠢的修复方法。从命令行启动 gVim 并手动指定-u C:\Users\<myusername>\_vimrc不仅可以防止错误消息弹出,而且显然还修复了我的设置,因此无论我如何启动 Vim,我都不会再看到问题中描述的错误消息。

答案2

这是一个旧帖子,但发布以防万一有帮助:

可能与上面被否决的帖子有关,我在 Windows 10 中遇到了类似的问题,通过确保 Windows%HOME%环境变量指向包含_vimrc文件的文件夹解决了该问题。

我在这里记录了我的尝试、艰辛以及解决方案:https://vi.stackexchange.com/questions/20076/windows-context-menu-open-with-vim-symlink-error/20098#20098

现在可以从 cmd shell 或通过 ExplorerEdit with Vim上下文菜单启动 gvim.exe。

答案3

我以前也遇到过同样的问题。使用快速环境编辑器我发现在 Windows 环境下HOME设置了一个变量:c:/cygwin/home/%user%

在此处输入图片描述

从 Windows 环境中删除此变量后,gvim 运行时不再出现问题。

相关内容