5

NERDTree - мой лучший плагин для vim. Чтобы найти файл или каталог, я перемещаю курсор к древовидному представлению и использую / . Но я до сих пор не знаю, как найти элемент файла в свернутом (закрытом) дереве. NERDTree не поддерживает это? Как вы находите файл?

2 ответа2

5

Имя файла отсутствует в буфере NERDTree, поэтому /pattern не будет работать. Вам придется использовать другие инструменты, чтобы достичь своей цели.

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

:find filename
:find fil<Tab>
:find pattern

Смотрите :help path о том, как добавить каталоги.

Вы также можете сделать :e /path/to/directory<Tab> .

Используя ** вы также можете заставить Vim просматривать подкаталоги:

:e /path/**/user<Tab>

позволит вам выбрать из списка всех файлов, начиная с user . Это довольно опрятно.

Если рабочий каталог Vim является каталогом текущего буфера (это не автоматически, смотрите :help autochdir), что-то вроде

:e ../../**/*.json

принесет список всех файлов JSON в вашем проекте. Ну, я не знаю, как устроен ваш проект, но вы поняли.

Смотрите подробности в :help file-searching .


Кроме того, вы можете использовать плагин. CtrlP - это хороший и мощный "нечеткий" плагин для навигации по файлам, который делает одну вещь, которую я считаю очень полезной: при вызове он просматривает вверх и вверх, пока не найдет "маркер" VCS (например, каталог .git) и использует это отправная точка для вашего поиска. Это делает открытие файлов в текущем проекте практически "веселым".

0

Вы можете использовать GPicker в качестве альтернативы CtrlP или CommandT (клон функции Textmate) - он написан на C и очень быстр, он хорошо интегрируется с VIM или emacs. Инструкция по установке на моем блоге.

http://blog.wysocki.org.pl/2012/06/vim-gpicker-sublimetext-2-like-files.html

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .