В Linux я иногда вижу список всех строк, соответствующих термину, с помощью этой удобной команды:
:! grep -n "term" %
Однако теперь я застрял на машине с Windows XP SP3, в которой отсутствует grep! Есть ли способ получить этот список из самого VIM или с помощью какого-либо другого инструмента Windows через :!
?
Спасибо.
решение1
Использовать:g
.
:g/term
:g/term/p
(Интересный факт:грэпбыл названпосле той же команды в редакторе, гдеg/re/p
ed
повторноозначает «регулярное выражение». p
Суффикс необязателен и является сокращением для:print
.)
Чтобы также отобразить номера строк, добавьте:nu
:
:g/term/nu
или просто включить'number'
с :set number
.
В качестве альтернативы grep
Windows поставляется с инструментамиfind
иfindstr
имеющие одинаковые основные функции.
:! find "term" %
:! findstr term %