Ho notato durante la modifica lungo una riga in un file .txt in modalità inserimento il cursore si sposta all'inizio della riga dopo una scrittura usando la sequenza di tasti:
<esc>:w
Vorrei cambiare questo comportamento in modo tale che il cursore rimanga in posizione dopo a: write. È possibile? Non ho bisogno che il cursore rimanga in modalità inserimento, mi piacerebbe solo che mantenga la sua ultima posizione dopo una scrittura.
Sto usando gVim 7.4 su Windows. Il mio .vimrc è molto semplice, non credo che nessuna delle mie impostazioni interferisca con questo comportamento. Ho anche rimosso il sourcing di mswin.vim e example.vim dal mio .vimrc (in bundle con il programma di installazione ufficiale di Windows per vim.org).
Dopo aver letto i commenti qui sotto ho esaminato di nuovo il problema e ho realizzato che il cursore si sposta solo all'estrema sinistra dopo una scrittura su linee che sono interamente costituite da uno spazio bianco finale. In altre parole, il cursore si sposta all'estrema sinistra solo su esc-: w quando la linea è un rientro sospeso senza altri caratteri oltre agli spazi . .Vimrc gestisce i comportamenti di rientro con queste impostazioni:
set tabstop=4
set softtabstop=4
set shiftwidth=4
set expandtab
set autoindent
Quindi, una nuova linea creata sotto una linea rientrata conterrà 4 spazi bianchi finali come i primi 4 spazi della linea (che voglio mantenere). Al tasto 'esc' premere il cursore scorre verso l'estrema sinistra del buffer.
C'è un modo per mantenere la posizione del cursore quando si preme 'esc' per tornare alla modalità normale, su una linea composta da spazi bianchi finali (come rientro)?
gvim -u NONE -U NONE
(puoi usare cmd.exe o fare un collegamento)? Ciò impedirà il caricamento dei file (g) vimrc.