2016-05-26 1 views
4

Я пытаюсь получить gf работать с путями, которые выглядят следующим образом:Vim: Невозможно установить «путь» правильно сделать «гс» работа

foo/bar.js 

Файл находится здесь: /Users/dimal/dev/project/src/foo/bar.js

Так что я установил мой path так:

set path+=/Users/dimal/dev/project/src 

похоже, gf должен найти файл, но он не делает.

E447: Can't find file "foo/bar.js" in path 

Почему?

Я пробовал другие варианты:

/Users/dimal/dev/project/src/** 
/Users/dimal/dev/project/src/**/* 
+0

Дайте/** 3 в конце. Это означает, что из src он переместит три подкаталога в глубину и выполнит поиск. Дайте мне знать, если это не сработает – SibiCoder

+1

Спасибо за помощь. К сожалению, это не сработало для меня. Просто чтобы прояснить, путь должен быть таким? '/ Пользователи/dimal/dev/project/src/**/3' – mrdanimal

+1

Извините, я дал неверный путь. Я на самом деле использую это: '/ Users/dimal/dev/project/src/** 3' – mrdanimal

ответ

1

гс команд поиска файлов в пути включают в себя через :set path.

set path команда принимает подстановочные знаки, такие как *. (* Означает любой символ) Итак, если вы хотите, чтобы включить все файлы в подкаталогах каталога, вы можете дать

 :set path+=directory/** 

Для глубины трех уровней в директории, то есть, чтобы включить файлы в любом подкаталоге в подкаталоге подкаталог текущего каталога, вы можете указать, как directory/**3

Максимальная разрешенная глубина составляет 100

команда как

 :set path+=/Users/dimal/dev/project/src/**3 

позволит вам искать файл с именем bar.js в src/subdirectory/subdirectory/subdirectory, а не только в src/.

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