Chcę szarpać wiele wierszy w jednym rejestrze w vimie, aby łatwo wkleić różne szablony tekstowe w dokumencie.
Na przykład „iyy szarpie tylko bieżącą linię, jeśli spróbuję wybrać wiele linii w trybie wizualnym, nie zostanie ona zapisana w rejestrze.
Jakieś sugestie?
Odpowiedzi:
Użyj,
3Y
aby przeciągnąć 3 linie do rejestru domyślnego;"i3Y
za wciąganie do rejestruPonadto moim ulubionym sposobem nie jest zliczanie wierszy, które chcę zaciągnąć, ale wybranie ich w trybie wizualnym za pomocą
V
poleceń i ruchów, a następniey
naciśnięcie, aby je wyrwać lub"_y
wciągnąć do rejestru.Ponadto właśnie próbowałem wybrać wiele linii w trybie linii wizualnej i wciągnąć do rejestru innego niż domyślny, np.
Vjjj"oy
- i to działa.źródło
V
jest trybem linii wizualnej,v
jest trybem wizualnym.%)
Z dowolnego miejsca w pliku można skorzystać z następujących opcji.
Yank linie 2 - 5. DO REJESTRACJI a
Wklej zarejestruj się pod linią 7.
źródło
Użyj,
m
aby oznaczyć początek nazwą bufora (abyś mógł wpisaćmx
). Przesuń kursor w dół do miejsca, w którym chcesz zatrzymać kopiowanie, i wpiszy'x
(lubd'x
jeśli wycinasz i wklejasz). Następnie przejdź do miejsca, w którym chcesz wkleić, i wpiszp
.Ściągawka polecenia Vima
źródło
v
niem
?Komendę poprzedza się liczbą, aby uzyskać liczbę wierszy do obsługi. Możesz także użyć „obiektu tekstowego” (jak „]” dla bloku i „)” dla akapitu) - działałoby to na wielu liniach kontekstowych - domyślnie jest to jedna linia. Na przykład
"r5yy
pociągnąłby za sobą pięć linii, zaczynając od kursora, do rejestru „r”. (Lub możesz wpisać:.,+4y r
to samo w trybie ex.) Możesz także łączyć liczby z obiektami tekstowymi;"r10y)
.źródło
Możliwe jest szarpanie wielu linii w przypadku, gdy jest to ostatnie wystąpienie wyszukiwania.
Na przykład, biorąc pod uwagę następujący wieloliniowy, niechciany wzór :
wtedy będziesz miał swój szarpany wzór wielowierszowy (pomiędzy
start
iend
) w@i
rejestrze (drukuj wedługecho @i
).Powiązane: Jak wydrukować dopasowanie wieloliniowe? w Vi
źródło