Kullanım durumu hakkındaki yorumunuzu okuduktan sonra, makro yerine bir anahtar eşleme kullanabileceğiniz anlaşılıyor.
Benim .vimrc bu satırı var (nerede bulduğumu hatırlamıyorum):
nnoremap <Leader>s :%s/\<<C-r><C-w>\>//g<Left><Left>
Tanımladığınız kullanım senaryosuna benzer bir etkiye sahiptir, sizi komut satırına yerleştirir, böylece yapmanız gereken tek şey değiştirme ve enter tuşuna basmaktır, ancak bu durumda imlecinizin altındaki sözcüğün tüm tekrarlarını değiştirmek .
Sadece mevcut blok içinde değiştirmek için, aşağıdaki gibi bir şeyin çalışması gerektiğini düşünüyorum:
nnoremap <Leader>s m'va{<ESC>``:'<,'>s/\<<C-r><C-w>\>//g<Left><Left>
Tabii ki, istediğiniz herhangi bir anahtarla eşleyebilirsiniz.
Yukarıdakiler ne yapar: adlandırılmamış işaretçiyi kullanarak geçerli konumu işaretleyin, geçerli bloğu görsel olarak seçin, görsel moddan çıkın ve imleci kaydedilen konuma geri getirin (görsel seçim işaretleri hala ayarlanmıştır), komut moduna girin ve yedek komutu yazın , imlecin altındaki kelimeyi yerleştirerek ve <C-r><C-w>
imlecinizi değiştirmeyi yazacak şekilde konumlandırabilirsiniz.