Neovim ve VS Code arasında

Editör seçerken ne kadar ayarlanabildiği kadar, o ayarların ne kadar bakım istediğine de bakıyorum. Neovim'de kendi düzenini kurabilmek güzel. Kısayolları, dosya aramayı ve terminalle ilişkisini istediğin gibi değiştirebiliyorsun.


Ama bir eklenti değiştiğinde işin ortasında onunla uğraşmak da mümkün. Ayar yapmayı sevdiğin bir gün sorun olmuyor. Sadece projeyi açıp çalışmak istediğinde ise başka bir işe dönüşüyor.

VS Code tarafında birçok şey hazır geliyor. Projenin ihtiyaç duyduğu eklentiyi kurup devam etmek daha kolay olabiliyor. Karşılığında daha kalabalık bir arayüz ve daha fazla kaynak kullanımı var.

Ben editör seçimini biraz da o gün yaptığım işe göre düşünmeyi daha mantıklı buluyorum. Terminalde küçük bir dosyayı değiştirmekle bir uygulamada debug yapmak aynı ihtiyaç değil. Birini seçince diğerini tamamen bırakmak gerekmiyor.

Vim hareketlerini seviyorsan onları da ayrı değerlendirebilirsin. Editör değişse bile alıştığın hareketlerin bir kısmını yanında götürmek mümkün.

Aynı işi iki editörde düşünmek

Örneğin bir fonksiyonun nerelerde çağrıldığını bulup parametresini değiştireceğim. Dosyayı açmak yetmiyor. Referansları bulmam, değişiklikten sonra tip hatalarını görmem ve gerekirse uygulamayı debug etmem gerekiyor.

Bu iş için Neovim'de dil sunucusunun ve ilgili kısayolların ayarlı olması lazım. Dil sunucusu, editöre otomatik tamamlama, tanıma gitme ve hata bilgisi sağlayan süreç. Neovim bu bilgiyi kullanabiliyor ama kurulumun ayrıntısı seçtiğin eklentilere bağlı.

VS Code'da da proje için gerekli dil desteği veya eklentiler gerekiyor. Bir projeyi değerlendirirken baktığım şey, bu iş akışının ne kadarının hazır olduğu. Referans arama, yeniden adlandırma ve debug adımlarında sürekli dışarı çıkmam gerekiyorsa kurulum benim için henüz tamamlanmış değil.

Vim hareketleri ise bu araçlardan ayrı bir alışkanlık. Normal modda w ile sonraki kelimeye geçmek veya ciw ile imlecin üzerindeki kelimeyi değiştirmek gibi hareketlerden bahsediyorum. Bunları sevmek, bütün geliştirme ortamını Neovim'e taşımayı zorunlu kılmıyor.