Genel

  • :help keyword - kelime için yardımı aç
  • :saveas file - dosyayı farklı kaydet
  • :close - bölümü kapat
  • K - imleç altındaki kelime için kılavuzu aç

İmleç hareketleri

  • h - imleci sola kaydır
  • j - imleci aşağı kaydır
  • k - imleci yukarı kaydır
  • l - imleci sağa kaydır
  • H - ekranın en üstüne kaydır
  • M - ekranın ortasına kaydır
  • L - ekranın en altına kaydır
  • w - bir sonraki kelimenin başlangıcına atla
  • W - bir sonraki kelimenin başlangıcına atla (kelime noktalama işareti içerebilir)
  • e - bir sonraki kelimenin sonuna atla
  • E - bir sonraki kelimenin sonuna atla (kelime noktalama işareti içerebilir)
  • b - bir önceki kelimenin başlangıcına atla
  • B - bir önceki kelimenin başlangıcına atla (kelime noktalama işareti içerebilir)
  • % - eşleşen karakterlere kaydır (varsayılan çiftler: '()', '{}', '[]' - daha fazla bilgi için :h matchpairs komutunu kullan)
  • 0 - satır başına atla
  • ^ - satır üzerindeki ilk boşluk olmayan karaktere atla
  • $ - satır sonuna atla
  • g_ - satırın boş olmayan son karakterine atla
  • gg - dokümanın ilk satırına git
  • G - dokümanın son satırına git
  • 5G - 5. satıra git
  • fx - sonraki x karakter konumuna atla
  • tx - sonraki x karakter konumunun yanına atla
  • Fx - önceki x karakter konumuna atla
  • Tx - önceki x karakter konumunun yanına atla
  • ; - f, t, F veya T hareketlerini tekrar et
  • , - f, t, F veya T hareketlerini geriye doğru tekrar et
  • } - sonraki paragrafa atla (veya fonksiyon/blok, kod yazarken)
  • { - önceki paragrafa atla (veya fonksiyon/blok, kod yazarken)
  • zz - imleci ekranda ortala
  • Ctrl + e - move screen down one line (without moving cursor)
  • Ctrl + y - move screen up one line (without moving cursor)
  • Ctrl + b - tam ekran geri kaydır
  • Ctrl + f - tam ekran ileri kaydır
  • Ctrl + d - yarım ekran ileri kaydır
  • Ctrl + u - yarım ekran geri kaydır
Tip İmleç hareketleri komutlarından önce verilen sayı kadar komut çalıştırılır. Örneğin, 4j 4 satır aşağıya gider.

Ekleme modu - yazma/ekleme modu

  • i - imleçden önce ekler
  • I - satır başına ekler
  • a - imleç sonrasına ekler
  • A - satır sonuna ekler
  • o - şu anki satırın altına yeni satır ekler ekler
  • O - şu anki satırın üstüne yeni satır ekler ekler
  • ea - kelimenin sonuna ekler
  • Esc - ekleme modundan çıkar

Düzenleme

  • r - tek karakterin yerine koyar
  • J - şu anki satırın altına ekler
  • gJ - join line below to the current one without space in between
  • gwip - reflow paragraph
  • cc - tüm satırı değiştirir (yerine koyar)
  • C - change (replace) to the end of the line
  • c$ - satır sonuna kadar değiştirir (yerine koyar)
  • ciw - change (replace) entire word
  • cw - kelimenin sonuna kadar değiştirir (yerine koyar)
  • s - karakteri siler ve metin ile değiştirir
  • S - satırı siler ve metin ile değiştirir (cc komutu ile aynı)
  • xp - iki harfi transpoze eder (sil ve yapıştır)
  • u - geri al
  • Ctrl + r - ileri al
  • . - son komutu tekrarla

Metin işaretleme (görsel mod)

  • v - görsel modu başlat, satırları işaretle, bir komut gir (y-yank gibi)
  • V - görsel modu tüm satırı işaretleyerek başlatır
  • o - diğer işaretlenmiş alanın sonuna gider
  • Ctrl + v - görsel blok moduna başlar
  • O - bloğun diğer köşesine gider
  • aw - kelimeyi işaretle
  • ab - () ile bloklar
  • aB - {} ile bloklar
  • ib - () içerisini bloklar
  • iB - {} içerisini bloklar
  • Esc - görsel moddan çık

Görsel komutlar

  • > - metni sağa kaydır
  • < - metni sola kaydır
  • y - işaretlenmiş metni kopyala
  • d - işaretlenmiş metni sil
  • ~ - harfleri büyükse küçük, küçükse büyük yap

Registerlar

  • :reg - register içeriğini göster
  • "xy - register x içerisini kopyalar
  • "xp - register x'in içeriğini yapıştırır
Tip Registerlar ~/.viminfo içerisinde depolanıyor ve vim'i yeniden başlattığınızda yüklenecektir
Tip Register 0 daima son kopyalama komutunun değerini taşımaktadır

İşaretler

  • :marks - işaretleri listele
  • ma - A işareti için konum belirle
  • `a - A işaretinin konumuna atla
  • y`a - A işaretinin konumundaki yazıyı kopyala

Macros

  • qa - bir makro kaydet
  • q - makro kaydetmeyi durdur
  • @a - bir makro çalıştır
  • @@ - son çalıştırılan makroyu yeniden çalıştır

Kes ve yapıştır

  • yy - tek satır kopyalar
  • 2yy - 2 satır kopyalar
  • yw - kelime kopyalar
  • y$ - satır sonuna kadar kopyalar
  • p - imleç sonrasına yapıştırır
  • P - imleç öncesine yapıştırır
  • dd - satırı (keser) siler
  • 2dd - 2 satırı (keser) siler
  • dw - kelime (keser) siler
  • D - satır sonuna kadar (keser) siler
  • d$ - satır sonuna kadar (keser) siler
  • x - karakter (keser) siler

Çıkış

  • :w - dosyayı kaydet, ama kapatma
  • :w !sudo tee % - dosyayı sudo kullanarak kaydet
  • :wq or :x or ZZ - dosyayı kaydet ve kapat
  • :q - (kaydedilmemiş değişiklikler varsa hata ver) kapat
  • :q! or ZQ - kaydedilmemiş değişiklikleri at ve kapat
  • :wqa - write (save) and quit on all tabs

Ara ve değiştir

  • /pattern - kalıbı ara
  • ?pattern - geriye doğru kalıbı ara
  • \vpattern - 'çok sihirli' kalıp: alfanumerik olmayan karakterleri düzenli ifade (regex) sembolleri olarak yorumlar (kaçış karakteri gerekmez)
  • n - aynı yönde aramaya devam et
  • N - ters yönde aramaya devam et
  • :%s/old/new/g - dosya boyunca tüm eskileri yenileriyle değiştirir
  • :%s/old/new/gc - dosya boyunca tüm eskileri yenileriyle onaylayarak değiştirir
  • :noh - eşleşen sonuçların vurgusunu kaldır

Birden fazla dosyada ara

  • :vimgrep /pattern/ {file} - kalıbı birden fazla dosyada ara
e.g. :vimgrep /foo/ **/*
  • :cn - sonraki eşleşmeye atla
  • :cp - önceki eşleşmeye atla
  • :copen - eşleşmeleri bir pencerede göster

Birden çok dosya ile çalışma

  • :e file - yeni tamponda dosyayı düzenle
  • :bnext or :bn - bir sonraki tampona geçer
  • :bprev or :bp - bir önceki tampona geçer
  • :bd - tamponu siler ve dosyayı kapatır
  • :ls - tüm açık tamponları listeler
  • :sp file - yeni tamponda dosya açar ve pencereyi böler
  • :vsp file - yeni tamponda dosya açar ve dikey olarak pencereyi böler
  • Ctrl + ws - pencereyi böler
  • Ctrl + ww - pencereyi değiştirir
  • Ctrl + wq - pencereyi kapatır
  • Ctrl + wv - pencereyi dikey böler
  • Ctrl + wh - imleci sol pencereye taşır (dikey bölme)
  • Ctrl + wl - imleci sağ pencereye taşır (dikey bölme)
  • Ctrl + wj - imleci aşağı pencereye taşır (yatay bölme)
  • Ctrl + wk - imleci yukarı pencereye taşır (yatay bölme)

Sekmeler

  • :tabnew or :tabnew file - yeni sekmede dosya aç
  • Ctrl + wT - kendi sekmeleri içerisinde şu anki bölünmüş pencereye geçer
  • gt or :tabnext or :tabn - bir sonraki sekmeye geçer
  • gT or :tabprev or :tabp - bir önceki sekmeye geçer
  • #gt - #. sekmeye geçer
  • :tabmove # - şu anki sekmeyi #. pozisyona taşır (sıralama 0'dan başlar)
  • :tabclose or :tabc - şu anki sekmeyi ve tüm pencereleri kapat
  • :tabonly or :tabo - şu anki sekme dışında hepsini kapat
  • :tabdo command - tüm sekmelerde komut çalıştır (örn. :tabdo q - açık tüm sekmeleri kapatır)