Pergerakan dasar | |
| h l k j | ke kiri, kanan, ke atas, bawah |
| b w | ke awal kata/tanda kiri, kanan |
| ge e | ke akhir kata/tanda kiri, kanan |
| { } | paragraf sebelum, berikutnya |
| ( ) | awal dari kalimat sebelum, berikutnya |
| 0 gm | awal baris, tengah baris |
| ^ $ | karakter pertama, karakter terakhir dari baris |
| nG ngg | ke baris n, kondisi akhir, pertama |
| n% | persentase n dari file(n harus ditentukan) |
| n| | kolom n pada baris sekarang |
| % | cari tanda kurung berikutnya, tanda kurung, komentar, #define |
| nH nL | awal karakter n, mulai dari bawah layar |
| M | ke tengah jendela/layar |
Penyisipan & Penempatan → insert mode | |
| i a | sisip sebelum, setelah kursor |
| I A | sisip pada awal, akhir dari baris |
| gI | sisip teks pada kolom pertama |
| o O | buka baris baru bawah, atas pada baris sekarang |
| rc | ganti karakter di bawah kursor dengan c |
| grc | seperti r, tapi tanpa mempengaruhi layout |
| R | ganti karakter-karakter permulaan pada kursor |
| gR | seperti R, tapi tanpa mempengaruhi layout |
| cm | ganti teks untuk pergerakan sebanyak m |
| cc or S | ganti baris yang sekarang |
| C | ganti ke akhir dari baris |
| s | ganti satu karakter dan sisipkan |
| ~ | tukar case dan kursor advance |
| g~m | tukar case sebanyak m |
| gum gUm | lowercase, uppercase teks sebanyak m |
| <m >m | geser kiri, kanan, teks sebanyak m |
| n<< n>> | geser sebanyak n baris kiri, kanan |
Penghapusan | |
| x X | hapus karakter dibawah, sesudah kursor |
| dm | hapus teks sebanyak m |
| dd D | hapus baris saat ini, sampai ke akhir baris |
| J gJ | join baris saat ini selanjutnya, tanpa spasi |
| :rd↵ | hapus dgn jarak sebanyak r baris |
| :rdx↵ | hapus dgn jarak sebanyak r baris kedalam register x |
Mode insert | |
| ^Vc ^Vn | sisip char c secara literal, nilai desimal n |
| ^A | menyisipkan inserted teks sebelumnya |
| ^@ | sama sprt ^A dan hentikan sisip → command mode |
| ^Rx ^R^Rx | sisip isi register sebanyak x, secara literal |
| ^N ^P | penyelesaian teks sebelum, sesudah kursor |
| ^W | hapus kata sebelum kursor |
| ^U | hapus semua karakter inserted pada baris saat ini |
| ^D ^T | geser kiri, kanan satu lebar geser |
| ^Kc1c2 or c1←c2 | masukkan digraph \c1,c2\ |
| ^Oc | eksekusi c pada command mode utk sementara |
| ^X^E ^X^Y | gulung atas, bawah |
| <esc> or ^[ | pengabaian → command mode |
Penyalinan | |
| "x | gunakan register x untuk hapus berikutnya, ambil, letakan |
| :reg↵ | lihatkan isi dari semua register |
| :reg x↵ | lihatkan isi dari register x |
| ym | ambil teks sebanyak m |
| yy or Y | ambil baris yang sekarang ke dalam register |
| p P | letakan register setelah, sebelum posisi kursor |
| ]p [p | seperti p, P dengan pengaturan indent |
| gp gP | seperti p, P tinggal kursor setelah teks baru |
Penyisipan tingkat lanjut | |
| g?m | melakukan rot13 encoding sebanyak m |
| n^A n^X | +n, -n ke nomor dibawah kursor |
| gqm | format baris m untuk perbaiki lebar |
| :rce w↵ | rata tengah baris dengan jarak r ke lebar w |
| :rle i↵ | rata kiri baris dengan jarak r dengan indent i |
| :rri w↵ | rata kanan baris dengan jarak r ke lebar w |
| !mc↵ | saring baris of movement m sampai dengan c |
| n!!c↵ | saring n baris sampai dengan c |
| :r!c↵ | saring jarak r baris sampai dengan c |
Mode visual | |
| v V ^V | mulai/berhenti menyoroti karakter, baris, blok |
| o | tukar posisi kursor memulainya dengan penyorotan |
| gv | mulai penyorotan pada area visual sebelumnya |
| aw as ap | pilih sebuah kata, kalimat, paragraf |
| ab aB | pilih sebuah blok ( ), sebuah blok { } |
Membatalkan & perintah-perintah pengulangan | |
| uU | batalkan perintah terakhir, kembalikan baris terakhir yang telah diubah |
| . ^R | ulangi perubahan terakhir, lakukan lagi undo terakhir |
| n. | ulangi perubahan terakhir n |
| qc qC | catat, tambah typed karakter diregister c |
| q | stop pencatatan |
| @@ | ulangi perintah @ sebelumnya |
| :@c↵ | eksekusi register c sebagai sebuah Ex perintah |
Pergerakan kompleks | |
| - + | baris atas/bawah karakter awal non-blank |
| B W | spasi-kata terpisah kiri, kanan |
| gE E | akhir spasi-kata terpisah kiri, kanan |
| n_ | kebawah n-1 baris pada karakter awal non-blank |
| g0 | permulaan dari screen baris |
| g^ g$ | awal, akhir karakter dari screen baris |
| gk gj | screen baris ke atas, bawah |
| fc Fc | okurasi karakter c selanjutnya, sebelumnya |
| tc Tc | okurasi karakter c sebelum next, previous c |
| ; , | ulangi fFtT terakhir, dengan arah berlawanan |
| [[ ]] | awal dari section kebelakang, kedepan |
| [] ][ | akhir dari section kebelakang, kedepan |
| [( ]) | unclosed (, ) kebelakang, kedepan |
| [{ [} | unclosed {, } kebelakang, kedepan |
| [m ]m | awal, akhir backward, forward metode java |
| [# ]# | unclosed #if, #else, #endif backward, forward |
| [* ]* | awal, akhir dari /* */ kebelakang, kedepan |
Pencarian & penggantian | |
| /s↵ ?s↵ | cari depan, belakang untuk s |
| /s/o↵ ?s?o↵ | cari depan, belakang s ofset o |
| n or /↵ | ulangi pencarian kedepan terakhir |
| N or ?↵ | ulangi pencarian kebelakang terakhir |
| # * | cari kebelakang, kedepan kata dibawah kursor |
| g# g* | sama, tapi cari sebagian yang cocok |
| gd gD | defenisi lokal, global simbol bawah kursor |
| :rs/f/t/x↵ | ganti f dengan t dengan jarak r |
| x: g-semua okurasi, c-konfirmasi perubahan | |
| :rs x↵ | ulangi penggantian dengah r & x yang baru |
Spesial karakter pada pencarian pola/pattern | |
| . ^ $ | karakter single apa saja, awal, akhir baris |
| \< \> | awal, akhir kata |
| [c1-c2] | karakter tunggal dalam jarak c1..c2 |
| [^c1-c2] | karakter tunggal tidak dengan jarak |
| \i \I | sebuah identifier, meniadakan digits |
| \k \K | sebuah keyword, meniadakan digits |
| \f \F | sebuah nama file , meniadakan digits |
| \p \P | sebuah karakter printable, meniadakan digits |
| \s \S | sebuah spasi putih, spasi non-putih |
| \e \t \r \b | <esc>, <tab>, <↵>, <←> |
| \= * \+ | cocokan 0..1, 0..∞, 1..∞ sebelum atom |
| \| | memisahkan dua cabang ( ≡ or) |
| \( \) | kelompok pola dalam satu atom |
Ofset dalam perintah pencarian | |
| n or +n | n baris kebawah di kolom 1 |
| -n | n baris keatas di kolom 1 |
| e+n e-n | n karakter kanan, kiri ke akhir pencocokan |
| s+n s-n | n karakter kanan, kiri ke awal pencocokan |
| ;sc | eksekusi perintah pencarian sc berikutnya |
Mapping key & singkatan | |
| :map c e↵ | map c ↦ e mode normal & visual |
| :map! c e↵ | map c ↦ e mode sisip & cmd-line |
| :unmap c↵ :unmap! c↵ | hilangkan mapping c |
| :mk f↵ | tulis mappings saat ini, settings... ke file f |
| :ab c e↵ | tambah singkatan untuk c ↦ e |
| :ab c↵ | lihat singkatan diawali dengan c |
| :una c↵ | hilangkan singkatan c |
Tags | |
| :ta t↵ | lompat tag t |
| :nta↵ | lompat nth tag yang baru dalam list |
| ^] ^T | lompat tag dibawah kursor, kembali dari tag |
| :ts t↵ | list tag yang cocok dan pilih satu untuk lompat |
| :tj t↵ | lompat tag atau pilih satu jika banyak yang cocok |
| :tags↵ | cetak list tag |
| :npo↵ :n^T↵ | lompat kembali dari, ke nth tag yang lama |
| :tl↵ | lompat ke tag terakhir yang cocok |
| ^W] | pisah jendela dan lihatkan tag dibawah kursor |
| ^Wz or :pc↵ | tutup jendela preview tag |
Tanda dan gerakan | |
| mc | beri tanda pada posisi sekarang dengan c ∈[a..Z] |
| `c `C | lanjut tanda c posisi sekarang, C file apa saja |
| `0..9 | lanjut posisi exist terakhir |
| `` `" | lanjut posisi sebelum lompat, pd edit terakhir |
| `[ `] | lanjut awal, akhir teks yg dioperasikan sebelumnya |
| :marks↵ | cetak list marks aktif |
| :jumps↵ | cetak jump list |
| n^O | lanjut ke nth posisi lama di jump list |
| n^I | lanjut ke nth posisi baru di jump list |
Menggulung & multi-jendela | |
| ^E ^Y | gulung baris atas, bawah |
| ^D ^U | gulung setengah halaman atas, bawah |
| ^F ^B | gulung halaman atas, bawah |
| zt or z↵ | set baris sekarang di atas jendela |
| zz or z. | set baris sekarang di tengah jendela |
| zb or z- | set baris sekarang di bawah jendela |
| zh zl | gulung satu karakter ke kanan, kiri |
| zH zL | gulung setengah screen ke kanan, kiri |
| ^Ws or :split↵ | pisah jendela menjadi dua |
| ^Wn or :new↵ | buat jendela kosong baru |
| ^Wo or :on↵ | buat jendela sekarang menjadi satu screen |
| ^Wj ^Wk | pindahkan ke jendela bawah, atas |
| ^Ww ^W^W | pindahkan ke jendela bawah, atas (wrap) |
Ex-Perintah (↵) | |
| :e f | edit file f, kecuali perubahan telah terjadi |
| :e! f | edit file f selalu (secara default reload current) |
| :wn :wN | tulis file dan edit berikutnya, sebelumnya |
| :n :N | edit file dalam list berikutnya, sebelumnya |
| :rw | tulis jarak r ke file sekarang |
| :rw f | tulis jarak r ke file f |
| :rw>>f | menambahkan jarak r ke file f |
| :q :q! | keluar dan konfirmasi, keluar dan abaikan perubahan |
| :wq or :x or ZZ | tulis ke file sekarang dan keluar |
| <up> <down> | panggil kembali mulai dari yang sekarang |
| :r f | sisip isi dari file f bawah kursor |
| :args | lihatkan list argument |
Ex-jarak | |
| , ; | pisah dua nomor baris, set menjadi baris pertama |
| n | sebuah nomor baris absolut n |
| . $ | baris sekarang, akhir baris dalam file |
| % * | semua file, area visual |
| 't | posisi untuktanda t |
| /p/ ?p? | baris berikut, sebelumnya dimana p cocok |
| +n -n | +n, -n ke nomor baris sebelumnya |
Lain-lain} \cm:sh↵ :!c↵{mulai shell, eksekusi perintah c shell | |
| K | melihat kata kunci bawah kursor dengan man |
| :make↵ | mulai make, kesalahan membaca;loncat ke awal |
| :cn↵ :cp↵ | lihatkan kesalahan berikut, sebelumnya |
| :cl↵ :cf↵ | list semua kesalahan, kesalahan membaca dari file |
| ^L ^G | gambar ulang, lihatkan nama file dan posisi |
| g^G | lihatkan kursor kolom, baris, posisi karakter |
| ga | lihatkan ASCII nilai dari karakter di bawah kursor |
| gf | buka file dimana nama file bawah kursor |
| :redir>f↵ | mengarah ulang keluaran ke file f |
| ^@ ^K ^_ \ | keys yg tidak digunakan, tersedia utk mapping |