2017-05-22 38 views
5

di{ alıntıları için di" ve HTML etiketleri için dit kullanıyorum.Slashes ve yıldız işaretleri nasıl silinir veya yanar?

Sıklıkla CSS ile çalışıyorum. Slashes veya yıldız işaretleri silmek istiyorum. Örneğin:

/* This is a comment. Delete or yank me. ;) */ 
.button { 
    content: 'Change my comment.'; 
} 

İşlevler vb. Ile yapmak istemiyorum. Bu anahtar kelimeleri tüm varyasyonlarla nasıl eşlerim? (Özel ihtiyacım delete inside, yank inside, delete around, delete and go insert mode (ci/) kadar) gibi:

di/ 
yi/ 
ci/ 
ya/ 
da/ 
di* 
ya* 

vs ...

Bir görsel mod eşlemesi ve bir operatör bekleyen modunu birleştirerek kendi metin nesneleri tanımlayabilir

cevap

11

haritalaması.

xnoremap i/ :<C-u>normal! T/vt/<CR> 
onoremap i/ :normal vi/<CR> 

yerleşik olanlar gibi kullanabilirsiniz:: ci/, vi/, di/, yi/

Bu Snippet'iniz i/ metin nesnesi oluşturur.

Ve bu bir a/ metin nesnesi oluşturur:

xnoremap a/ :<C-u>normal! F/vf/<CR> 
onoremap a/ :normal va/<CR> 

yerleşik olanlar gibi kullanabilirsiniz: ca/, va/, da/, ya/.


BONUS: aynı zamanda mükemmel targets.vim vardır

for char in [ '_', '.', ':', ',', ';', '<bar>', '/', '<bslash>', '*', '+', '%', '-', '#' ] 
    execute 'xnoremap i' . char . ' :<C-u>normal! T' . char . 'vt' . char . '<CR>' 
    execute 'onoremap i' . char . ' :normal vi' . char . '<CR>' 
    execute 'xnoremap a' . char . ' :<C-u>normal! F' . char . 'vf' . char . '<CR>' 
    execute 'onoremap a' . char . ' :normal va' . char . '<CR>' 
endfor 
+0

Vay! Snippet'iniz harika. Teşekkür ederim. :) –

4

: burada istiyorum olanlar dahil en az yeni metin nesneleri oluşturur benim vimrc bir kolaylıkla genişletilebilir pasajıdır Bu metin nesnelerini içeren eklenti ve diğerlerinin de büyük bir kısmı. Özellikle kendi kimliğinizi tanımlamak istemiyorsanız, kontrol etmeye değer olabilir.

İlgili konular