Diyelim ki çok basit bir dosyam var
a
b
c
d
e
ve her satırdan sonra boş satır eklemek istediğime karar verdim. Birkaç farklı yöntem hemen aklıma geldi. Biz belki sadece bunu (ve dolayısıyla kucaklama yetmezliği). Bir makroyu kaydedebilir qqo<ESC>jq
ve birkaç kez tekrarlayabiliriz.
O zaman diğer iki yöntem bana daha açık geldi.
İlk olarak, her satıra :norm
komut vereceğimi düşündüm o
. Ben de koşuyorum :%norm o
. Ama aslında olan şu ki, 5 boş satır ve ardından yukarıdaki gibi ayrılmamış satırlar alıyoruz. Bunu %norm
, vim'in mesaj sorununu bu beş satır dosyasının ilk beş satırında aşağıdaki normal komutu aldığını ifade ettiği için yorumluyorum . o
Komut yeni bir çizgi oluşturur ve vim bazı diğer tanımlayıcı tarafından gerçekte satır sayısına göre başvuran ve bu anlamda "aptal" dır.
Utanmıştım. Elbette. Yukarıdaki yöntemin çalışıp çalışmadığını görmek için birkaç şey denedim, ama ne yazık ki yapamadım. Meraktan, diğer favori toplu uygulama yöntemimi denedim. Bu beni denemeye yönlendirdi :g/^/norm o
. Benim için şaşırtıcı, bu iyi çalışıyor! Yani gözlerime göre, vim burada yukarıdaki gibi "aptal" değil ve satırları satır numarasından daha fazla referans alıyor.
Tam olarak neler oluyor?
:%s/$/\r/
ya böyle::%s/\n/\r\r/
. Paket, yeni satırların eşleştirilebileceği\n
, ancak\r
değiştirme değerlerinde olduğu gibi yazılması gerektiği .