Jak wkleić z wielu schowków vim bez wychodzenia z trybu wstawiania?

8

Załóżmy, że piszesz w vimie i istnieje 5 typowych wyrażeń, które musisz wstawiać w tekście w kółko.

Czy istnieje sposób, aby powiedzieć vimowi, aby wklejał z wielu schowków bez opuszczania trybu wstawiania?

dggoldst
źródło

Odpowiedzi:

20

ctrl-r, po którym następuje rejestr, pozwala wkleić zawartość rejestru bez wychodzenia z trybu wstawiania.

Ctrl+ r" Umieść z rejestru domyślnego

Ctrl+ rd Wpisz z rejestru d

Nawiasem mówiąc, w vimie nazywane są „rejestrami”, a nie „schowkami”, a czasownik to „wstaw”, a nie „wklej”. (Przypomnienie, aby uzyskać wizualny wybór do rejestru d, należy użyć "dy)

dggoldst
źródło
To jest świetne! Ponadto, jak sformatowałeś tekst, aby wyglądał jak przyciski klawiatury? Szukałem czegoś w często zadawanych pytaniach dotyczących przeceny SuperUser, ale nie znalazłem.
Nathan Long
1
Spróbuj z tagiem <kbd>.
danadam
2

Czy potrzebujesz tych wyrażeń ze schowka?

Możesz łatwo zrobić coś takiego:

:iab some_unique_string foo bar baz

I vim zastąpi „some_unique_string” „foo bar baz”, jak tylko wejdziesz w tryb wstawiania.

innaM
źródło
1

Jeśli zawsze są takie same wyrażenia, np. W programowaniu w języku Java, np. „Private static void main (String ... args)”, możesz użyć wtyczki takiej jak snipmate . Możesz go skonfigurować tak, aby po prostu wpisać „main <Tab>”, a następnie rozszerzy się na potrzebny długi kod Java i ma więcej fajnych funkcji ...

c089
źródło