tmux에서 X 클립 보드에 텍스트를 복사하려면 현재 내가하는 일은 다음과 같습니다.
- 선택 모드로 이동 prefix[
- space(
mode-keys vi
btw 사용 )으로 선택 시작 - 텍스트를 선택하고 enter
- 를 사용하여 tmux 버퍼를 X 클립 보드에 복사 prefixctrl+c
(나는 매핑을 bind C-c run "tmux show-buffer | xclip -selection clipboard -i"
선택 모드에 대한 매핑을 만들어 이러한 단계 중 일부를 제거하려고합니다. 나는 시도했다 :
bind-key -t vi-copy C-c run "tmux show-buffer | xclip -selection clipboard -i"
그것은 나에게 오류를 준다 :
.. usage: bind-key [-cnr] [-t key-table] key command [arguments]
(오류를 복사하지 못했습니다)
이 문제를 어떻게 해결할 수 있습니까?
편집 : 나는 일반 선택처럼 마우스를 사용하여 tmux 버퍼 (처음 3 단계)를 선택하고 복사 할 수 있다는 것을 깨달았습니다 (강조 표시는 지속되지 않지만 여전히 텍스트를 선택합니다). 다음 바인딩을 사용하여 x 클립 보드에 복사하십시오. :
bind-key -n C-c run "tmux show-buffer | xclip -selection clipboard -i"
(이 방법을 사용 하여이 텍스트를 복사했으며 쉬웠습니다.)
참고 -n
의미는 "접두어가"그러므로 더 필요하지 않습니다 이스케이프. 소실 강조 표시로 혼동하지 않으면 일반 (공통 사용자 인터페이스) 복사와 유사합니다.
이것이 내가 지금까지 생각 해낸 최고입니다.
EDIT2 :ctrl+c 프로세스 인터럽트와 겹치는 것으로 나타 났으 므로 지금은 변경했습니다 ctrl+alt+c. (좋아하지 않았다)
EDIT3 : tmux 1.8 또는 복사 모드에서 키 바인딩을 추가하는 지원이 추가되었으므로 이제 다음과 같은 것을 사용하여 첫 번째 원래 의도가 가능합니다.
bind-key -tvi-copy y copy-pipe "xclip -selection clipboard -i"
bind-key -tvi-copy enter copy-pipe "xclip -selection clipboard -i"
이 두 바인딩을 사용하면 텍스트를 클립 보드에 복사 enter하거나 y복사를 마칠 수 있습니다.
마우스로 복사하고 나중에 tmux 버퍼 내용을 클립 보드로 가져 오기로 결정한 경우이 줄을 계속 유지하십시오.
bind-key y run "tmux show-buffer | xclip -selection clipboard -i"
^c
복사보다 자주 사용하는 경우 인터럽트 키로 사용할 것이라고 생각한다 . 또한이 문제에 대한 현재 솔루션을 반영하도록 답변을 업데이트했습니다.
bind-key -t vi-copy C-c run "tmux show-buffer | xclip -selection clipboard -i"
라이브 제공 :Unknown command: run
bind-key C-c run "tmux show-buffer | xclip -selection clipboard -i"
는 잘 작동합니다.
stty intr=^Z
. 이 명령에주의하여 일반 문자를 인터럽트 문자로 설정할 수 있습니다 (그렇게하면 설정을 수정할 때까지 ctrl-v를 사용하여 입력하십시오). 그리고 어떤 키가 사용되는지 혼동하지 마십시오 (예 : ctrl-z는 일반적으로 일시 중단 키입니다).