Giriş
Birden fazla satırı yorum satırına dönüştürmek, IT dünyasında sıkça karşılaşılan bir ihtiyaçtır. Bu işlem genellikle konfigürasyon dosyalarında bir bölümün devre dışı bırakılması, hata ayıklama sırasında bir fonksiyonun geçici olarak kapatılması veya yeni bir yaklaşım test edilirken eski kodun korunması gibi senaryolarda kullanılır. Modern editörlerin çoğunda bu işlem tek bir kısayol ile gerçekleştirilebilirken, Vim gibi minimalist editörlerde bu özellik varsayılan olarak bulunmaz. Ancak Vim, öğrenildikten sonra hızlı ve verimli hale gelen üç farklı yöntem sunar. Ayrıca, yakın zamanda eklenen yerleşik yorumlama eklentisiyle birlikte bu işlemler daha da basitleşmiştir.
Bu rehberde, Vim'de birden fazla satırı yorum satırına dönüştürmenin ve tekrar geri almanın üç farklı yolunu detaylı olarak inceleyeceğiz: görsel blok modu, substitute komutu ve yerleşik yorumlama eklentisi. Her yöntemin avantajlarını, kullanım adımlarını ve dikkat edilmesi gereken noktaları ele alacağız.
1. Görsel Blok Modu ile Yorum Satırı Oluşturma
Görsel blok modu, Vim'in en güçlü özelliklerinden biridir ve birden fazla satırın aynı anda düzenlenmesini sağlar. Bu yöntem, özellikle birden fazla satırın başına aynı yorum karakterini eklemek istediğinizde oldukça kullanışlıdır. Aşağıda adım adım nasıl uygulanacağını görebilirsiniz:
Başlangıç noktasını belirleyin: İmleci, yorum yapmak istediğiniz ilk satırın ilk sütununa getirin.
Görsel blok moduna girin: Windows sistemlerinde
Ctrl+Vkısayolu genellikle kopyalama işleviyle eşleştiğinden, görsel blok moduna girmek içinCtrl+Qkullanın. Linux ve macOS sistemlerindeyseCtrl+Vkullanabilirsiniz.Satırları seçin:
jtuşuna (veya aşağı ok tuşuna) basarak yorum yapmak istediğiniz tüm satırları seçin. Eğer yorum yapmak istediğiniz satırlar arasında boş satırlar varsa, bunlar da otomatik olarak seçilecektir.Yorum karakterini ekleyin:
Shift+Ituşlarına basın. Bu, imleci satırın en soluna yerleştirerek insert moduna geçmenizi sağlar. Ardından, kullanmak istediğiniz yorum karakterini yazın. Örneğin, shell betikleri ve konfigürasyon dosyaları için#, C, JavaScript ve Go gibi diller için//, SQL ve Lua için--kullanabilirsiniz.İşlemi tamamlayın:
Esctuşuna basın. Yorum karakteri, tüm seçili satırların başına otomatik olarak eklenecektir. Bu işlem sırasında ilk satırda yorum karakterinin görünmemesi normaldir;Esctuşuna bastıktan sonra tüm satırlara uygulanacaktır.
Önemli Not: Eğer yorum karakteri iki karakterden oluşuyorsa (örneğin
//), tüm karakteriShift+Imodundayken yazmanız gerekir. Vim, tüm karakterleri tüm satırlara uygulayacaktır.
Uyarı: Bu yöntem, yorum yapmak istediğiniz satırların ilk sütunundan başladığında tüm satırlara (hatta boş satırlara) yorum karakterini ekler. Eğer satırların ortasından başlarsanız, Vim, bloktan daha kısa olan satırları atlar. Bu durumda aşağıda açıklanan
substituteyöntemini kullanmanız daha uygun olacaktır.
Görsel Blok Modu ile Yorum Satırlarını Silme
Yorum satırlarını silmek için de aynı görsel blok modunu kullanabilirsiniz. İşlem adımları şu şekildedir:
Başlangıç noktasını belirleyin: İmleci, silmek istediğiniz ilk yorum karakterinin üzerine getirin.
Görsel blok moduna girin:
Ctrl+V(veya Windows'taCtrl+Q) tuşlarına basın.Satırları seçin:
jtuşuna basarak tüm yorumlu satırları seçin. Yorum karakteri birden fazla karakterden oluşuyorsa (örneğin//),ltuşuna basarak blok genişliğini ayarlayın.Yorumları silin:
xveyadtuşuna basarak seçili bloğu silin. Tüm yorum karakterleri aynı anda silinecektir. Eğer yorum karakterinden sonra bir boşluk bırakılmışsa, boşluğu da blok içine dahil etmeyi unutmayın.
2. Substitute Komutu ile Yorum Satırı Oluşturma
Substitute komutu (:s), Vim'in metin düzenleme işlemlerinde oldukça güçlü bir araçtır. Bu komut sayesinde, birden fazla satırı tek bir komutla düzenleyebilirsiniz. Substitute komutu, özellikle satır numaralarını bildiğinizde veya blok çok büyük olduğunda oldukça kullanışlıdır. Örneğin, 10. ve 20. satırlar arasındaki tüm satırları yorumlamak için aşağıdaki komutu kullanabilirsiniz:
:10,20s/^/#/
Bu komutun parçalarını açıklamak gerekirse:
10,20: Yalnızca 10. ve 20. satırlar arasındaki satırlara uygulanır.s/^/#/: Satırın başına (^)#karakterini ekler.
Substitute komutunu kullanırken, satır aralığını manuel olarak belirtmek yerine, görsel modda satırları seçerek otomatik olarak aralığı oluşturabilirsiniz. Bunun için:
Satırları seçin:
Vtuşuna basarak görsel satır moduna girin ve yorum yapmak istediğiniz satırları seçin.Komutu çalıştırın:
:tuşuna basın. Vim otomatik olarak'<,'>aralığını ekleyecektir. Ardından komutu tamamlayın::'<,'>s/^/#/
Substitute komutunun diğer kullanımları da oldukça esnektir. Örneğin:
%: Tüm dosyayı yorumlamak için kullanılır..,+4: Mevcut satır ve aşağıdaki 4 satırı yorumlamak için kullanılır.
İpucu: Eğer sık sık satır aralıklarını kullanıyorsanız, Vim'de satır numaralarını görüntülemek işinizi kolaylaştıracaktır. Satır numaralarını görüntülemek için
:set numberkomutunu kullanabilirsiniz.
Substitute Komutu ile Yorum Satırlarını Silme
Yorum satırlarını silmek için substitute komutunu kullanırken, yorum karakterini silmeniz gerekir. Örneğin, 10. ve 20. satırlar arasındaki yorumları silmek için:
:10,20s/^#//
Bu komut, her satırın başındaki # karakterini siler. Eğer yorum karakteri iki karakterden oluşuyorsa (örneğin //), substitute komutunun ayırıcı karakterini değiştirerek daha okunabilir bir komut oluşturabilirsiniz. Örneğin:
:'<,'>s#^//##
Bu komutta # karakteri, substitute komutunun ayırıcı olarak kullanılmıştır. Böylece // karakterleri daha okunaklı hale gelir.
3. Normal Komutu ile Girintiyi Koruma
Yukarıda bahsedilen yöntemler, yorum karakterini satırın en soluna yerleştirir. Eğer kodunuzun girintisini korumak ve yorum karakterini ilk girintili karakterin önüne yerleştirmek istiyorsanız, :normal komutunu kullanabilirsiniz. Bu komut, bir satır aralığına normal mod komutlarını uygulamanızı sağlar. Örneğin:
:'<,'>norm I#
Bu komut, seçili satırların her birine I# komutunu uygular. I komutu, normal modda insert moduna girerek imleci satırın ilk girintili karakterine yerleştirir ve ardından # karakterini ekler. Bu sayede, kodunuzun girintisi korunmuş olur. Tüm işlemler tek bir geri alma işlemi (u) ile geri alınabilir.
4. gc Komutu ile Yorumları Toggle Etme
Modern Vim ve Neovim sürümlerinde, gc komutu sayesinde yorumları kolayca toggle etmek mümkündür. Bu komut, dosya türüne göre otomatik olarak doğru yorum karakterini seçer. Örneğin:
#shell betikleri ve konfigürasyon dosyaları için.//C, JavaScript ve Go gibi diller için."vimrc dosyaları için.
Neovim 0.10 ve üzeri sürümlerinde bu özellik varsayılan olarak etkindir. Vim kullanıcıları içinse, Vim 9.1.0375 ve üzeri sürümlerinde yerleşik bir eklenti olarak sunulmaktadır. Bu eklentiyi etkinleştirmek için:
:packadd comment
Veya kalıcı olarak etkinleştirmek için ~/.vimrc dosyanıza aşağıdaki satırı ekleyin:
packadd comment
Eklenti yüklendikten sonra, yorumları toggle etmek için:
Satırları seçin:
Vtuşuna basarak görsel satır moduna girin ve yorum yapmak istediğiniz satırları seçin.Toggle işlemini uygulayın:
gctuşuna basın. Seçili satırlar yorumlanır veya yorumdan çıkarılır.
Eğer mevcut satırı yorumlamak veya yorumdan çıkarmak istiyorsanız, gcc komutunu kullanabilirsiniz. Ayrıca, hareket komutlarıyla birlikte de kullanılabilir. Örneğin, gcip komutu, mevcut paragrafı yorumlamak veya yorumdan çıkarmak için kullanılır.
Not: Eğer Vim'in eski bir sürümünü kullanıyorsanız, commentary.vim eklentisi aynı işlevi görebilir.
Hızlı Başvuru
Aşağıda, Vim'de yorumlama işlemlerini hızlıca gerçekleştirmek için kullanabileceğiniz komutların bir özeti bulunmaktadır:
| İşlem | Kısayol veya Komut |
|---|---|
| Bir bloğu yorumlama | Ctrl+V, satırları seçin, Shift+I, yorum karakterini yazın, Esc |
| Bir bloğu yorumdan çıkarma | Ctrl+V, yorum sütununu seçin, x |
| 10-20. satırları yorumlama | :10,20s/^/#/ |
| Görsel seçimdeki satırları yorumlama | :'<,'>s/^/#/ |
| 10-20. satırları yorumdan çıkarma | :10,20s/^#// |
| Girintiyi koruyarak yorumlama | :'<,'>norm I# |
| Yorumları toggle etme (Neovim 0.10+, Vim 9.1.0375+) | Satırları V ile seçin, gc tuşuna basın |
| Mevcut satırı yorumlama/çıkarma | gcc |
| Tüm işlemi geri alma | u |
Sonuç
Vim'de birden fazla satırı yorum satırına dönüştürmek ve geri almak için kullanabileceğiniz birçok yöntem bulunmaktadır. Eğer nadiren yorumlama işlemi yapıyorsanız, Ctrl+V, Shift+I, Esc kombinasyonu en hızlı ve basit yöntemlerden biridir. Ayrıca, substitute komutu sayesinde belirli satır aralıklarını veya tüm dosyayı kolayca yorumlayabilirsiniz. Eğer yorumlama işlemi günlük rutininizin bir parçasıysa, gc komutunu kullanarak yorumlama ve yorumdan çıkarma işlemlerini tek bir adımda gerçekleştirebilirsiniz. Bu sayede, verimliliğinizi artırabilir ve kod düzenleme sürecinizi hızlandırabilirsiniz.



