Terkadang, saat mengedit file, Anda dapat menghapus baris yang salah atau mengubah pikiran tentang pengeditan, dan Anda ingin mengembalikan perubahan.
Artikel ini menjelaskan cara membatalkan dan mengulangi perubahan di Vim / Vi.
Baik Vi atau Vim diinstal secara default pada macOS dan hampir semua distribusi Linux. Mengetahui dasar-dasar Vim mungkin sangat berguna ketika Anda menghadapi situasi di mana editor favorit Anda tidak tersedia.
Undo Perubahan di Vim / Vi
Vim melacak semua perubahan yang Anda buat di sesi saat ini. Perintah undo
membatalkan satu atau lebih perubahan dalam urutan pembuatannya.
Untuk membatalkan perubahan dalam Vim dan Vi gunakan perintah u
,:u
atau :undo
- Jika Anda berada dalam mode insert atau lainnya, tekan tombol
Esc
untuk kembali ke mode normal, yang juga dikenal sebagai mode perintah. - Ketik
u
untuk membatalkan perubahan terakhir. Di Vim, perintahu
juga menerima bilangan. Misalnya, jika Anda ingin membatalkan 4 perubahan terakhir, Anda akan menggunakan4u
.
Pastikan Anda mengetik u
dalam huruf kecil, bukan perintah huruf besar U
, yang membatalkan semua perubahan terbaru pada satu baris. Jika Anda secara tidak sengaja mengetik U
, Anda dapat membatalkan perubahan dengan u
.
Gunakan perintah undo untuk mengembalikan perubahan yang dibuat oleh perintah lain, seperti menghapus, tempel, search and replace, dan sebagainya.
Saat bekerja dalam mode insert, semua perubahan pada teks dianggap sebagai satu entri di undo tree. Misalnya, jika Anda beralih ke mode insert dan memasukkan lima baris, lalu kembali ke mode normal dengan menekan tombol Esc
dan tekan u
untuk membatalkan perubahan, kelima baris akan dihapus.
Redo Perubahan di Vim / Vi
Fitur redo adalah kebalikan dari tindakan undo.
Untuk mengulang perubahan pada Vim dan Vi, gunakan Ctrl-R
atau :redo
- Tekan tombol
Esc
untuk kembali ke mode normal. - Gunakan
Ctrl-R
(tekan dan tahanCtrl
dan tekanr
) untuk redo perubahan terakhir. Di Vim, Anda juga bisa menggunakan pembilang. Misalnya, jika Anda ingin mengulang 4 perubahan terakhir, Anda dapat mengetikkan4Ctrl-R
.
Setiap perintah undo dapat dibalik dengan perintah redo.
Kesimpulan
Untuk membatalkan perubahan pada Vim / Vi ketik u
, dan untuk mengulangi perubahan yang dibatalkan gunakan urutan tombol Ctrl-R
.
Vim juga mendukung undo branch.