Подтвердить что ты не робот

Поиск с конца файла с помощью VIM

Как выполнить поиск с конца файла с помощью VIM? Я хочу найти последнее событие XXXX в открытом файле.

4b9b3361

Ответ 1

Мое предложение - использовать диапазон в сочетании с поиском назад через ?.

:1?XXXX

Обзор:

  • 1?XXXX - это диапазон.
  • 1 означает первую строку файла.
  • ?XXXX означает поиск назад с первой строки (обертывание) до тех пор, пока вы не найдете шаблон XXXX

Как упоминал ZyX, это полагается на wrapscan, который будет установлен по умолчанию. Подробнее см. :h 'wrapscan'.

Ответ 2

Введите G$?XXXX

  • G, чтобы перейти в конец файла
  • $, чтобы перейти в конец строки
  • ? для поиска назад
  • XXXX - это то, что вы хотите найти

Вы также можете сделать gg?XXXX, который идет в начало файла, затем выполняет поиск назад, обертывая в конец файла. Однако для больших файлов он может медленно искать начало файла, а затем сразу до конца файла.

Ответ 3

перейдите к последней строке с помощью G и выполните обратный поиск, используя ?XXXX

Ответ 4

Один из способов:

gg?<string>

Это поместит курсор в начало файла и выполнит обратный поиск. Поскольку vim не сможет перейти до положения курсора, он выполнит поиск, начинающийся с самого конца файла.