2016-06-05 2 views
2

Когда я использую команду :find, за которой следуют первые буквы имени файла, а затем ударяю вкладку (чтобы получить автозаполнение), блокировки VIM, и я должен завершить работу и начать все заново.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 

Если я перейдите в каталог приложения и попробовать ту же команду, когда вкладку я ударил автодополнение работает отлично.

Я запускаю VIM на Windows. Я установил переменную пути в .,,** в файле _vimrc (set path=.,,**).

Ну, кто-нибудь имеет представление о том, что происходит? Благодарю.

ответ

2

AFAIK, :find использует расточительную глубину первой стратегии, которая делает его выкопать в каждого каталогов и каждый подкаталога перед переходом к следующему каталогу на тот же уровень.

Более ранние версии npm были известны с точки зрения потенциальной глубины структуры каталога node_module, поэтому очень вероятно, что ваш каталог node_modules действует как ловушка.

Так как вы, вероятно, не хотите редактировать что-нибудь в node_modules я предлагаю вам добавить его в свой wildignore вариант:

set wildignore+=*/node_modules/* 

Кроме того, ** в set path=.,,** подразумевает ,,, чтобы вы могли упростить это значение .,**.

Смежные вопросы