Jak mogę wybrać i usunąć wiersze tekstu w vi?

19

Jeśli chcę wybrać konkretny tekst linii i usunąć linie, jak mogę to zrobić w vi (podać najprostszy sposób)?

Wstrzymano do odwołania.
źródło

Odpowiedzi:

19

Możesz także użyć Vw trybie przeglądania, aby uruchomić tryb „VISUAL LINE”. Wybierz linie i wpisz, daby je usunąć.

ThR37
źródło
5
Oznacza to, że Shift + V.
Zaz
Co jeśli tryb V nie jest zaimplementowany (jak w starych implementacjach Vi?)
Campa
10

Przejdź do wiersza, który chcesz usunąć, za pomocą klawiszy strzałek lub klawiszy j/ ki wpisz dd. Następnie możesz zapisać i wyjść, wpisując :x(lub ZZ). Można również wstawić numer, ddaby usunąć wiele linii, np. 3ddUsuwa 3 linie.

Aby uzyskać więcej poleceń Vi, zapoznaj się z tym podręcznym ściągiem Vi .

Zaz
źródło
1
dd to najszybszy sposób na usunięcie linii.
Raptor
3

przejdź do pierwszego wiersza, który chcesz usunąć, i wpisz (w trybie przeglądania), d[x-1]aby usunąć x wierszy.

fbstj
źródło
3

Kolejna wskazówka: jeśli chcesz usunąć akapit tekstowy, przejdź na początek tego akapitu za pomocą {, a następnie wpisz d}

Lub innymi słowy {d}

Janne Pikkarainen
źródło
3
Lub dapusuń akapit
1686
@grawity: dapnie działa dla mnie w Vi.
Zaz
1
@Josh: 97% czasu, gdy ktoś mówi „ vi”, oznacza to „ vim” lub „ vimdziała w trybie zgodności vi”. Zasugerowałem więc vimpolecenie -specyficzne (patrz także :help text-objects).
user1686,
@grawity: Niestety, ja jestem uruchomiony Vim , ale dapnadal nie ma żadnego wpływu.
Zaz
@Zaz: Być może twój .vimrcplik miał inne ustawienia, a może @ user1686 miał inne ustawienia.
jvriesem