Jestem doświadczonym programistą na platformie Windows i próbuję nauczyć się, jak używać Vima. Jestem całkiem niezły z wyrażeniami regularnymi i rozumiem zasady używania Vima. Mam jednak specyficzny problem i chociaż mam rozwiązanie, wydaje mi się, że powinien być lepszy.Nauka Vima: Najlepszy sposób na usunięcie przestrzeni między słowami
Mam plik zawierający wiersz podobny do następującego:
CODE<tab><tab>Lorem ipsum dolor sit amet
nie może być zmienna liczba <tab>
lub <space>
znaków między CODE
i Lorem
. Zakładając, że kursor znajduje się nad literą "C" CODE
w trybie normalnym, chciałbym znaleźć kombinację klawiszy, która wygeneruje następujące dane wyjściowe, i pozostawić kursor między literą "E" o numerze CODE
, a on "L". 'z Lorem
w trybie wstawiania.
CODELorem ipsum dolor sit amet
Moja curent rozwiązaniem jest użycie następującą sekwencję klawiszy:
wagowod?\s\+< powrót >
To działa, ale czuje się nielogiczne przejść obok rzeczy chcę usunąć, zanim można go usunąć. Czuję, że powinienem przejść do końca CODE
i usunąć przekierowania. Rozumiem, że może to być po prostu idiom Vima, którego nie jestem świadomy. Mogłabym też całkowicie pominąć kluczową wiedzę Vima.
Jaki jest najlepszy sposób na osiągnięcie mojego celu?
Dzięki, Matt.Właściwie to myślałem, że na początek, ale odkładałem słuchawkę na fakt, że "l" przesuwa kursor na koniec tabulatora, a nie do pozycji następującej po kodzie "CODE". Teraz, kiedy próbuję, to ma sens. Myślę, że podkreśla to, o czym myślałem: uczenie się Vima to nie tylko polecenia - to także wymaga poznania pewnych idiomów. –
@Damian: Jasne, są ładne prawidłowości w całym vi/vim, wciąż mam do czynienia z nimi samemu :-) –
po nieco dalszych eksperymentach, myślę, że kluczowa sekwencja, której szukałem, to 'elcw'. To pozostawia mnie w trybie wstawiania, gotowe do dodania mojego tekstu zastępczego. Niesamowite! Dzięki jeszcze raz. –