Encontrei uma maneira de desativar o caps lock no modo normal automaticamente (embora funcione apenas no Linux).
As soluções que foram feitas com plug-ins não levam em consideração que você pode entrar no modo normal de mais de uma maneira (que é de inserção para normal), por exemplo, no modo de comando.
Na verdade, não há nenhum evento de comando automático que é ativado ao entrar no modo normal; portanto, o evento que usei foi o CursorHold
evento, que é ativado quando você não está digitando no modo normal.
au CursorHold * call TurnOffCaps()
set updatetime=10
Você define o tempo de atualização para um número muito pequeno, para que ele sempre seja ativado antes que você possa digitar qualquer coisa.
function TurnOffCaps()
let capsState = matchstr(system('xset -q'), '00: Caps Lock:\s\+\zs\(on\|off\)\ze')
if capsState == 'on'
silent! execute ':!xdotool key Caps_Lock'
endif
endfunction