Vim - 위 줄에 내부 단어를 붙여넣는 방법은 무엇입니까?

Vim - 위 줄에 내부 단어를 붙여넣는 방법은 무엇입니까?

나는 항상 다음 명령을 사용하여 내부 단어를 추출한 다음 위 줄에 붙여넣습니다.yiw -> O -> Esc -> p

분명히 위 줄을 삽입 P하지 않고 이 자체로는 O작동하지 않습니다. 줄바꿈이 없기 때문에 커서 앞에 붙여넣기만 하면 됩니다.

이 작업을 수행하는 더 쉬운 방법이 있나요?

답변1

콘텐츠를 별도의 줄에 붙여넣는 방법에 대한 두 가지 제안:

  1. 당신은 그것을 사용할 수 있습니다:put!주문하다, 항상 행 단위로 작동하기 때문입니다. 버전은 !현재 줄 앞(뒤 대신)에 레지스터의 내용을 삽입합니다. (축약해서 사용하셔도 됩니다 :pu!.)

  2. O, Ctrl+ R, ", 를 사용하여 Esc가장 최근에 복사한 내용이 포함된 행을 위에 삽입할 수 있습니다. 도움말 보기i_CTRL-RCtrl+ 부분 의 경우 R. 은 ""이름이 지정되지 않은" 레지스터이며 기본적으로 복사 및 삭제가 이루어지는 곳입니다. O, Esc보다 반드시 "쉬운" 것은 아니지만 p단일 명령이므로 반복할 수 있고 .전체 작업을 한 번에 취소할 수 있다는 장점이 있습니다.

이것이 자주 수행되는 작업이라면 이에 대한 매핑 생성을 고려해 보십시오. 입력하기 가장 쉬운 매핑입니다. :-)

답변2

나는 종종 레지스터 내용을 어떤 (문자/줄/블록) 패턴으로 "변환"해야 할 필요가 있습니다.무조건 플러그인 붙여넣기그것을 위해. 이는 특정 패턴을 강제하는 내장된 붙여넣기 명령에 대한 gcp대안을 제공합니다(이제 쉼표로 붙여넣기 또는 쿼리 문자 연결과 같이 이 테마에 더 많은 변형이 있습니다).glp

이 기능을 사용하면 텍스트를 어떻게 가져오든(즉, 불완전한 줄 조각만 포함된 경우) 현재 줄 뒤/앞에 사용 glp/ 붙여넣기를 할 수 있습니다 .glP

관련 정보