O seu exemplo parece funcionar bem com o xterm, por isso não acho que seja .vimrc
o problema.
Indo um pouco mais fundo, parece que o PuTTY não parece implementar o código de escape do OSC que você está usando para alterar a cor do cursor (consulte do_osc
in terminal.c
nas origens do PuTTY). Navegando pelas fontes, também não encontrei nenhum outro mecanismo para fazer algo semelhante. Isso significa que provavelmente não será uma maneira fácil de fazer isso funcionar no PuTTY.
Suas soluções provavelmente estarão limitadas a:
- Tentando pleitear com os autores do PuTTY para implementar o código de escape relevante do OSC;
- Alterando seu programa de terminal; ou
- Encontrar outra maneira de informar ao vim o modo em que você está.
Eu suspeito que o terceiro será o mais fácil, infelizmente.