2010-09-24 8 views
17

czy mimo to można usunąć wszystkie znaki w tym samym wierszu, co kursor, aż do kursora? na przykład, może mam wiersza kodu, który wygląda tak:vim: usuń wszystkie białe znaki do mojego kursora

foo = [cursor]    Bar.new 

Jeśli mój kursor znajduje się na uchwycie miejsce wyżej, jest to możliwe, aby usunąć każdy biały znak (? bez użycia regex) tak, Bar .new jest umieszczony przy kursorze?

+4

Prosisz dwa oddzielne pytania ... Czy chcesz usunąć spacje prowadząc do kursora lub białych znaków zaczynając od kursora do następnej, nie białej spacji? –

+1

powinien odczytać * z mojego kursora do początku następnego słowa *, myślę, że –

Odpowiedz

8

Bazując na przykład odpowiedź Neall jest prawidłowe. Jednak w oparciu o początkowe pytanie,

czy jest tak, aby usunąć wszelkie znak na tej samej linii jako kursorem, wszystko aż do kursora?

należy wpisać d

Właściwie pytasz trzecie pytanie w tytule ... usunąć wszystkie białe znaki do kursora. Tego nie jestem pewien, jak to zrobić bez regex. dge usunie wszystkie znaki odstępu wiodące do tyłu, aż do odstępu, ale usunie także pierwszy znak spoza białych znaków.

+0

Nie tak porządny, ponieważ musisz znać postać, którą usuwasz, ale usunięcie z powrotem do = może zostać wykonane z 'dT ='. ** D ** elete backwards- '** T ** il ** = ** –

6

Niekoniecznie to, co chcesz, ale może diw pomoże - w powyższym przykładzie, to usunąć wszystkie białe znaki pomiędzy = i Bar. Może ciwprzestrzeni dałoby Ci wynik, którego szukasz?

7

dtB

kasuje dowolny znak w górę, ale nie w tym 'B'

Powiązane problemy