Odpowiedzi:
Polecenie dwusunie z bieżącej pozycji kursora do początku następnego znaku słowa. Polecenie d$(uwaga, to znak dolara, a nie „S”) usunie się z bieżącej pozycji kursora do końca bieżącego wiersza. Djest synonimem d$.
dw
, ale chyba po prostu założyłem, że będzie polecenie „usuń resztę tego wiersza”. Na przykład moja linia ma ip=|10.1.1.1
z |
czym położenie kursora. Czy istnieje polecenie, które usunie wszystkie 10.1.1.1
?
d$
:!rm -f %
i wtedy :q!
. To usuwa cały plik.
d^
('d' + karetka) ... w zasadzie d + dowolny znak, który normalnie przesunie kursor, ale myślę, że sam się uczę Vima, więc mogę się mylić.
Jak wspomnieli inni: możesz użyć d$
lub D
( shift- d), aby usunąć z pozycji kursora do końca linii.
Co ja zwykle znaleźć bardziej użyteczne jest c$
lub C
( shift- c), ponieważ będzie to usunąć z pozycji kursora do końca linii i umieścić w trybie [INSERT].
D
Moim zdaniem jest to o wiele lepsze niż w przypadku większości ludzi, ponieważ nie przesuwa cię to spacja na końcu linii.
i
który wstawia przed kursorem i a
który wstawia za kursorem. Jeśli kursor znajduje się na końcu linii, a chcesz wstawić na końcu linii, możesz po prostu użyć a
.
Jedną z miłych rzeczy w vi jest jej logiczna struktura poleceń. d
następnie za pomocą polecenia ruchu d eletes dla celu tego ruchu. $
przesuwa się na koniec linii (mnemoniczny: jak w wyrażeniach regularnych). d$
Usuwa więc do końca linii. Podobnie, e
przenosi się do e ND bieżącego słowa, i w
przesunie się na początek następnego wag ord; de
usuwa więc koniec bieżącego słowa i dw
dodatkowo usuwa następujące białe znaki.
<kbd>
do rzeczywistych klawiszy, a nie do sekwencji poleceń. Np . <kbd>Ctrl</kbd>+<kbd>C</kbd>
Ale d$
.
Prawdopodobnie chcesz użyć D. Przesuń kursor do pierwszego znaku, który chcesz usunąć, a następnie naciśnij Shift-D. Wszystko zniknęło W rzeczywistości jest w domyślnym buforze cięcia, więc możesz P lub p wkleić go z powrotem.
Używam Dp (usuń do końca wiersza, a następnie odłóż go z powrotem), przechodzę na koniec innej linii, a następnie p ponownie, aby wkleić ten sam tekst na końcu tej drugiej linii. Działa cuda w plikach konfiguracyjnych, w których trzeba umieścić skomplikowany adres URL w dwóch lub więcej miejscach.
Myślę, że skrót trybu wstawiania może się przydać.
W trybie wstawiania lepiej byłoby zacząć zmieniać do końca linii (umieść to na swoim ~/.vimrc
):
inoremap <C-l> <C-o>C
Więc, jak już powiedziano, jesteś Dw trybie normalnym i Ctrl+ lw trybie wstawiania. Jak widać, również Czaczyna się to zmieniać do końca linii.
<C-o> ......... insert normal keystroke in insert mode
Wybrałem Ctrl- lbo l
jest pod waszymi palcami. Znak Ctrl- kjest już używany do wstawiania digrafów.
Szukałem :h i_Ctrl
wolnych skrótów klawiszowych i jest to większy problem, jeśli chodzi o tworzenie nowych skrótów do wykonywania akcji w vimie.
Aby usunąć zakres linii od pozycji kursora, 3Dusunie się z kursora do końca linii, a także całkowicie następne dwie linie (tj. Usuwa 3 linie po pozycji kursora).
np. dla następującego tekstu (kursor reprezentowany jako |
),
If there's a cursor |in the line
here
we
go
Użycie polecenia 3Dspowoduje wyświetlenie:
If there's a cursor
go