当我使用:find
命令后跟文件名的第一个字母然后点击tab(以获得自动完成)时,VIM会锁定,我必须关闭并重新开始。
例如,我写
:find nam
然后我点击标签。 VIM写完三个点后:
:find nam...
然后停止工作。下去。当我在我正在处理的项目的根目录上时会发生这种情况。该目录包含以下子文件夹:
.git/
.idea/
.sass-cache/
.tmp/
app/
node_modules/
phone/
test/
这些文件:
.bowerrc
.gitattributes
.gitignore
.jshintrc
Gruntfile.js
Readme.md
bower.json
karma.conf.js
npm-debug.log
package.json
todo.txt
如果我cd到app目录并尝试相同的命令,当我点击tab时,自动完成功能完美无缺。
我在Windows上运行VIM。我在_vimrc文件(.,,**
)上将路径变量设置为set path=.,,**
。
嗯,有没有人知道发生了什么?感谢。
答案 0 :(得分:2)
AFAIK,:find
使用浪费的深度优先策略,使其深入每个目录和每个子目录,然后转到下一个目录相同的水平。
早期版本的npm因node_module
目录结构的潜在深度而臭名昭着,所以你的node_modules
目录很可能在这里充当陷阱。
由于您可能不想在node_modules
中修改任何内容,我建议您将其添加到wildignore
选项中:
set wildignore+=*/node_modules/*
此外,**
中的set path=.,,**
隐含,,
,因此您可以将该值简化为.,**
。