Jangan menyentuh file saat menulis jika file tidak diubah


15

Kadang-kadang saya tanpa sadar mengetik :wketika saya sedang membaca sesuatu. Ini menyebabkan waktu modifikasi file berubah dan kadang-kadang menyebabkan sistem build saya tidak perlu membangun kembali sejumlah besar proyek.

Apakah ada cara untuk mengatur vim agar tidak melakukan apa-apa jika saya mencoba menulis file dan itu belum diubah?

Jawaban:


15

Memperluas jawaban lcd047 yang dapat Anda gunakan cabbrevuntuk memodifikasiw

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

Saat Anda mengetik, :wAnda akan melihat bahwa itu akan diganti dengan :upketika Anda menekan kembali.


14

Tidak secara langsung (yaitu, perilaku :wtidak dapat diubah), tetapi Anda dapat belajar untuk menggunakan :upbukan :w. Itu tepat seperti yang Anda inginkan.


3
Izinkan saya menambahkan: Saya menggunakan papan tombol favorit untuk menyimpan, dan saya terikat untuk itu :updatedaripada :writemendapatkan persyaratan Poster Asli.
Giovanni Maggiorani
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.