developer tip

Vim에서 다른 텍스트 열 뒤에 텍스트 열을 어떻게 붙여 넣나요?

optionbox 2020. 11. 14. 10:07
반응형

Vim에서 다른 텍스트 열 뒤에 텍스트 열을 어떻게 붙여 넣나요?


텍스트로 가득 찬 두 개의 열이 있는데 나란히 놓고 싶습니다. 예를 들어,

abc
def
ghi

123
456
789

그리고 나는 원한다

123 abc
456 def
789 ghi

내가 찾을 수있는 것은 열의 모든 줄 끝에 같은을 붙여 넣는 방법 뿐입니다. 다른 열 끝에 여러 줄 텍스트 블록을 붙여 넣는 방법을 알 수 없습니다.


시각적 블록 ( ctrl-v)을 사용 하여 문자 열을 자릅니다. 그런 다음 숫자 열의 첫 번째 줄로 이동합니다. 끝으로 이동하여 한 칸을 만드십시오. 그런 다음 문자 열을 붙여 넣습니다.


왜 "시각적 블록 모드"가 저에게 작동하지 않는지 궁금합니다. 핵심은 비주얼 모드에서 잡아 당기 거나 삭제하는 것입니다.

가변 길이를 가진 Excel 열에서 일부 항목을 복사해야합니다. 방법은 다음과 같습니다.

Names
Donald Knuth
Sebastian Thrun
Peter Norvig
Satoshi Nakamoto

Age
100
50
60
45

첫 번째 열 뒤에 두 번째 열을 배치한다고 가정 해 보겠습니다.

  1. 시각적 모드에서 Yank :
    • 시작 부분으로 커서 이동 Age
    • 눌러서 Ctrl + v시각 모드로 들어갑니다.
    • 5안으로 커서 이동45
    • 눌러서 y잡아 당기거나 d삭제합니다.

이제 비주얼 모드에서 홱 잡아 당겼습니다.

  1. 붙여 넣기 (일반 모드)

    • 예를 들어 두 번째 줄보다 짧기 때문에 첫 번째 줄의 끝으로 이동하고 공백을 더 추가합니다. 공백을 추가하지 않고 "블록"을 붙여 넣으면 Sebastian Thrun의 "실행"을 덮어 씁니다.

    • 이제 첫 번째 줄에 있으며 마지막 문자 뒤에 공백을 몇 개 삽입합니다. 삽입 모드가 아닌지 확인 p하고 블록을 붙여 넣으십시오. (삽입 모드로 붙여 넣으려면을 사용하십시오. ctrl+r ")

여기에 이미지 설명 입력


당신은 :

abc
def
ghi

123
456
789

Move your cursor onto the a. Then CTRL+V, and move your cursor to i. Press y.

Next, add a space after the 3 character, and press p.

Done.


If you're on a Mac and can't figure out why the paste is inserting the block in new lines, it's because you're using the system pasteboard.

No problem, just yank/paste with buffers:

  1. Ctrlv - select what you want to yank
  2. "lettery - yank into letter buffer
  3. Go to where you want to paste
  4. "letterp - paste from letter buffer

Make sure that letter is not + as that is the system pasteboard buffer and thus it will have the same effect.


이것은 분명해 보일 수 있지만 외부에서 복사 한 버퍼에서 붙여 넣는 경우 시각적 모드 붙여 넣기만으로는 작동하지 않습니다. 먼저 빈 영역에 일반 붙여 넣기를하고 위의 방법을 사용하여 세로 잘라 내기 / 붙여 넣기를 수행 할 수 있습니다.


레지스터 유형을 블록 단위로 수동 설정하려면 다음을 사용하십시오.

:call setreg(0, getreg(0), 'b')

또는

:call setreg('*', getreg('*'), 'b')

스프레드 시트 편집기에서 열을 붙여 넣을 때 유용합니다.

자세한 내용은 :help setregvimtip 을 참조하십시오.

참고 URL : https://stackoverflow.com/questions/9120552/how-do-i-paste-a-column-of-text-after-a-different-column-of-text-in-vim

반응형