vi 모드에서 선택 항목을 클립보드에 붙여넣는 방법

vi 모드에서 선택 항목을 클립보드에 붙여넣는 방법

ctrl터미널에서 + v또는 ctrl++ 명령을 통해 shift클립보드와 함께 vi 모드를 사용하여 버퍼에 복사한 내용에 액세스하고 싶습니다 v.

내 .zshrc에 다음 내용을 복사했습니다. (이 답변에서: 클립보드에서 vi 지원 zsh 또는 bash 쉘에 붙여넣기)

vi-append-x-selection () { RBUFFER=$(xsel -o -p </dev/null)$RBUFFER; }
zle -N vi-append-x-selection
bindkey -a '^X' vi-append-x-selection
vi-yank-x-selection () { print -rn -- $CUTBUFFER | xsel -i -p; }
zle -N vi-yank-x-selection
bindkey -a '^Y' vi-yank-x-selection

vi 모드의 터미널에서 무언가를 강조 표시하고 꺼내면 Ctrl++ 를 입력하여 shift성공적으로 검색 할 수 있습니다 y. 그러나 ++ 를 입력하면 Ctrl다른 내용이 붙여넣어집니다.shiftv

다음을 사용하여 클립보드의 내용을 확인할 때:

xclip -o sel p
xclip -o sel s
xclip -o sel c
xsel -o -p
xsel -o -s
xsel -o -b

여기에는 이전에 다른 방법으로 복사한 다른 문자열이 포함되어 있지만 vi 모드에서 강조 표시한 문자열은 포함되어 있지 않습니다.

이 내 꺼야첫 번째 질문Ctrl: ++ 명령을 사용하여 shift검색 하고 저장된 세 가지 버퍼("기본", "보조" 및 "클립보드") 중 하나에 없는지 y확인할 수 있다면 어떻게 될까요? ? ? )xselxclip

또한 줄의 "^Y"를 "^V"로 바꾸려고 했습니다.

bindkey -a '^Y' vi-yank-x-selection

(다음과 같습니다 :)

bindkey -a '^V' vi-yank-x-selection

성공하지 못했습니다 (빈 버퍼를 인쇄하는 것 같습니다)

내 두 번째 질문: 내가 뭘 잘못했나요?

관련 정보