Jak wciągnąć wiele linii do rejestru?


44

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?


„jeśli spróbuję wybrać wiele linii w trybie wizualnym, nie zostanie to zapisane w rejestrze”. <- Naprawdę? Działa dla mnie ...
Billy ONeal

i dla mnie też ...
ulidtko

ah ok, próbowałem z „iyv, głupi ja. Powinienem być Vjjj”, tak jak wspomniałem Ulidtko.
ryz

Odpowiedzi:


59

Użyj, 3Yaby przeciągnąć 3 linie do rejestru domyślnego; "i3Yza wciąganie do rejestru

Ponadto moim ulubionym sposobem nie jest zliczanie wierszy, które chcę zaciągnąć, ale wybranie ich w trybie wizualnym za pomocą Vpoleceń i ruchów, a następnie ynaciśnięcie, aby je wyrwać lub "_ywcią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.


1
+1 - ale Vjest trybem linii wizualnej, vjest trybem wizualnym.
Billy ONeal 17.01.11

ok, ok, racja. Tryb linii wizualnej. %)
ulidtko

1
chętnie to zaakceptowałem, jak na razie najszybszy sposób.
ryz

24

Z dowolnego miejsca w pliku można skorzystać z następujących opcji.

:2,5y a

Yank linie 2 - 5. DO REJESTRACJI a

:7pu a

Wklej zarejestruj się pod linią 7.


1
Pytanie brzmiało: „jak wciągnąć wiele linii do rejestru ?” Proszę pokazać, jak te polecenia działają z rejestrami.
Scott,

Mam nadzieję, że moja edycja spełni twoją prośbę.
alock27

Przepraszam, nie. Pytanie wyraźnie wymieniało „rejestr” wielokrotnie, odnosiło się do „łatwego wklejania różnych szablonów tekstowych” i dawało przykład przy użyciu rejestru innego niż domyślny.
Scott,

3
@Scott Moje przeprosiny. Dlaczego po prostu nie powiedziałeś: „Stary, sprawdź swoją metodę za pomocą: reg. Zobaczysz, że to nie działa”. I byłbym wszystkim w stylu „Whoa, my bad”.
alock27

1
Szukał sposobu, aby wciągnąć plik who do rejestru + w celu skopiowania do schowka systemowego. :% y + załatwiło sprawę, dzięki.
AlexMA

10

Użyj, maby oznaczyć początek nazwą bufora (abyś mógł wpisać mx). Przesuń kursor w dół do miejsca, w którym chcesz zatrzymać kopiowanie, i wpisz y'x(lub d'xjeśli wycinasz i wklejasz). Następnie przejdź do miejsca, w którym chcesz wkleić, i wpisz p.

Ściągawka polecenia Vima


Jesteś pewien, że nie masz na myśli vnie m?
Billy ONeal 17.01.11

@BillyONeal „v” uruchamia tryb wizualny i pozwala robić to samo, „m” służy do „oznaczania” regionu.
Nifle

6

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 "r5yypociągnąłby za sobą pięć linii, zaczynając od kursora, do rejestru „r”. (Lub możesz wpisać :.,+4y rto samo w trybie ex.) Możesz także łączyć liczby z obiektami tekstowymi; "r10y).


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.