O tópico Procurar por texto visualmente selecionado na Vim Tips Wiki tem um mapeamento que pesquisa a seleção visual atual, Independentemente da quantidade e tipo de espaços em branco entre as palavras. Você pode usá-lo como o mapeamento *
interno para pesquisar (ignorando espaços) a seleção atual. Muito útil!
No entanto, você quer ainda mais indiferença ao espaço em branco, permitindo quebras de linha (e outro espaço em branco?) em qualquer posição no texto. Isso é possível também. Você pode adaptar o padrão de pesquisa atual (armazenado no registro /
, acessível a partir do Vimscript via @/
) com este comando:
:let @/ = join(split(@/, '\zs'), '\_s*')
O split()
primeiro corta a pesquisa atual (literal) em uma lista de caracteres individuais (para que não funcione corretamente com a expressão regular existente, como \+
ou \|
!), então join()
s volta junto com \_s*
(correspondendo a qualquer quantidade de espaço em branco), e atribui de volta ao registro de pesquisa.
Você pode criar um mapeamento a partir disso ( :nnoremap <Leader>/ :let ...<CR>
) ou incorporar isso no mapeamento do modo visual mencionado acima.