Eu encontrei uma abordagem completamente diferente, mas isso é exatamente o que eu estava procurando.
:set hlsearch
autocmd InsertEnter * :let @/=""
autocmd InsertLeave * :let @/=""
This sets the "latest search" register to the empty string, so that nothing will be highlighted. Earlier searches can still be remembered by using the key after hitting / or ? and optionally the "start" of the string to be searched.
Fonte
Obrigado pela sua resposta akira , mas esta solução é realmente elegante na minha opinião. E funciona, eu testei!