Ich weiß, dass dies eine alte Frage ist, aber hoffentlich hilft dies allen anderen, die mit dem gleichen Szenario konfrontiert sind.
Eigentlich verwende ich iTerm2 und Vim in meinem Terminal auf dem Mac. Und wenn Sie in den Einfügemodus wechseln, ist der Cursor immer noch ein Block und etwas verwirrend, wenn Sie sich im Einfügemodus oder im normalen Modus befinden.
Ich wollte im Einfügemodus eine dünne Linie als Cursor anzeigen und im normalen Modus zurück zum Block, wie es MacVim tut. Und dazu ist es ziemlich einfach, ich habe dies einfach zu meinem .vimrc
hinzugefügt Datei wie hier beschrieben:
let &t_SI = "\<Esc>]50;CursorShape=1\x7"
let &t_SR = "\<Esc>]50;CursorShape=2\x7"
let &t_EI = "\<Esc>]50;CursorShape=0\x7"
Aber wie Sie sehen können, gab es eine Verzögerung beim Drücken von ESC
um den Einfügemodus zurück in den Normalmodus zu verlassen und den Block wieder als Cursor anzuzeigen. Um es zu beheben, habe ich Folgendes gefunden:
set ttimeout
set ttimeoutlen=1
set listchars=tab:>-,trail:~,extends:>,precedes:<,space:.
set ttyfast
Und jetzt funktioniert es ziemlich gut, wie Sie sehen können:
Ich hoffe, es konnte jemand anderem helfen!
Die gcr-Option tut dies, obwohl ich nicht genau weiß, wie sie eingestellt werden muss, um die gewünschten Ergebnisse zu erzielen.
:help gcr
Wenn Sie das Handbuch lesen und damit herumspielen, sollten Sie in der Lage sein, es herauszufinden.
Der blinkende Cursor im Einfügemodus ist normalerweise die Standardeinstellung. Möglicherweise wurde die gcr-Option in Ihrer .vimrc
geändert