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

  1. Jika Anda berada dalam mode insert atau lainnya, tekan tombol Esc untuk kembali ke mode normal, yang juga dikenal sebagai mode perintah.
  2. Ketik u untuk membatalkan perubahan terakhir. Di Vim, perintah u juga menerima bilangan. Misalnya, jika Anda ingin membatalkan 4 perubahan terakhir, Anda akan menggunakan 4u.

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

  1. Tekan tombol Esc untuk kembali ke mode normal.
  2. Gunakan Ctrl-R (tekan dan tahan Ctrl dan tekan r) untuk redo perubahan terakhir. Di Vim, Anda juga bisa menggunakan pembilang. Misalnya, jika Anda ingin mengulang 4 perubahan terakhir, Anda dapat mengetikkan 4Ctrl-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.