Quando você procura uma palavra em um arquivo com algo parecido /console.log
, todas as instâncias de console.log
são destacadas.
Quando você não estiver mais interessado neles, o destaque pode ser perturbador. Minha estratégia atual para remover o realce é fazer algo assim /asntehua
. Existe uma maneira adequada de remover esta palavra destacada?
/skldafjlksjdf
;):nnoremap <silent> <CR> :nohlsearch<CR><CR>
. Pressione retorno no modo de comando e o realce desaparecerá.Respostas:
Como alternativa
:noh
, eu gosto de fazer o:let @/=""
mapeamento para um atalho de teclado.A diferença é que
:noh
deixa o termo de pesquisa no registro de pesquisan
e,N
no modo normal, retome a pesquisa pulando para a correspondência seguinte / anterior e realçando novamente. O uso:let @/=""
, por outro lado, provoca a mensagemE25: No previous regular expression
e deixa o cursor onde estava , o que é especialmente conveniente se você ainda não conhecectrl
-o
ainda e acidentalmente pressionan
.Isso também pode ser usado de outra maneira. Para fazer com que o vim destaque algum texto sem pular para ele, você pode
:let @/="some text"
Nessas expressões, @ permite fazer referência a um registro e @ / é o registro que mantém o último padrão de pesquisa.
fonte
Basta digitar
(Onde
<cr>
simboliza um retorno de carro, ou seja, Enter.) A versão completa e não abreviada deste comando é:nohlsearch
.Por conveniência, você pode ter um mapeamento como
no seu
.vimrc
. Como meu líder é o Space, isso me permite limpar o destaque simplesmente tocando no espaço duas vezes. (Por padrão,<Leader>
está definido como\
)Outra opção popular é vinculá-lo ao Ctrl+ L, pois esse é mais ou menos o padrão para 'tela de redesenho do terminal', que é basicamente o que você está fazendo:
Isso tem o efeito colateral de também redesenhar a tela do terminal, que pode ser lenta se a conexão do terminal estiver lenta (o que é muito raro atualmente).
NOTA: Se você estiver usando o tpope / vim-sensitive , ele já oferece o
<C-l>
mapeamento listado acima.fonte
Desativar o destaque da pesquisa permanentemente
As correspondências não serão destacadas sempre que você fizer uma pesquisa usando /
Limpar destaque até a próxima pesquisa
ou
:nohlsearch
(limpa até que nou Nseja pressionado ou uma nova pesquisa seja realizada)Destaque claro ao pressionar ESC
Destaque claro ao pressionar outra tecla ou mapa personalizado
Destaques claros ao pressionar \(barra invertida)
Destaques claros ao bater ESCduas vezes
fonte
nnoremap <esc> :noh<return><esc>
ao meu,vimrc
mas não está funcionando. Eujk
mapeei para escapar, poderia ser por isso?ESC
chave?jk
não alterna o texto realçado (mas ainda funciona comoEsc
). Pressionar meuEsc
no canto superior esquerdo do teclado desativa o texto realçado.jk
mapa abaixo doESC
mapa e verifique se você está usando um simples emmap
vez denoremap
Depois de experimentar várias soluções sugeridas para atalhos para isso no ~ / vimrc, decidi simplesmente adicioná
nmap <esc><esc> :noh<return>
-lo. O escape duplo evita interferências com a função das teclas de seta. Se você estiver no modo de inserção, é necessário um escape triplo. Isso é rápido de executar e fácil de lembrar.fonte
Adicionei um autocmd ao meu .vimrc que remove o destaque sempre que você entra no modo de inserção.
fonte
nohl
vez delet @/=""
seria uma abordagem melhor, desde então, você não derruba sua pesquisa atual.:let @/=""
comando, masautocmd InsertEnter * :noh
não por alguma razão, tem alguma idéia do porquê?Se você não deseja destacar depois de qualquer pesquisa, use (melhor):
ou isso (pior):
fonte
Quando digitei
:help incsearch
, encontrei o seguinte no manual:que renunciei a usar, pois outras soluções que tentei não eram perfeitas e essa solução vem "diretamente da boca do cavalo", por assim dizer. Destaca todas as correspondências de pesquisa na janela atual.
fonte
Isso tem a vantagem de que você não precisa digitá-lo exatamente. A desvantagem é que há uma chance de cerca de 1: 68719476736 em um arquivo de 4096 bytes de que isso não funcione e o cursor saltará para um local diferente. Essa chance aumenta para arquivos maiores.
fonte
asdfasdf
é especial no sentido de que acontece com frequência em arquivos práticos, do que uma sequência de 8 bytes selecionada aleatoriamente. Assim, a chance é muito maior. :-)Eu não acho que remover hls seria uma coisa boa, que tal tornar fácil ativar ou desativar a criação de um atalho fácil (booleano) No meu caso ->
A mágica acontece por causa de "
!
" no final da configuraçãofonte
Acho que é muito raro eu querer destacar e quando preciso realçar é apenas por um breve momento. Minha solução é
Isso ativa o destaque quando você pressiona
\/
e o desativa novamente se você pressionar novamente. Isso fornece acesso fácil ao destaque nos casos raros quando você precisar.fonte