Mam listę elementów, w których chcę zastąpić pierwsze dwa znaki:
a) item 1
b) item 2
c) item 3
Jaki jest najszybszy sposób na to:
* item 1
* item 2
* item 3
Mam podejście w trybie wizualnym (Ctr-v, jjj, ale muszę wykonać dwa polecenia zamiany. Iirc, tę zamianę można wykonać za pomocą 1 polecenia)
visual-mode
poseid
źródło
źródło
.,.+2s/^../*/
(lub równoważnie w selekcji wizualnej)? Dlaczego dwa polecenia zamiany?2c
zastąpi dwa znaki.Ctrl-C
zamiastEsc
? Zapobiega to między innymi wprowadzaniu zmian do każdej linii zaznaczenia bloku wizualnego.Odpowiedzi:
Wizualny wybór bloku:
:normal
:Podstawienie:
Wzór na kropkę:
źródło
ciC*<esc>
i zrobić. Uwaga: ta wtyczka jest wtyczką typu „zrób co mam na myśli”, więc zawiesza się w nieoczekiwanych miejscach i sposobach, ale wtyczka jest nadal przydatna w niektórych łatwych przypadkach, takich jak ten.<Esc>
wypełni pozostałe linie.c
to „zmiana”.Oto bardziej efektywny sposób:
c
jest twój ostatni element).*
), a następnie naciśnij Esc.Działa bardziej wydajnie, szczególnie na dłuższych listach.
źródło