Je sais que c'est une vieille question, mais j'espère que cela aidera toute autre personne confrontée au même scénario.
En fait, j'utilise iTerm2 et j'utilise Vim dans mon terminal sur Mac. Et lorsque vous entrez en mode insertion, le curseur est toujours un bloc et est un peu déroutant lorsque vous êtes en mode insertion ou en mode normal.
Je voulais montrer une fine ligne comme curseur en mode insertion et revenir au bloc en mode normal comme le fait MacVim. Et pour ce faire c'est assez simple, il suffit d'ajouter ceci à mon .vimrc
fichier comme décrit ici :
let &t_SI = "\<Esc>]50;CursorShape=1\x7"
let &t_SR = "\<Esc>]50;CursorShape=2\x7"
let &t_EI = "\<Esc>]50;CursorShape=0\x7"
Mais comme vous pouvez le voir, il y a eu un retard lorsque vous avez appuyé sur ESC
pour quitter le mode d'insertion et revenir au mode normal et afficher à nouveau le bloc sous forme de curseur. Donc pour réparer j'ai trouvé ceci :
set ttimeout
set ttimeoutlen=1
set listchars=tab:>-,trail:~,extends:>,precedes:<,space:.
set ttyfast
Et maintenant ça marche plutôt bien comme vous pouvez le voir :
J'espère que ça pourra aider quelqu'un d'autre !
L'option gcr fait cela, même si je ne sais pas exactement comment elle doit être définie pour obtenir les résultats souhaités.
:help gcr
Si vous lisez le manuel et jouez avec, vous devriez pouvoir le comprendre.
Le curseur clignotant en mode insertion est généralement la valeur par défaut. Peut-être que l'option gcr a été modifiée dans votre .vimrc