Какой самый быстрый способ найти и открыть файл с помощью MacVim? NERDtree - отличный плагин, но мне по-прежнему приходится перемещаться (иногда очень глубокие) деревья каталогов, чтобы добраться до файла, к которому я хочу добраться. Есть ли какая-либо функциональность, которая позволяет мне искать подстроку имени файла и показывать мне набор результатов, на который я могу щелкнуть?
Есть ли быстрый способ с плагином macvim/NERDtree для поиска файла?
Ответ 1
Так как мы все перечисляем альтернативы здесь, Command-T - это еще один плагин с фьюзи-фейдером, который пытается имитировать функцию поиска textmate.
Документы можно найти здесь.
Ответ 2
Вы также должны проверить встроенную команду :find
.
Сначала вам нужно определить, какие каталоги искать. Если вы хотите рекурсивно добавить подкаталоги /path/to/project в свой путь поиска, используйте:
:set path=/path/to/project/**
Затем вы можете открыть, например. /path/to/project/then/some/random/subdirectory/filename.ext, выпустив:
:find filename.ext
Чтобы открыть результат поиска на новой вкладке или разделенном экране, попробуйте :tabfind
или :sfind
.
Edit
Я только заметил, что вы ищете нечеткое соответствие файлов, и в этом случае я не верю, что :find
соответствует задаче. Возможно, вас интересует функция :find
, определенная в этом vimtip.
Ответ 3
Я использую fuzzyfinder.vim почти два года и очень люблю его.
Он поддерживает поиск файла нечетким способом, например, чтобы найти файл foobar.rb, вы можете просто ввести 'fb', чтобы получить соответствие foobar.rb, для навигации по файлам вы можете добавить "**/" перед имя файла, чтобы найти файл на любом уровне. Он предоставляет больше режимов для поиска dir, недавнего открытого файла, недавней команды vim, тэгов и т.д., Но вы даже можете определить свой собственный режим.
Если вам нравится способ TextMate, вы можете прочитать этот пост для получения более подробной информации.
Ответ 4
Я использовал fuzzyfinder в течение длительного времени, прежде чем найти ctrp (https://github.com/kien/ctrlp.vim) Вы можете создать команду пользовательского поиска, которая работает в linux и окне. Есть несколько возможных настроек ctrlp - Пропустить типы файлов или каталог - Игнорировать файлы систем управления версиями (например:.git, hg,..) - Используйте внешнюю команду для создания списка файлов (например: команда "найти" в Linux) - Кэш файл ...
Это не связано с плагином NERDtree, о котором вы говорили, но я думаю, вы должны взглянуть...
Ответ 5
По тем же линиям, что и fuzzyfinder, PeepOpen. Я использую его в течение нескольких месяцев и предпочитаю теперь использовать fuzzyfinder. Он строго мак и требует Snow Leopard.
Ответ 6
Я добавил следующий плагин Nerdtree, который интегрирует grep как один из параметров в меню Nerdtree:
https://gist.github.com/masaakif/414375
Кажется, что он работает очень хорошо, это эквивалентно "grep -r", и вы даже можете выбрать результат и отредактировать показанный файл.