Normal modda bir kelimenin yanık bir kelimeyle değiştirilmesi


25

Bir kelimeyi daha önce söylediğim başka bir kelimeyle değiştirmek zorunda kaldığımda, genellikle benim için doğal olmayan bir iş akışı kullanırım:

Diyelim ki bu metin bende:

foo bar buzz

Ve ben daha önce çektiğim şeyin fooyerini alıp değiştirmek istiyorum bar.

Yandıktan sonra fooaşağıdaki seçenekleri görüyorum:

seçenek 1

  1. İmleci üzerine baryerleştirinw

  2. Put fooönünde barolanP

  3. İmleci bkalanın üzerine getirin barve sözcüğü silinde

seçenek 2

  1. İmleci çubukla w

  2. Silmek deiçin kullanınbar

  3. İle kayıt 0 içeriğini koyun "0P(ben sildim beri bar, foobir basit ile artık erişilebilir değil p)

Her iki yol da bana çok karmaşık görünüyor ve bu eylemi gerçekleştirmenin daha etkili bir yolu olduğuna eminim, ancak nasıl olduğunu bulamıyorum. Bu fikir, silme ve koyma eylemlerini yalnızca birinde birleştirmek veya en azından istenen kelimeyi basit bir şekilde koyabildiğim için silinmiş sözcüğü yank kayıt defterinde tutmaktan kaçınmak olacaktır p.

Ayrıca değiştirme modunun tetiklendiğini de biliyorum Rancak bu, yanılanı koymak için izin vermiyor.

TL; DR : Bir kelime yank sicilinin içeriğiyle nasıl değiştirilir?

Yanıtlar:


31

Zaten çekti ettik varsayarsak fooile yeveya benzeri bir şey, ve imleç yerde açık olduğunu foo, kullanabilirsiniz Wvep:

  • Wgitmek için bar(bu açıkça isteğe bağlıdır ve mevcut imleç pozisyonuna bağlı olacaktır);
  • v görsel modu başlatmak için;
  • ekelimenin sonuna gitmek için (burada, diğer hareketleri de kullanabilirsiniz iw);
  • pyapıştırmak için foo; bu, geçerli görsel seçimi değiştirir (adsız sicile yerleştirilir "").


6

Bunu yapmanın başka bir yolunu buldum, seçenek 2'ye biraz benziyor ancak kayıtların durumunu karıştırmama avantajına sahip.

Buradaki fikir, " kara delik yazmacını " kullanmaktır: Bu yazara erişilebilir "_ve bu yazının içine yazabileceğiniz ancak okumayacağınız bir özelliği vardır, bu nedenle bu yazmacanın içine giren herhangi bir şeyi tamamen ortadan kaldırmasını sağlayan kara delik gibi. Burada silme fooişleminden sonra bile yank sicilinde kalır bar.

Bu çözümde, yanmadan sonra meydana gelen akış aşağıdaki gibi fooolacaktır:

  • Gitmek barile W(veya tabii herhangi gerekli kelime)
  • Silmek için "kara delik kayıt" kullanma barile"_de
  • fooYank siciline koyarak P. Yank sicili hala kara deliğe girdiğinden fooberi içeriyor bar.

Bunun @ Carpersmoker’in (vimgolf @Carpetsmoker’in kazandığı ) kazandığından daha iyi bir çözüm olduğundan emin değilim, ancak kara delik kasası hakkında bir fikrim yoktu ve bazılarının bunu bilmek isteyebileceğini düşündüm.


3
  1. "Foo" nun başına git. Tuşuna basın yiw. Bu iç kelimeyi batırıyor.

  2. Harfe basarak "bar" a gidin w. Ardından onu seçin ve geri çekin:viw"0p

Ben kullanım ciwve yiwçok.


4
Gibi metin nesnelerinin kullanımı iwilginçtir, ancak çözümünüz aslında @ CarpetSmoker’inkiyle aynıdır: ikinci sözcüğü görsel olarak seçme ve birincisini koyma. Ayrıca, çözümünüzün kayıt pkullanmak yerine basit bir şekilde çalışacağını düşünüyorum "0.
statox

1
  • İmleç, kelimenin herhangi bir yerinde olduğunda,

    • yiw- sözcüğü yank ve 0kayıt defterinde saklayın .
  • Değiştirilecek hedef sözcüğe gidin

    • ciw sözcüğü silecek ve ekleme moduna geçirecektir.
    • ctrl-r. Bir "çağrılacak kayıt soran açılır.
    • 0 yanık kelimeyi yapıştıracak.

Yanmış sözcükler (normalde!) 0Kayıt defterine kaydedilir. :registersSaklanan tamponları görüntülemek için bkz.. Bu uzun bir prosedür gibi görünebilir, IMHO bu çok daha sofistike sicil numaralarına kapıyı açar.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.