Non toccare il file durante la scrittura se il file non è stato modificato


15

Di tanto in tanto :wscrivo distrattamente quando sto leggendo qualcosa. Questo fa sì che il tempo di modifica del file cambi e talvolta il mio sistema di compilazione ricostruisce inutilmente una parte sostanziale di un progetto.

C'è un modo per impostare Vim semplicemente non fare nulla se provo a scrivere un file e non è stato modificato?

Risposte:


15

Estendere la risposta di @lcd047 che puoi usare cabbrevper modificarew

:cabbrev w <c-r>=(getcmdtype()==':' && getcmdpos()==1 ? 'up' : 'w')<CR>

Quando digiti :wnoterai che verrà sostituito con :upquando premi Invio.


14

Non direttamente (ovvero, il comportamento di :wnon può essere modificato), ma puoi imparare a usare :upinvece di :w. Fa esattamente quello che vuoi.


3
Basta permettetemi di aggiungere: io uso un keymapping preferito per il salvataggio, e l'ho legata ad esso :update, invece di :writeottenere il requisito Poster originale.
Giovanni Maggiorani,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.