Comment faites-vous que Vim ne mette pas en évidence ce que vous recherchiez?
Question
Je recherche "nurple". dans un fichier. Je l'ai trouvé génial. Mais maintenant, chaque occurrence de " nurple " est rendu en malade noir sur jaune. Pour toujours.
Pour toujours, c'est-à-dire jusqu'à ce que je recherche quelque chose que je ne saurais être trouvé, tel que "asdhfalsdflajdflakjdf". simplement pour que la recherche précédente soit en surbrillance.
Ne puis-je pas appuyer sur une touche magique pour supprimer les faits saillants lorsque j'ai terminé ma recherche?
La solution
Il suffit de mettre ceci dans votre .vimrc
" <Ctrl-l> redraws the screen and removes any search highlighting.
nnoremap <silent> <C-l> :nohl<CR><C-l>
Autres conseils
: noh
(abréviation de nohighlight) fera l'affaire.
/ lkjasdf
a toujours été plus rapide que : noh
pour moi.
" Make double-<Esc> clear search highlights
nnoremap <silent> <Esc><Esc> <Esc>:nohlsearch<CR><Esc>
Alors je préfère ceci:
map <F12> :set hls!<CR>
imap <F12> <ESC>:set hls!<CR>a
vmap <F12> <ESC>:set hls!<CR>gv
Et pourquoi? Parce qu’il bascule le commutateur: si la surbrillance est activée, appuyez sur F12 pour le désactiver. Et vice versa. HTH.
Ajoutez la ligne suivante à la fin de votre .vimrc
pour empêcher toute mise en surbrillance:
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.
Je l'ai trouvé juste sous : help #
, que je tape tout le temps et qui met en surbrillance tous les mots de la page actuelle, à l'instar de celui en cours.
Je cherche si souvent que j'ai trouvé utile de mapper la touche de soulignement pour supprimer la surbrillance de la recherche:
nnoremap <silent> _ :nohl<CR>
Je pense que la meilleure solution consiste à créer un raccourci pour le responsable:
<leader>c :nohl<CR>
Désormais, chaque fois que votre document contient des termes en surbrillance, il vous suffit d'appuyer sur , + C (mon chef est associé à une virgule). Cela fonctionne parfaitement.
Je pense que cette réponse est " Vim efface la dernière recherche en surbrillance " c'est mieux:
:let @/ = ""
J'ai ceci dans mon .vimrc:
nnoremap ; :set invhlsearch<CR>
De cette façon, ; bascule la recherche en surbrillance. Normalement, la touche ; répète la dernière commande t / T / f / F, mais je n'ai jamais vraiment utilisé cette fonctionnalité. Je trouve ce paramètre beaucoup plus utile car je peux très rapidement changer de surlignage de recherche et avoir une idée précise de la position des résultats de recherche, en un coup d’œil.
Il existe hlsearch
et nohlsearch
. : help hlsearch
fournira plus d'informations.
Si vous voulez lier F12 pour l'activer / désactiver, vous pouvez utiliser ceci:
map <F12> :nohlsearch<CR>
imap <F12> <ESC>:nohlsearch<CR>i
vmap <F12> <ESC>:nohlsearch<CR>gv
De même, si vous souhaitez utiliser une bascule et vous assurer que la surbrillance sera réactivée lors de votre prochaine recherche, vous pouvez utiliser cette
.nmap <F12> :set hls!<CR>
nnoremap / :set hls<CR>/
J'ajoute le mappage suivant à mon ~ / .vimrc
map e/ /sdfdskfxxxxy
Et en mode ESC, j'appuie sur e /