VIM

https://vim.rtorr.com


 Vim, Linux ve Unix sistemlerinde kullanılan gelişmiş bir metin editörüdür. Hem çok güçlü hem de esnek bir editör olup, profesyonel geliştiriciler ve sistem yöneticileri tarafından yaygın olarak kullanılır. Ancak Vim, başlangıçta biraz korkutucu olabilir çünkü geleneksel nano gibi temel bir kullanıcı arayüzüne sahip değildir. Bunun yerine, Vim'in bir mod sistemi vardır ve kullanmaya başlamadan önce birkaç temel komutu öğrenmek gereklidir.


📜 Vim Komutu: Detaylı Anlatım + Modern Kullanım Örnekleri


🧾 1. Vim Nedir?

  • Vim, Vi IMproved'in kısaltmasıdır ve Vi editörünün gelişmiş bir versiyonudur.

  • Vi 1976’da Bill Joy tarafından yaratıldı, ve Vim 1991 yılında Bram Moolenaar tarafından geliştirildi.

  • Vim, terminal tabanlı, klavye odaklı ve modüler bir editördür.

    • Normal mod: Komutlar ve gezinme için

    • Insert mod: Yazma ve düzenleme için

    • Visual mod: Seçim yapma için


⚙️ 2. Vim’in Çalışma Modları

Vim, üç ana modda çalışır:

  1. Normal Mod (Varsayılan Mod):

    • Komutları girebileceğiniz ve metin üzerinde gezinip düzenlemeler yapabileceğiniz moddur.

    • Çıkmak, kopyalamak, yapıştırmak gibi işlemler burada yapılır.

  2. Insert Mod:

    • Burada metin yazabilirsiniz. Diğer editörlere benzerdir.

    • Insert mod'a girmek için i tuşuna basmanız gerekir.

  3. Visual Mod:

    • Metin seçmek için kullanılır.

    • Seçim yapmak için v tuşuna basılır.


🧭 3. Vim Temel Komutları

Vim Başlatma:

bash
vim dosya_adı

Modlar Arası Geçiş:

  • Normal mod'a geçmek için: Esc

  • Insert mod'a geçmek için: i veya I (başlangıca gitmek için)

  • Visual mod'a geçmek için: v

Vim’den Çıkmak:

  • Çıkmak ve kaydetmek: :wq (write + quit)

  • Sadece kaydetmek: :w

  • Çıkmak (kaydetmeden): :q!

  • Çıkmak: :q (eğer dosya kaydedildiyse)

Metin Düzenleme:

  • Karakter silme: x

  • Satır silme: dd

  • Satır kopyalama: yy

  • Satır yapıştırma: p

  • Satır başına git: 0

  • Sonraki kelimeye git: w

  • Önceki kelimeye git: b

  • Satırın sonuna git: $


🌍 4. Vim’de Gezinme

  • Sayfa yukarı git: Ctrl + u

  • Sayfa aşağı git: Ctrl + d

  • Satır yukarı git: k

  • Satır aşağı git: j


5. Vim’de Arama ve Değiştirme

Arama:

  • Metin arama: /kelime

    • n ile bir sonraki bulguyu, N ile önceki bulguyu arayabilirsiniz.

Değiştirme:

  • Bir kelimeyi değiştir: cw (kelimeyi sil ve yaz)

  • Satır değiştir: C (satırın geri kalanını sil ve yaz)

  • Tüm dosyada değiştirme: :%s/eski_yeni/g

    • g tüm eşleşmeleri değiştirmek için kullanılır.


🛠️ 6. Vim Gelişmiş Özellikler ve Konfigürasyon

Vim’in güçlü özellikleri, onu diğer metin editörlerinden farklı kılar.

Syntax Highlighting (Sözdizimi Renklendirme)

bash
syntax on
  • Bu, dilin sözdizimini otomatik olarak renklendirir.

Autocompletion (Otomatik Tamamlama)

bash
:set completeopt=menuone,noinsert,noselect
  • Otomatik tamamlama özelliklerini açar.

Yazı Tipi Ayarları:

bash
:set guifont=Monospace\ 12

Eklentiler ve Pluginler:

  • Vim’in gücünü artıran çok sayıda eklenti vardır (örneğin, Vundle, Pathogen, veya vim-plug ile eklenti yüklemek).


💡 7. Vim ile Programlama ve Kod Düzenleme

  • Vim, programlama için çok popülerdir ve birçok dili destekler:

    • Python, JavaScript, C++, Ruby, PHP, ve daha fazlası için syntax highlighting ve otomatik tamamlama desteği sağlar.

  • Kod yazarken kullanabileceğiniz bazı yararlı komutlar:

    • Ctrl + r : Geri al (undo)

    • Ctrl + Shift + r: Yinele (redo)

    • :%s/old/new/g: Tüm dosyada metin değiştir


🧩 8. Vim’i Kişiselleştirme (.vimrc)

Vim’i kişiselleştirmek ve verimliliğinizi artırmak için ~/.vimrc dosyasını düzenleyebilirsiniz.

Örnek bir .vimrc içeriği:

bash
set number " Satır numaralarını göster set tabstop=4 " Tab boyutunu 4 yap set shiftwidth=4 " İleriye doğru girinti set expandtab " Tab yerine boşluk kullan syntax enable " Syntax highlighting aç set background=dark " Karanlık tema set mouse=a " Fareyi etkinleştir

🎯 9. Vim’in Modern Kullanım Alanları

Kod yazma ve düzenleme:

  • Yazılım geliştirme, özellikle Python, JavaScript, C, C++ gibi dillerde kod yazarken Vim çok etkilidir.

Yapılandırma dosyaları düzenleme:

  • /etc/nginx/nginx.conf veya /etc/ssh/sshd_config gibi dosyalar genellikle Vim ile düzenlenir.

Çoklu dosya düzenleme:

  • Vim’de birden fazla dosya açabilir ve bunlar arasında geçiş yapabilirsiniz: :e dosya_adı ile yeni bir dosya açabilirsiniz.


🛠️ 10. Vim ve Alternatifleri

Vim, başlangıçta zorlayıcı olabilir ama öğrenildikçe inanılmaz derecede güçlü bir araç haline gelir. İşte bazı Vim alternatifleri:

EditörÖzellik
nanoBasit, kullanıcı dostu, terminal tabanlı
emacsGelişmiş, tamamen özelleştirilebilir bir editör
VSCodeModern GUI tabanlı, gelişmiş özellikler ve eklentiler
Sublime TextHızlı, GUI tabanlı ve gelişmiş kod düzenleyici

📚 Sonuç:

Vim, gelişmiş özelliklere sahip, hızlı ve verimli bir metin editörüdür. Başlangıçta biraz karmaşık olsa da, güçlü özellikleri ve özelleştirilebilirliği ile profesyonel kullanıcılar için vazgeçilmezdir. Öğrenmeye başlamak için temel komutları ve modları anlamak yeterlidir.