поиск vim - настройка разных цветов для текста под курсором

поиск vim - настройка разных цветов для текста под курсором

Предположим, что поиск vim находит 5 совпадений в моем файле. Я вижу, что все 5 из этих совпадений выделены желтым цветом. Я переключаюсь между ними, нажимая n. Но, когда мой курсор перемещается от одного совпадения к другому, все выделения остаются одного цвета. Это затрудняет определение того, на каком совпадении находится мой курсор. Есть ли способ указать vim выделять все совпадения одним цветом, а при посещении совпадения с помощью n, окрашивать текущее просмотренное совпадение в другой цвет?

решение1

Нет встроенной опции, которая позволяет выделить текущий по-другому. При создании поиска у вас есть такая 'incsearch'возможность, но это все.

Вы можете использовать другую подсветку поверх подсветки поиска, например :match, с помощью специального \%#атома регулярного выражения, который ограничивает совпадение текущей позицией курсора:

:execute 'match IncSearch /\%#' . @/ . '/'

Проблема в том, что подсветку нужно адаптировать всякий раз, когда @/меняется текущий шаблон поиска ( ) (о, и он не обрабатывает смещения поиска, такие как /foo/e-1). Поэтому вам придется перезаписать все команды, связанные с поиском ( /, *, и т. д.), чтобы подключить :matchк ним команду. Я бы не рекомендовал этого.

Связанный контент