Vim에서 여러 줄을 복사하는 방법은 무엇입니까? (범위 아님);

Vim에서 여러 줄을 복사하는 방법은 무엇입니까? (범위 아님);

내가 가지고 있다고 가정하자

1 - funct1
2- funct 2
3 - funct 3 
4 line 4

일련의 행이 아닌 1행과 3행을 복사하여 8행에 붙여넣으려면 어떻게 해야 합니까? |() 와 같은 인수를 사용하여 이 작업을 수행 하면 1y|3y여러 레지스터에 라인을 가져오게 됩니다. 그렇죠? 하지만 동시에 여러 레지스터에서 가져올 수 있는 방법은 무엇입니까?

답변1

소문자 대신 대문자를 사용하여 레지스터를 지우는 대신 레지스터에 추가할 수 있습니다.

예를 들어:

:1y a      # copy line 1 into register a (erases it beforehand)
:3y A      # copy line 3 into register a (after its current content)
8G  # go to line 8
"ap        # print register a

답변2

:copy다음과 같이 축약할 수 있는 이 명령을 사용할 수 있습니다 :t.

:1t8
:3t8

행 범위(예: 1에서 3까지의 모든 행)를 복사하려면 다음을 수행할 수 있습니다.

:1,3t8

답변3

1Gyy7Gp #use 7 if you wish to paste the line at 8
3Gyy8Gp #use 8 if you wish to paste the line at 9

관련 정보