2010-05-04 10 views
6

WikiWiki: „Vim: Zaawansowane użycie mechanizmu szarpiąc”

W dokumentacji pokazach systemowych Yank (dzięki Michała), Vim System Yank wydaje się być bardziej skomplikowane następnie standardowy schowek . Dlatego uważam, że korzystne byłoby, gdyby weterani vim mogli pokazać nam różne style wykorzystania tego mechanizmu. szczególnie przy użyciu vima do skomplikowanych projektów bez użycia ciężkiego IDE (powiedzmy C++?).

oryginalne pytanie

Teraz używam vim za wszystko, co typ, a potem po prostu do konfigurowania serwerów, ja wa uporządkować następujące błahostkami. Próbowałem sformułować zapytania wyszukiwarki Google, ale wyniki nie zawierały odpowiedzi na moje pytania: D.

Pytanie pierwsze: Jak mogę szarpnąć i wymienić kilka razy?

Kiedy już mam coś w historii szarpnięć (jeśli tak się nazywa), a następnie wyróżnij i użyj znaku "p" w trybie poleceń, zastąpiony tekst jest umieszczany na początku historii szarpnięć; dlatego kolejne operacje wymiany nie wykorzystują tekstu, który zamierzałem. Wyobrażam sobie, że jest to przydatna funkcja w pewnych okolicznościach, ale nie potrzebuję jej w moim przepływie pracy.

Pytanie drugie: Jak wpisać tekst, nie powodując marszczenia linii do przodu?

używam twardego kartę przestaje allign mojego kodu w pewien sposób - np

FunctionNameX  (lala * land    ); 
FunctionNameProto (       ); 

Kiedy dowiem się, co trzeba, aby przejść do drugiej funkcji, jak mogę wstawić go bez przesuwania tekst w górę?

Pytanie trzecie: Czy istnieje sposób na posiadanie jednolitej historii szarpania w instancjach gvim na tym samym komputerze? Mam> 1 monitorów. Właśnie zastanawiam się, atm używam podświetlenia + kliknięcie środkowym myszką.

+0

Pytanie dotyczące programowania, które należy do administratora? –

+2

"Jak korzystać z mojego edytora tekstu?" nie jest pytaniem programistycznym. –

+0

Cóż, jeśli masz zamiar być tak o tym analnie ... superużytkownik jest dla: "oprogramowania komputerowego i ogólnie oprogramowania komputerowego". To pytanie nie dotyczy ogólnego oprogramowania. Być może będę musiał napisać własne makro vim, aby zrobić to, co chcę. Pisanie makr zawiera listę krok po kroku, aby coś osiągnąć. Ogólny termin dla tego procesu jest algorytmem, a twórcy algorytmów są również określani terminem "programiści". Stackoverflow jest miejscem do dyskusji na temat programowania. –

Odpowiedz

4

odpowiedzieć na jedno: Stosowny, jeżeli nie jest szczególnie zachęcające, qoute z docs vim (patrz :help put-Visual-mode):

Przy użyciu polecenia put jak | p | lub | P | w trybie Visual, Vim spróbuje zastąpić zaznaczony tekst treścią rejestru. To, czy ten działa dobrze, zależy od rodzaju selekcji i rodzaju tekstu w rejestrze . W przypadku wyboru blokowego zależy to również od wielkości bloku i od tego, czy rogi są na istniejącym znaku. (Szczegóły implementacji: to działa po uprzednim umieszczeniu rejestru po wyborze, a następnie usunięciu zaznaczenia.)
Poprzednio zaznaczony tekst zostaje umieszczony w rejestrze bez nazwy. Jeśli chcesz umieścić ten sam tekst w selekcji wizualnej kilkakrotnie, musisz użyć kolejnego rejestru o numerze . Np. Szarpnij tekst do skopiowania, wizualnie zaznacz tekst do zamień i użyj "0p. Możesz powtórzyć to tyle razy, ile chcesz, rejestr bez nazwy o tej samej nazwie zostanie zmieniony za każdym razem.

Odpowiedź druga:R (kapitał 'R') stawia Cię w tryb wymiany.

Brakuje odpowiedzi trzeciej, obawiam się.

trzy odpowiedzi: Niekoniecznie dopasowanie „uniform” Historia Yank specyfikację, ale „+ y Jankesi do schowka i ” + P pasty ze schowka, jeśli schowek jest dostępny.

+0

Dziękuję za obie odpowiedzi, czytam teraz dokumentację. Nie zdawałem sobie nawet sprawy, że dostępna jest koncepcja "rejestrów". Mogę znaleźć sposób na skorzystanie z niego: D –

+0

Przyszło mi do głowy, że możesz użyć "+ y dla szarpnięcia do schowka i" + p dla wklejenia ze schowka, gdy twoje środowisko zapewnia tego rodzaju funkcjonalność (i najprawdopodobniej to robi). Czy to rozwiązuje twój trzeci problem? –

+0

Tak, rzeczywiście, dziękuję Michał. Zwłaszcza w odniesieniu do dokumentacji put. Pomoże mi to niezmiernie. –

4

Jankes w buforze

:y b 

yanks w buforze B

I

:p b 

umieszcza go.

Myślę, że dostępnych jest więcej nazwanych buforów.

+0

Tak, rzeczywiście, a-z dla programisty i 0-9 używane przez mechanizm "schowka". jak szarpanie idzie na elementy w 0-9 falowanie do przodu i elementy na ogonie zaczynają spadać, jak szarpać. +1, ponieważ jest szybką i brudną odpowiedzią dla osób, które nie chcą czytać dokumentacji: D –