it-swarm-tr.com

"Vi" da imleçten satır sonuna kadar sil

Muhtemelen okuduğum tüm vi belgelerinde milyonlarca kez baktım, ancak imlecin satır sonuna kadar silme komutunu bulamıyorum.

334
Falmarri

Komuta dw geçerli imleç konumundan bir sonraki Word karakterinin başına kadar silinir. Komuta d$ (not, bu bir dolar işareti, 'S' değil) geçerli imleç konumundan geçerli satırın sonuna kadar silinir. D ile eşanlamlıdır d$.

499
Tok

Diğerlerinin de belirttiği gibi: d$ veya D (shift-d) imlecin bulunduğu konumdan satırın sonuna kadar silinir.

Genellikle daha yararlı bulduğum şey c$ veya C (shift-c) çünkü imleç konumundan satırın sonuna kadar silinir ve sizi [INSERT] moduna geçirir.

54
Brad Johnson

Vi ile ilgili güzel şeylerden biri mantıksal komut yapısıdır. d ve ardından bir hareket komutu d bu hareketin hedefini siler. $ satırın sonuna gider (anımsatıcı: normal ifadelerde olduğu gibi). Yani d$ satırın sonuna kadar siler. Benzer şekilde, e geçerli Word'ün e nd öğesine, w ise bir sonraki satırın başına gider w ord; böylece de geçerli Word'ün sonunu siler ve dw ek olarak aşağıdaki boşlukları da siler.

Muhtemelen D'yi kullanmak istiyorsunuz. İmleci silmek istediğiniz ilk karaktere getirin, sonra shift-D'ye basın. Herşey gitti. Aslında, varsayılan kesme tamponundadır, böylece P veya p'yi tekrar yapıştırabilirsiniz.

Dp (satır sonuna kadar sil, sonra geri koy) kullanıyorum, başka bir satırın sonuna geçiyorum, sonra aynı metni bu diğer satırın sonuna yapıştırmak için tekrar p. İki veya daha fazla yere karmaşık URL koymanız gereken yapılandırma dosyalarında harikalar yaratır.

21
Bruce Ediger

İmleç konumundan sonra bir satır aralığını silmek için, 3D imleçten satırın sonuna kadar ve sonraki iki satır tamamen silinir (yani, imleç konumundan sonra 3 satır silinir).

örneğin. aşağıdaki metin için (imleç |),

If there's a cursor |in the line
here
we
go

Komutu kullanma 3D çıktı olacak:

If there's a cursor
go
1
Nick Bull

Bir ekleme modu kısayolunun kullanışlı olabileceğini düşünüyorum.

Ekleme modunda belki satır sonuna kadar değişmeye başlamak daha iyi olurdu (bunu ~/.vimrc):

inoremap <C-l> <C-o>C

Yani, söylendiği gibi, D normal modda ve Ctrl+l ekleme modunda. Gördüğünüz gibi, C çizginin sonuna kadar değişmeye başlar.

<C-o> ......... insert normal keystroke in insert mode

Ben seçtim Ctrl-l çünkü l parmaklarınızın altında. Ctrl-k digraph eklemek için zaten kullanılıyor.

:h i_Ctrl bazı ücretsiz tuş bağlamaları için ve vim eylemleri gerçekleştirmek için yeni kısayollar söz konusu olduğunda aslında daha büyük bir sorundur.

1
SergioAraujo