Często wyodrębniam prostokąt tekstu z bufora, ale potem stwierdzam, że chcę szarpnąć tekst tak, jakby nie był prostokątem. Czy istnieje sposób, aby dodać bieżący zabity prostokąt do pierścienia zabijania?
Podręcznik GNU Emacs mówi:
„Zabijanie” prostokąta nie jest zabijaniem w zwykłym znaczeniu; prostokąt nie jest przechowywany w pierścieniu zabijania, ale w specjalnym miejscu, które rejestruje tylko ostatni zabity prostokąt. Wynika to z tego, że szarpanie prostokąta jest tak różne od szarpania tekstu liniowego, że należy użyć różnych poleceń szarpnięcia. Trzaskanie nie jest zdefiniowane dla prostokątów.
Mogę jednak zasadniczo uzyskać pożądane zachowanie
M->
idź do końca buforaC-x r y
prostokąt szarpnięciaC-x C-x
punkt wymiany i znak (wybiera nowo szarpane linie)C-w
zabij zaznaczenie do pierścienia zabijania
Czy istnieje lepszy sposób na przekształcenie zabitego prostokąta w wejście typu „zabójca”?
Odpowiedzi:
Jeśli zrozumiałem twoje pytanie, szukasz czegoś takiego:
Dzięki uprzejmości ErgoEmacs
źródło
Nie jestem pewien, co jest specjalnego w posiadaniu prostokąta w pierścieniu zabójstwa, ale jeśli uaktualnisz do Emacsa-24.4, możesz:
C-x SPC .... M-w
wybrać prostokąt i umieścić go na pierścieniu zabijania. PotemC-y
szarpnie ten prostokąt (tak samo byłoC-x r y
, tho).źródło
Początkowo byłem zirytowany brakiem wbudowanego rozwiązania tego problemu, a potem zdałem sobie sprawę, że istnieje wbudowane rozwiązanie: kill-prostokąt.
Powiedz, że masz podobny tekst
Ale chcę część „B” tekstu gdzie indziej, na przykład między tymi wierszami C i D:
Jeśli skopiujesz prostokąt B (
C-x r M-w
), a następnie umieścisz punkt na pierwszym „D”, a następnie pociągniesz prostokąt do tyłu (C-x r y
), to skończysz nagdzie naprawdę chciałeś
Kopiowanie prostokąta „B” i szarpanie ich w nowe miejsce może wydawać się naturalne, ale lepszym rozwiązaniem jest po prostu skopiowanie linii „A” i „B” oraz przeciągnięcie ich w całości między „C” i „ Linie „D”.
Następnie zaznacz prostokąt zawierający „A” i użyj
kill-rectangle
(C-x r k
), aby zakończyć pożądanym wynikiem.źródło