"~/Desktop/project/file.txt" [readonly] 81L, 2480C
Error detected while processing command line:
E344: Can't find directory "src/" in cdpath
E472: Command failed
Press ENTER or type command to continue
^ 打开每个文件之前都会弹出此错误。我不知道错误来自哪里,因为它显示... while processing command line:
,然后就空白了……
我用来调用它的命令是git difftool
另外,我调用此函数时所在的目录是~/Desktop/project/src
,我假设它从这里获取Can't find directory "src/"
。
答案1
我在使用 git difftool 时遇到了类似的问题。请检查你的.vimrc
或 插件lcd %:p:h
。我通过在调用 时添加以下内容解决了该问题lcd %:p:h
:
if !&diff
lcd %:p:h
endif
答案2
看起来 Git 是vimdiff
从~/Desktop/project
目录调用的,并且传递文件作为src/...
这样的相对路径,Vim 将查阅设置'cdpath'
,并且其中的任何内容都没有src/
目录,因此发生错误(从命令行)。
对于 Git 来说,正确的方法是使用./src/...
或绝对路径,但这可能很难改变。相反,您可以通过CDPATH
环境变量影响 Vim 的默认值,或者直接输入:set cdpath=
您的~/.vimrc
来实际禁用这些查找。