VIM arama vurgulamasını kaldırma


13

Yaptığım bir aramadan sonra, ilgili sorgu için tüm eşleşmeler vurgulanmış olarak kalır ve bu can sıkıcıdır. Bu, ilgili dosyayı kapattıktan sonra bile olur (normal davranış?). Bunu nasıl kaldırabilirim?

Yanıtlar:


15

Komutu istiyorsun :nohlsearch, ama bunu her seferinde yazmak istemiyorsun. Bunu ~ / .vimrc'nize koyun:

nnoremap <silent> <leader>n :nohlsearch<CR>

Bundan sonra, liderinizi (varsayılan olarak \) girmeniz ve ardından nmaçları temizlemeniz yeterlidir . Kullanmanıza gerek yok n; isterseniz başka bir şey seçin.

İsterseniz liderinizi daha rahat bir şeye yeniden eşleyebilirsiniz. Virgül kullanıyorum:

let mapleader = ","

(Bu, aramaları temizlemek için eşlemeden önce gider .)


4
Sadece yapıyorum: vim ne demek istediğimi bilmesi için yeterli. :)
sml

@scottl Yeterince adil (ve tüm komutların kısayolları olduğunu hatırlatmak iyi), ancak yine de sık kullanılan komutları eşlemek istiyorum.
Telemachus

10

i sadece /qiw772723euzdosyada olmayan bir şey için "arama". hacky geçici çözüm, biliyorum, ben de gerçek bir çözüm ilgileniyorum :)


thats korkunç ama güzel bir hızlı ve kirli 'çözüm' olsa :)
matthias krull

4

@Telemachus yanıtına benzer şekilde, @David Winslow'un SO'ya verdiği bu cevap üzerine bir yorum, bir geçişin eşlenmesini önerdi hlsearch. Aşağıdakileri eşlersiniz:

nmap <silent> <leader>n :set hlsearch!<CR>

N tuşuna basarsanız, her vurduğunuzda vurgu aramayı kapatıp açın.


3

Konfigürasyonumda, vurgulanan arama terimlerini komut modunda enter tuşuna basarak temizledim . Bu şekilde yapılandırılır.

set hlsearch    " highlight all matched terms
" Pressing return clears highlighted search
:nnoremap <CR> :nohlsearch<CR>/<BS>

Bir yan not olarak, renk düzeni ne olursa olsun, arama eşleşmelerimin süper net bir şekilde vurgulandığından emin olmak istiyorum , bu yüzden onlara sarı bir arka plan üzerinde siyah metin veriyorum.

" When highlighting search terms, make sure text is contrasting color
:highlight Search ctermbg=yellow ctermfg=black
" Do the same for gvim
:highlight Search guibg=yellow guifg=black

0

Biraz farklı bir çözümüm var. Bana göre, yapılacak doğal şey <esc>onu uzaklaştırmak için baskı yapmak olacağı hissine kapılıyor. Ancak, bu işe yaramaz. Haritalama <esc>için :nohböyle bir seçenek de değil bu yüzden, kötü yan etkileri vardır. <Leader>nve benzer eşlemeler böylesine önemsiz bir görev için benim için sezgisel değil. Ancak, <esc>iki kez basmak yaşayabileceğim bir şey:

nnoremap <silent> <esc><esc> :nohlsearch<CR>

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.