Есть ли способ выполнить команду cli при редактировании файла в NERDTree(vim)?

Я хотел бы сделать grep -r -l "index.php" в то время как внутри Vim. Я тоже использую плагин NERDTree. Я попробовал команду :! но после этого говорится

Нажмите клавишу ВВОД или введите команду, чтобы продолжить

Я пытаюсь ввести команду, и она немедленно возвращается к vim.

2 ответа

Решение

Чтобы запустить внешнюю команду, вы можете поставить перед ней префикс :!

В твоем случае,

:!grep -r -l "index.php"

т.е. вы должны набрать команду (ы) после :! пока ты в самой vim.

С помощью vimgrep, ты можешь сделать

:vimgrep /\cindex\.php/ **

Проверьте примеры, приведенные в vim-tips-working-working-external-команды

но после этого он заявляет "Нажмите клавишу ВВОД или введите команду для продолжения"

Это ожидаемый результат. Для команды grep вы можете увидеть результаты в верхней части этой строки.

Сделать заказ vimgrep, Silver Searcher и т.д. для лучшего рабочего процесса. Некоторые ссылки, чтобы ознакомиться с ними

Быстрее Grepping в Vim
Поиск нескольких файлов с помощью:vimgrep

Без плагинов:

:vimgrep \cindex.php **

(\c сил ignorecase; ** это "все файлы в этом каталоге и ниже")

С ack и Ack.vim:

:Ack -i index.php

С the_silver_searcher и Ag.vim:

:Ag -i index.php

Вы также можете добавить интеграцию NERDTree, используя NERDTree-Ack и NERDTree-Ag.

Другие вопросы по тегам