Когда вы ищете слово в файле с чем-то вроде /console.log
, все экземпляры console.log
подсвечиваются.
Когда вы больше не интересуетесь этим, выделение может отвлекать. Моя текущая стратегия удаления выделения - сделать что-то вроде /asntehua
. Есть ли правильный способ убрать выделение этого слова?
/skldafjlksjdf
;):nnoremap <silent> <CR> :nohlsearch<CR><CR>
. Нажмите return в командном режиме, и подсветка исчезнет.Ответы:
Как альтернатива
:noh
, мне нравится делать:let @/=""
сопоставленные с сочетанием клавиш.Разница в том, что
:noh
поисковый запрос остается в регистре поиска, поэтомуn
иN
в обычном режиме возобновите поиск, перейдя к следующему / предыдущему совпадению и повторно выделив его. Использование:let @/=""
, с другой стороны, приводит к появлению сообщенияE25: No previous regular expression
и оставляет курсор там, где оно было , что особенно удобно, если вы еще не знаете о немctrl
-o
и случайно попалоn
.Это также может быть использовано другим способом. Чтобы Vim выделил какой-то текст, не переходя к нему, вы можете
:let @/="some text"
В этих выражениях @ позволяет вам ссылаться на регистр, а @ / - регистр, содержащий последний шаблон поиска.
источник
Просто наберите
(Где
<cr>
символизирует возврат каретки, т.е. Enter.) Полная не сокращенная версия этой команды:nohlsearch
.Для удобства вы можете иметь такое отображение, как
в вашем
.vimrc
. Поскольку моим лидером является Space, это позволяет мне очистить выделение, просто дважды нажав пробел. (По умолчанию<Leader>
установлено значение\
)Другой популярный вариант - привязать его к Ctrl+ L, так как это более или менее значение по умолчанию для «перерисованного экрана терминала», что примерно соответствует тому, что вы делаете:
У этого есть побочный эффект также перерисовки экрана терминала, который может быть медленным, если ваше терминальное соединение медленное (что очень редко в наши дни).
ПРИМЕЧАНИЕ. Если вы используете tpope / vim-sensible, то оно уже предлагает
<C-l>
приведенное выше отображение.источник
Отключить подсветку поиска навсегда
Матчи не будут выделены, когда вы выполняете поиск, используя /
Очистить выделение до следующего поиска
или
:nohlsearch
(не очистится до nили Nнажатии или свежий выполняется поиск)Очистить подсветку при нажатии ESC
Очистить подсветку при нажатии другой клавиши или пользовательской карты
Очистить блики при нажатии \(обратная косая черта)
Четкие блики на удары в ESCдва раза
источник
nnoremap <esc> :noh<return><esc>
в мой,vimrc
но он не работает. Яjk
наметил побег, это могло быть почему?ESC
ключ?jk
не выключает выделенный текст (но все равно работает какEsc
). НажатиеEsc
клавиши my в левом верхнем углу клавиатуры отключает выделенный текст.jk
карту подESC
картой и убедитесь, что вы используете простуюmap
вместоnoremap
Попробовав несколько предложенных решений для ярлыков для этого в ~ / vimrc, я решил просто добавить
nmap <esc><esc> :noh<return>
к нему. Двойной выход предотвращает вмешательство в работу клавиш со стрелками. Если вы находитесь в режиме вставки, необходим тройной выход. Это быстро выполнить и легко запомнить.источник
Я добавил autocmd в мой .vimrc, который удаляет подсветку каждый раз, когда вы входите в режим вставки.
источник
nohl
вместоlet @/=""
было бы лучшим подходом, так как тогда вы не затормозите текущий поиск.:let @/=""
командой, ноautocmd InsertEnter * :noh
не по какой-то причине, есть идеи почему?Если вы не хотите выделять после любого поиска, вы можете использовать это (лучше):
или это (хуже)
источник
Когда я набрал текст
:help incsearch
, я обнаружил в руководстве следующее:которым я отказался от использования, так как другие решения, которые я пробовал, не были идеальными, и это решение, так сказать, «изо рта лошади». Он выделяет все поисковые совпадения в текущем окне.
источник
Это имеет то преимущество, что вам не нужно вводить его точно. Недостатком является то, что в 4096-байтовом файле существует вероятность 1: 68719476736, что это не сработает, и курсор переместится в другое место. Этот шанс увеличивается для больших файлов.
источник
asdfasdf
особенная в том смысле, что она встречается гораздо чаще в практических файлах, чем произвольно выбранная 8-байтовая последовательность. Таким образом, шанс намного выше. :-)Я не думаю, что удаление hls вообще было бы хорошо, как насчет упрощения включения или отключения создания простого ярлыка (логическое значение) В моем случае ->
Волшебство происходит из-за "
!
" в конце настройкиисточник
Я нахожу, что для меня очень редко вообще хочется выделять, а когда мне нужно выделить, это просто на короткое время. Мое решение
Это включает подсветку при нажатии
\/
и отключает ее снова при повторном нажатии. Это дает легкий доступ к выделению в тех редких случаях, когда это необходимо.источник