A função funciona como esperado se hlsearch
não estiver definido antes de chamá-lo. Parece que defini-lo na função não tem efeito se já estiver definido. Você pode resolver isso configurando nohlsearch
no seu mapeamento:
nnoremap <space> :set nohlsearch\|:call g:TestFunc()<cr>
Se o seu objetivo é simplesmente destacar determinados padrões, e você não precisa especificamente usar o mecanismo hlsearch
, você pode querer usar o comando match
. Realiza praticamente a mesma coisa com mais clareza.