All Products
Search
Document Center

Elastic Compute Service:Gunakan editor Vim

Last Updated:May 16, 2026

Beralih antar mode Vim, gunakan perintah pengeditan dasar, dan lakukan tugas umum seperti pencarian, penggantian, serta pemberian komentar pada kode.

Instalasi

Vim telah pra-instal di sebagian besar sistem Linux. Jalankan vim --version untuk memeriksa versi yang terinstal. Topik ini menggunakan Vim 8.0 sebagai contoh. Perintah dan fitur mungkin berbeda pada versi lain.

VIM - Vi IMproved 8.0 (2016 Sep 12, compiled Aug 10 2022 11:26:47)
Included patches: 1-1763
Modified by OpenAnolis Community
Compiled by OpenAnolis Community
Enormous version without GUI.  Features included (+) or not (-):
+acl               +farsi             +mouse_sgr         -tag_any_white
 ......

Beralih mode

Jalankan vim filename untuk membuka file dalam Normal mode. Jika file tidak ada, Vim akan membuatnya. Tabel berikut menjelaskan setiap mode dan cara beralih di antara mode tersebut.

Mode

Fungsi

Peralihan mode

Normal mode

(Normal Mode)

Menyalin, menempel, dan menghapus karakter atau baris.

  • Jalankan vim <filename> untuk membuka file dalam Normal mode.

  • Dalam mode lain, tekan Esc untuk kembali ke Normal mode.

Insert mode

(Insert Mode)

Memasukkan karakter pada posisi kursor.

Dalam Normal mode, tekan i,I,a,A,o,O untuk masuk ke Insert mode.

Catatan

Saat Insert mode aktif, -- INSERT -- muncul di pojok kiri bawah.

Replace mode

(Replace Mode)

Menimpa karakter pada posisi kursor.

Dalam Normal mode, tekan R untuk masuk ke Replace mode.

Catatan

Saat Replace mode aktif, -- REPLACE -- muncul di pojok kiri bawah.

Visual mode

(Visual Mode)

Memilih teks. Perintah seperti copy, replace, dan delete hanya berlaku untuk teks yang dipilih.

Dalam Normal mode, tekan v untuk masuk ke Visual mode.

Catatan

Saat Visual mode aktif, -- VISUAL -- muncul di pojok kiri bawah.

Command mode

(Command Mode)

Mencari dan mengganti string, menampilkan nomor baris, menyimpan perubahan, serta keluar.

Dalam Normal mode, tekan : untuk masuk ke Command mode.

Perintah dasar

Membuka file

  • vim filename: Membuka file dalam Normal mode. Jika file tidak ada, Vim akan membuatnya.

  • vim filename1 filename2: Membuka beberapa file.

    • Vim membuka `filename1` terlebih dahulu. Simpan dengan :w, lalu jalankan :bn untuk beralih ke `filename2`. Simpan `filename2` dengan :w.

    • :bp: Beralih ke file sebelumnya.

    • :ls: Menampilkan daftar semua file yang dibuka.

  • :open filename3: Membuka file baru dalam Command mode. Simpan file saat ini terlebih dahulu dengan :w.

Memindahkan kursor

  • Dalam Normal mode

    • Tombol panah atas / k: Bergerak ke atas.

    • Tombol panah bawah / j: Bergerak ke bawah.

    • Tombol panah kiri / h: Bergerak ke kiri.

    • Tombol panah kanan / l: Bergerak ke kanan.

  • Dalam Insert mode

    • Gunakan hanya tombol panah.

Memasukkan konten

Dalam Normal mode, tekan i,I,a,A,o,O untuk masuk ke Insert mode:

  • i: Memasukkan sebelum kursor.

  • I: Memasukkan di awal baris.

  • a: Memasukkan setelah kursor.

  • A: Memasukkan di akhir baris.

  • o: Membuka baris baru di bawah.

  • O: Membuka baris baru di atas.

Menyalin dan menempel

Dalam Normal mode:

  • yy: Menyalin baris saat ini. Tempel dengan p.

  • nyy: Menyalin `n` baris mulai dari baris saat ini. Contohnya, 2yy menyalin dua baris.

  • p: Menempel di bawah kursor.

  • P: Menempel di atas kursor.

Menghapus

  • Dalam Normal mode

    • x: Menghapus karakter pada kursor.

    • dd: Menghapus baris saat ini. Tempel dengan p.

    • dk: Menghapus baris saat ini dan baris di atasnya.

    • dj: Menghapus baris saat ini dan baris di bawahnya.

    • dG: Menghapus dari baris saat ini hingga akhir file.

    • nx: Menghapus `n` karakter mulai dari kursor.

    • ndd: Menghapus `n` baris mulai dari baris saat ini. Tempel dengan p.

  • Dalam Insert mode

    • Gunakan Delete untuk menghapus karakter.

Pencarian

Dalam Normal mode

  • /text: Mencari `text`. Secara default, pencarian bersifat case-sensitive. Tekan Enter untuk menyorot hasil yang sesuai.

    • Untuk pencarian case-insensitive, jalankan :set ignorecase. Untuk mengembalikan pencarian case-sensitive, jalankan :set noignorecase.

  • n: Hasil berikutnya.

  • N: Hasil sebelumnya.

Penggantian

  • Dalam Normal mode

    • r: Mengganti karakter pada kursor.

    • R: Masuk ke Replace mode untuk penggantian berkelanjutan. Tekan Esc untuk keluar.

    • cc: Menghapus baris saat ini dan masuk ke Insert mode.

    • :%s/oldtext/newtext/g: Mengganti semua kemunculan `oldtext` dengan `newtext`. Tanpa /g, hanya kecocokan pertama per baris yang diganti.

  • Dalam Insert mode

    • Hapus konten lama dan ketik konten baru.

Undo dan redo

Dalam mode Normal

  • u: Membatalkan perubahan terakhir.

  • U: Membatalkan semua perubahan pada baris saat ini.

  • Ctrl+r: Mengulangi perubahan terakhir yang dibatalkan.

Indentasi dan penyelarasan

  • Dalam Normal mode

    • >>: Menggeser indentasi baris saat ini ke kanan. Indentasi default: 8 spasi (satu tab).

    • <<: Menggeser indentasi baris saat ini ke kiri.

  • Dalam Command mode

    • :ce: Menyelaraskan baris ke tengah.

    • :le: Menyelaraskan baris ke kiri.

    • :ri: Menyelaraskan baris ke kanan.

Memberi komentar pada kode

Catatan
  • Lakukan backup file sebelum melakukan penggantian skala besar, atau gunakan perintah undo (u) untuk membalikkan kesalahan. Misalnya, jalankan sudo cp /etc/text.txt /etc/text.txt.bak untuk membuat backup file.

  • Pahami sintaks ekspresi reguler Vim agar tidak secara tidak sengaja menghapus konten. Dalam regex Vim, / harus di-escape sebagai \/. Latihlah dengan alat seperti Regex101.

  • Sesuaikan simbol komentar berdasarkan bahasa pemrograman.

  • Dalam Visual mode

    • Beri komentar pada beberapa baris kode berturut-turut

      1. Pilih baris yang akan dikomentari dengan menggerakkan kursor ke atas atau ke bawah.

      2. Tekan : untuk masuk ke Command mode. Vim secara otomatis mengisi :'<,'>, yang menargetkan rentang yang dipilih.

      3. Masukkan perintah penggantian. Misalnya, untuk menambahkan # di awal setiap baris, masukkan s/^/#/ dan tekan Enter.

    • Beri komentar pada seluruh kode: :%s/^/#/g menambahkan # di awal setiap baris.

  • Dalam Insert mode

    Ketik manual simbol komentar untuk memberi komentar pada kode.

Menyimpan dan keluar

  • Simpan: :w

  • Keluar: :q

  • Simpan dan keluar: :wq, :x, atau ZZ

  • Keluar tanpa menyimpan: :q!

  • Simpan paksa dan keluar: :wq!

Mengenkripsi dokumen

  • vim -x filename: Membuka file dengan enkripsi. Tetapkan password, lalu simpan file agar enkripsi diterapkan. Pembukaan berikutnya memerlukan password.

  • Membatalkan enkripsi:

    1. Jalankan :set key= untuk menghapus kunci enkripsi.

    2. Simpan dan keluar dengan :wq.

    3. Buka kembali file dengan vim filename. Tidak akan muncul prompt password.

Menjalankan perintah shell

  • !pwd: Menampilkan direktori kerja saat ini.

  • !ls: Menampilkan daftar file dalam direktori saat ini.

Pengeditan multi-jendela

  • vim -o filename1 filename2: Membuka dua file dalam jendela terpisah. Keluar dari setiap jendela secara individual.

  • :n: Jendela berikutnya.

  • :N: Jendela sebelumnya.

Bantuan

  • Jalankan vim --help di terminal untuk melihat sintaks perintah Vim.

  • Dalam Normal mode

    • :help: Membuka dokumen bantuan Vim (read-only). Keluar dengan :q.

    • :help i: Menampilkan bantuan untuk i.

    • :help yy: Menampilkan bantuan untuk yy.

    • :set nu: Menampilkan nomor baris.

Contoh penggunaan

Ubah file konfigurasi

Masukkan Location pada baris pertama example.conf:

  1. Jalankan vim example.conf untuk membuka file.

  2. Letakkan kursor pada karakter pertama dan tekan i untuk masuk ke Insert mode.

  3. Masukkan Location dan tekan Enter untuk membuat baris baru.

  4. Tekan Esc untuk kembali ke Normal mode.

  5. Masukkan :wq untuk menyimpan dan keluar.

    example-1-1-2.gif

Masukkan konten pada baris target

Masukkan # di awal baris 10 dalam example.conf:

  1. Jalankan vim example.conf untuk membuka file.

  2. Jalankan :10 untuk memindahkan kursor ke baris 10.

  3. Tekan i untuk masuk ke Insert mode.

  4. Masukkan #.

  5. Tekan Esc untuk kembali ke Normal mode.

  6. Masukkan :wq untuk menyimpan dan keluar.

    example-2-1-2.gif

Cari dan masukkan konten

Dalam example.conf, masukkan LoadModule rewrite_module modules/mod_rewrite.so setelah Include conf.modules.d/*.conf:

  1. Jalankan vim example.conf untuk membuka file.

  2. Cari baris target: /Include conf.modules.d/*.conf

  3. Tekan i untuk masuk ke Insert mode.

  4. Masukkan LoadModule rewrite_module modules/mod_rewrite.so.

  5. Tekan Esc untuk kembali ke Normal mode.

  6. Masukkan :wq untuk menyimpan dan keluar.

    example-3-1-2.gif

Hapus konten

Dalam example.conf, hapus # dari awal baris #Listen 12.34.XX:XX:80 dan hapus baris Listen 80:

  1. Jalankan vim example.conf untuk membuka file.

  2. Cari baris target: /#Listen 12.34.XX:XX:80. Kursor akan berada pada #.

  3. Tekan x untuk menghapus #.

  4. Pindahkan kursor ke baris Listen 80 dan tekan dd untuk menghapusnya.

  5. Masukkan :wq untuk menyimpan dan keluar.

    delete-1.gif

Edit Docker.yaml

Buat dan edit docker-compose.yaml:

vim docker-yaml-2.gif

Hapus komentar multi-baris

  1. Asumsikan # berada di awal baris, mungkin didahului spasi atau indentasi:

    # This is a comment
        # Another comment
    # Yet another comment
  2. Hapus komentar tersebut:

    :%s/^\s*#\s\?//

    Penjelasan pola:

    • ^: Awal baris.

    • \s*: Spasi apa pun (menangani indentasi).

    • #: Simbol komentar.

    • \s\?: Satu spasi opsional setelah #.

    • //: Mengganti kecocokan dengan kosong (menghapusnya).

    Perintah ini memproses seluruh file. Hasilnya:

    This is a comment
    Another comment
    Yet another comment

Upgrade Vim

Jika versi Vim Anda tidak memenuhi kebutuhan, upgrade dengan perintah berikut.

Alibaba Cloud Linux 3 dan 2

sudo yum update vim

CentOS 7 dan 8

sudo yum update vim

Fedora

sudo yum update vim

Ubuntu dan Debian

sudo apt upgrade vim

openSUSE

sudo zypper update vim

Pemecahan masalah

  • "No write since last change" saat keluar:

    • Penyebab: File telah dimodifikasi tetapi belum disimpan.

    • Solusi: Simpan dan keluar dengan :wq, atau buang perubahan dengan :q!.

  • Tidak dapat memasukkan teks:

    • Penyebab: Anda mungkin berada dalam mode non-Insert, seperti Visual mode.

    • Solusi: Tekan Esc untuk kembali ke Normal mode, lalu masuk ke Insert mode.

  • Tidak dapat menyimpan file:

    • Penyebab: Pengguna saat ini tidak memiliki izin menulis. File konfigurasi sistem seperti /etc/hosts dan /etc/nginx/nginx.conf memerlukan izin superuser.

    • Solusi 1: Buka file dengan sudo vim example.conf.

    • Solusi 2: Simpan dengan izin tinggi menggunakan :w !sudo tee %. Atau, ubah izin atau kepemilikan file dengan sudo chown atau sudo chmod.

  • File ".swp" ada:

    • Penyebab: File sedang dibuka di sesi Vim lain.

    • Solusi: Pastikan tidak ada terminal lain yang sedang mengedit file tersebut. Jika tidak ada, cari dan hapus file .swp dengan ll -a, lalu buka kembali file tersebut. Atau, jalankan :recover untuk memulihkan dari file swap.