Domanda

Cerco "nurple" in un file.L'ho trovato, fantastico.Ma ora, ogni occorrenza di "nurple" è resa in nero malato su giallo.Per sempre.

Per sempre, cioè, finché non cerco qualcosa che so che non verrà trovato, come "asdhfalsdflajdflakjdf" semplicemente in modo da cancellare l'evidenziazione della ricerca precedente.

Non posso semplicemente premere un tasto magico per eliminare le evidenziazioni una volta terminata la ricerca?

È stato utile?

Soluzione

Basta inserirlo nel tuo .vimrc

" <Ctrl-l> redraws the screen and removes any search highlighting.
nnoremap <silent> <C-l> :nohl<CR><C-l>

Altri suggerimenti

:noh (abbreviazione di nohighlight) farà al caso tuo.

/lkjasdf è sempre stato più veloce di :noh per me.

" Make double-<Esc> clear search highlights
nnoremap <silent> <Esc><Esc> <Esc>:nohlsearch<CR><Esc>

Allora preferisco questo:

map  <F12> :set hls!<CR>
imap <F12> <ESC>:set hls!<CR>a
vmap <F12> <ESC>:set hls!<CR>gv

E perché?Perché alterna l'interruttore:se l'evidenziazione è attiva, premere F12 lo spegne.E viceversa.HTH.

Aggiungi la seguente riga alla fine del tuo .vimrc per evitare del tutto di evidenziare:

set nohlsearch
            *:noh* *:nohlsearch*
:noh[lsearch]       Stop the highlighting for the 'hlsearch' option.  It
            is automatically turned back on when using a search
            command, or setting the 'hlsearch' option.
            This command doesn't work in an autocommand, because
            the highlighting state is saved and restored when
            executing autocommands |autocmd-searchpat|.
            Same thing for when invoking a user function.

L'ho trovato proprio sotto :help #, che continuo a premere continuamente e che evidenzia tutte le parole nella pagina corrente come quella corrente.

Cerco così spesso che ho trovato utile mappare il tasto di sottolineatura per rimuovere l'evidenziazione della ricerca:

nnoremap <silent> _ :nohl<CR>

Penso che la risposta migliore sia avere una scorciatoia leader:

<leader>c :nohl<CR>

Ora ogni volta che il tuo documento è pieno di termini evidenziati, premi semplicemente , + C (Ho il mio leader mappato su una virgola).Funziona perfettamente.

Penso che questa risposta in "Vim cancella l'evidenziazione dell'ultima ricerca" è meglio:

:let @/ = ""

Ho questo nel mio .vimrc:

nnoremap ; :set invhlsearch<CR>

Da questa parte, ; attiverà/disattiverà l'evidenziazione della ricerca.Normalmente, il ; Il tasto ripete l'ultimo comando t/T/f/F, ma non ho mai utilizzato questa funzionalità.Trovo questa impostazione molto più utile, perché posso attivare e disattivare l'evidenziazione della ricerca molto rapidamente e posso facilmente avere un'idea di dove sono i risultati della ricerca, a colpo d'occhio.

C'è hlsearch E nohlsearch. :help hlsearch fornirà maggiori informazioni.

Se vuoi legarti F12 per attivarlo/disattivarlo puoi usare questo:

map     <F12>   :nohlsearch<CR>
imap    <F12>   <ESC>:nohlsearch<CR>i
vmap    <F12>   <ESC>:nohlsearch<CR>gv

Inoltre, se vuoi avere uno strumento ed essere sicuro che l'evidenziazione verrà riattivata la prossima volta che cerchi qualcosa, puoi usare questo

nmap <F12> :set hls!<CR>
nnoremap / :set hls<CR>/

Aggiungo la seguente mappatura al mio ~/.vimrc

map e/ /sdfdskfxxxxy

E in modalità ESC, premo e/

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top