Zamień całą linię w vimie

2

Mam więc w swoim pliku następujący fragment tekstu. Korzystam z vima do edycji.

Internal Problem Description
----------------------------
!!! Please enter the internal description of the problem.

Aby uzupełnić opis problemu, przechodzę do wiersza, który zaczyna się od !!! a następnie najpierw wykonaj a, dda następnie naciśnij, Iaby przejść do trybu wstawiania. Następnie zaczynam pisać tekst opisu problemu.

Czy istnieje lepszy sposób na osiągnięcie tego? Coś jak zastąpienie całej linii w vimie jednym poleceniem.

Maniak
źródło
1
Może stackoverflow.com/questions/8296473/… jest pomocny: naciśnięcie „C” spowoduje usunięcie pozostałej części wiersza i przejście do trybu wstawiania
brm

Odpowiedzi:

7
  1. Przejdź do linii zaczynającej się od huku z czymś takim jak:

    /!!<CR>
    
  2. Wejdź do trybu wstawiania za pomocą:

    S
    

    lub

    cc
    

Zobaczyć :help S.

romainl
źródło
Co to jest <CR>?
Geek
Klawisz Enter. Zobaczyć :help key-notation.
romainl
3

SKomenda zrobi. Ale powinieneś także przyjrzeć się rozwiązaniu , które pozwala na wiele symboli zastępczych i automatyczne przeskakiwanie do nich.

fragmenty są jak wbudowane w :abbreviatesterydy, zwykle z wstawkami parametrów, odbiciem lustrzanym i wieloma ogranicznikami w nich. Jedną z pierwszych, bardzo znanych (i wciąż powszechnie używanych) wtyczek Vima jest snipMate (zainspirowany edytorem TextMate ); niestety nie jest już utrzymywane; choć jest widelec . Nowoczesną alternatywą (wymagającą jednak Pythona) jest UltiSnips . Jest więcej, zobacz tę listę na Wiki Vim Tips .

Ingo Karkat
źródło
co to Soznacza? Co również rozumiesz przez „: skrót na sterydach”. Czy możesz podać mi jakiś kontekst?
Geek
To nazwa polecenia, prawdopodobnie mnemoniczna dla Substitute. Najwyraźniej używasz plików urywków, które :readumieszczasz w buforze, ale w przypadku małych fragmentów tekstu, takich jak twój, :abbzadziałałoby również definiowanie zmian bezpośrednio w Vimie. Fragmenty są jeszcze potężniejsze, jak opisałem.
Ingo Karkat