Vim E194:没有替代文件名来代替'#';
我使用的是ctrlp.vim插件,它本质上是一个文件查找器。我遵循了此处提到的安装步骤: (使用git) 我的插件工作正常,正如预期的那样,但在启动vim时,我遇到以下错误:Vim E194:没有替代文件名来代替'#';,vim,ctrlp,Vim,Ctrlp,我使用的是ctrlp.vim插件,它本质上是一个文件查找器。我遵循了此处提到的安装步骤: (使用git) 我的插件工作正常,正如预期的那样,但在启动vim时,我遇到以下错误: Error detected while processing FuncUndefined Auto commands for "*": E194: No alternate file name to substitute for '#': runtime autoload/ctrlp#utils#cachedir.vim
Error detected while processing FuncUndefined Auto commands for "*":
E194: No alternate file name to substitute for '#': runtime autoload/ctrlp#utils#cachedir.vim
Press ENTER or type command to continue
从我的vimrc中删除set runtimepath^=~/.vim/bundle/ctrlp.vim
时,错误会消失,但很明显,即使是我的插件也会停止工作,这是不需要的
请帮忙 该命令的格式错误:而不是
runtime autoload/ctrlp#utils#cachedir.vim
应该是
runtime autoload/ctrlp/utils/cachedir.vim
调用自动加载函数时使用#
分隔符,但是:runtime
需要带有路径分隔符的路径。在那里,诸如#
和%
等特殊标识符有效,这会导致错误
若要解决此问题,请找出发出此错误命令的位置
:verbose autocmd FuncUndefined
这是一个很好的开始。我在尝试将[无名称]缓冲区写入包含
\include
的文件名时,遇到了与Windows版本的GVim 8.1相同的错误。在文件名中的每个\
之前放置一个\
,可以解决这个问题
我原以为这会与使用反斜杠分隔文件路径中文件夹的Windows惯例相冲突,但事实并非如此。为什么
首先设置runtimepath^=~/.vim/bundle/ctrlp.vim
?遵循安装步骤。在这里查看:非常感谢。我找到了罪犯。我有-autocmd FuncUndefined*exe“运行时自动加载/”。展开(“”)。”。在我的vimrc中设置vim。我想我很久以前为其他插件做了这些,我不再使用这些插件了。评论它解决了我的问题。:)