Temel Düzeyde VIM Editörünün Kullanımı
--
VIM, her platformda kullanabileceğiniz gelişmiş bir metin editörüdür. Diğer editörlere göre en büyük farklılıklarından biri, görsel bir arayüze sahip olmamasıdır. Bu editörün en güçlü özelliği ise farklı çalışma modlarının olmasıdır. Bu modlar doğru bir biçimde kullanıldığında verimliliği ciddi bir biçimde artırmaktadır.
Bu modlar; normal, insert, command ve visual şeklindedir.
İlk olarak Normal mod ile başlayalım.
Editör normal mod olarak açılır. Eğer farklı bir moda geçtiyseniz ve tekrar normal moda geçmek istiyorsanız ESC tuşunu kullanabilirsiniz.
Normal Modda Kullanabileceğiniz Bazı Tuşlar ve Görevleri
- Yön tuşlarını kullanabilirsiniz.
- h → sola gider.
- l → sağa gider.
- j → aşağı gider.
- k → yukarı gider.
- b → bulunduğunuz kelimenin başına gider. Eğer kelimenin başında noktalama işareti varsa noktalama işaretlerinden sonraki ilk karaktere gidecektir. Örneğin → …metin şeklinde bir kelime var. Siz t harfi üzerindesiniz. b tuşuna bastığınızda m harfine gidecektir. Eğer imlecin ilk karaktere odaklanmasını isterseniz, shift+b tuşlarına basmalısınız.
- w → kelime kelime ileriye doğru gider. Her kelimenin başına odaklanacaktır. Noktalama işaretleriyle ilgili kural burada da geçerlidir.
- e → kelime kelime ileriye doğru gidebilirsiniz. w karakterinden farkıysa kelimenin başına değil sonuna odaklanıyor olmasıdır. Noktalama işaretleriyle ilgili kural burada da geçerlidir.
- gg → sayfanın başına gider.
- $ → satır sonuna gider.
- 0 ile satır başına gider.
- Bu kullanımlara alternatif olarak farklı kullanım şekilleri de mevcuttur. Sayı ve hareket ile ilgili bir tuş
Örneğin:
4 h → 4 karakter sola gider.
2 w → iki kelime ileri gider.
3 shift+w → noktalama işaretlerini de kelimeye dahil ederek 3 kelime sonraya odaklanır. - u → yapılmış işlemler geri alır.
- d 1 l → sağa taraftan 1 karakter siler.
- d 3 h → sol taraftan 3 karakter siler.
- d 2 w → imlecin bulunduğu yerden itibaren sağa taraftan 2 kelime siler. (noktalama işaretlerini kelimelere dahil etmez)
- d 2 shift+w → imlecin bulunduğu yerden itibaren sağa taraftan 2 kelime siler. (noktalama işaretlerini kelimelere dahil eder)
- d $ → imlecin bulunduğu yerden sona kadar siler.
- d d → satırı siler ve normal modda bırakır.
- c c → satırı siler ve insert moduna geçer.
- c 4 l → sağa taraftan 4 karakter siler ve insert moduna geçer.
- r ve yeni_karakter → var olan bir karakteri yeni bir karakter ile değişirtirir.
Örneğin: r b, imlecin durduğu karakter b olarak değiştirilir ve normal mod ile devam edilir.
Kesme işlemi → seçim yapıldıktan sonra d tuşuna basılır.
Kopyala işlemi → seçim yapıldıktan sonra y tuşuna basılır.
Yapıştır işlemi → yapıştırılmak istenen yerde p tuşuna basılır.
Not: kes, kopyala ve yapıştır işlemlerinin tümü normal modda yapılır.
Insert Modda Kullanabileceğiniz Bazı Tuşlar ve Görevleri
- a → imlecin üzerinde bulunduğu karakterin sağından itibaren yazmaya başlar ve insert moduna geçer.
- i → imlecin üzerinde bulunduğu karakterin solundan itibaren yazmaya başlar ve insert moduna geçer.
- o → imlecin bulunduğu satırın altına yeni bir satır oluşturur ve imleç yeni satırın başına odaklanır. Insert moduna geçer.
- shift+o → imlecin bulunduğu satırın üstünde yeni bir satır oluşturur ve imleç yeni satırın başına odaklanır. Insert moduna geçer.
Command Modda Kullanabileceğiniz Bazı Tuşlar ve Görevleri
- :w → değişiklikleri kaydeder.
- :q → editörden çıkar.
- :wq → kaydeder ve çıkar.
- :q! → değişiklikleri kaydetmeden çıkar.
- q: → komut geçmişini görüntüler.
- :set number komutunu kullanarak satırların yanına numaralar konur. Bu kalıcı bir değişiklik değildir. Eğer kalıcı olmasını istiyorsanız,
~/.vimrc dosyasında ilk satıra set number ifadesini ekleyiniz.
Visual Modda Kullanabileceğiniz Bazı Tuşlar ve Görevleri
- v (characterwise) modda; l, h, 3w, 2j gibi tuşlarla seçim yapabilirsiniz.
- shift+v (linewise) modda; satır halinde seçimler yapar. Yön tuşlarını (Yukarı ve aşağı) kullanabileceğiniz gibi j ve k tuşlarını da kullanabilirsiniz.
- ctrl+shift+v (blockwise) modda; satırlar bloklar halinde seçilebilir.
Metin İçinde Arama İşlemleri
f ve aranacak_karakter → Aynı satırda imlecin bulunduğu yerden itibaren ileriye doğru arama yapar. Tek karakter yazabilirsiniz. Örneğin: f y → bulunulan noktadan itibaren ilk y harfini arar.
* ile arama → sayfanın tümünde imlecin üzerinde durduğu kelime ile arama yapar. n karakteri ile bulunan kelimeler üzerinde ileriye doğru gezer. shift+n yaptığınızda bulunan kelimeler üzerinde geriye doğru gezer. Eğer yıldız ile aradığımız şey bir kelimenin içerisinde ise bu kelime bulunmayacaktır. Bu arama kelimenin tamamı ile tutuyorsa çalışır. Örneğin: metin kelimesi üzerinde yıldıza bastığınızda yusufmetinkağan kelimesindeki metin kelimesi bulmaz.
g * ile arama → sadece yıldızlı aramaya göre farkı kelime içerisinde geçiyorsa o kelimeyi de bulacaktır. Örneğin: metin kelimesi üzerinde g * yaptığınızda sadece metin kelimelerini değil yusufmetinkağan gibi bir ifadeyi de bulur.
Yukarıdaki aramaları aşağıdaki şekilde de yapabilirsiniz.
/metin → tüm metin kelimelerini bulur. g * kullanımı gibi düşünebilirsiniz.
/\<metin\> → sadece metin kelimelerini bulur. * kullanımı gibi düşünebilirsiniz.
Arama Sonucu Bulunan Metinlerde Değişiklik Yapmak
:%s/yusuf/metin/g
% → işlem tüm sayfada yapılacak
s → değiştirme işlemi yapılacak
yusuf → eski kelime
metin → yeni kelime
g → bulunan kelimelerde değiştirme işlemi yapılacak
Not: değiştirilecek her kelime için onay almasını isterseniz, ifadenin sonuna confirm kelimesinin ilk harfi olan c harfini ekleyebilirsiniz. Bu durumda her kelime için onay isteyecektir. Eğer değiştirmesini isterseniz y harfine değiştirmesini istemezseniz n harfine basınız. Yukarıdaki örneğin onay almalı versiyonu aşağıdadır.
:%s/yusuf/metin/gc
Bu kullanım ile kelime değiştirme dışında işlemlerde yapabilirsiniz.
:%g/dilek/d
% → işlem tüm sayfada yapılacak
g → son parametredeki komutun çalışmasını sağlar.
dilek → içinde dilek kelimesi geçen satırlar
d → silme işlemi
Sayfadaki dilek kelimesi geçen satırları siler.
Kendinize iyi bakın,
Hoşça kalın :)