vim에 각각 tmux 창에 두 개의 파일이 열려 있습니다. 한 파일에서 다른 파일로 10줄을 복사하고 싶습니다.
마우스의 -> 를 사용하지 않고 어떻게 Copy
이를 수행 할 수 있습니까 Paste
?
답변1
tmux 단축키를 사용해야 합니다. tmux 명령 바로 가기가 기본값인 Ctrl+ b라고 가정하면 다음이 수행됩니다.
Ctrl+ b, [복사(?) 모드로 들어갑니다.
강조할 텍스트의 시작/끝으로 이동합니다.
Ctrl+Space
텍스트 강조 표시를 시작합니다(Arch Linux의 경우). OSX 및 기타 Linux의 소스에서 tmux를 컴파일하면 Space일반적으로 자체적으로 작동합니다. 선택한 텍스트의 색상이 변경되므로 명령이 작동하는지 알 수 있습니다.
복사할 텍스트의 반대쪽으로 이동합니다.
Alt+ w선택한 텍스트를
tmux
클립보드에 복사합니다.
Mac에서는 Esc+ 를 사용하세요 w. Enter위의 방법 중 어느 것도 작동하지 않으면 다음을 시도해 보세요.커서를 반대쪽 tmux 창으로 이동하거나 완전히 다른 tmux 창으로 이동합니다. 방금 복사한 텍스트를 붙여넣을 위치에 커서를 놓습니다.
Ctrl+ b, ]tmux 클립보드에서 복사한 텍스트를 붙여넣습니다.
tmux
명령을 사용자 정의 키보드 단축키에 매핑하는 데 매우 능숙합니다.
설정 키보드 단축키의 전체 목록 Ctrl은 +를 참조하세요 b.?
답변2
안타깝게도 아직 Alex Leach의 답변에 의견을 추가할 수 없으므로 Mac OS X 사용자를 위해 여기에 부록을 추가하겠습니다.
- Enter선택한 텍스트 복사
답변3
macOS에서 vim 및 tmux를 사용하는 경우(macOS 10.12.2, tmux 2.3에서 테스트됨):
(tmux의 접두사 키 조합을 이라고 가정하면, 기본 prefix접두사는 ctrl+ 입니다.)b
- 복사:
- prefix+를 눌러 [복사 모드로 들어갑니다.
- 화살표 키를 사용하여 텍스트 선택의 시작/끝으로 이동합니다.
- ctrl+를 누릅니다 ( +를 접두어로 설정 space한 경우 대신 ++를 누릅니다 ).ctrlspacectrlspacespace
- 화살표 키를 사용하여 선택 항목의 다른 쪽으로 이동합니다.
- ctrl+를 누릅니다 w.
- 반죽:
- 삽입 모드에서 prefix+를 누릅니다.]
답변4
이미 vim
열려 있다면 vim 복사-붙여넣기를 사용하여 텍스트를 복사하는 것이 가장 좋습니다.
Tmux 복사-붙여넣기는 작동하지만 몇 가지 단점이 있습니다.
먼저, 여러 줄의 텍스트를 복사할 때는 여러 줄을 선택해야 합니다. Tmux 복사-붙여넣기는 일반적으로 vim
vim 여백의 줄 번호나 마커(예: 상대 숫자/절대 숫자)를 이해하지 못합니다 . 결과적으로 이러한 항목도 복사됩니다.
둘째, 텍스트에 언어별 서식이 있고 tmux를 사용하여 vim에 직접 복사하여 붙여넣으려고 하면 서식이 엉망이 된다는 사실을 발견했습니다. 이는 을 사용하여 방지할 수 있습니다 set paste!
. 그러나 이를 위해서는 더 많은 작업이 필요합니다.
복사 "+y
및 "+p
붙여넣기용
Vim
"+y
이 시스템 은 또는 를 사용하여 vim 버퍼와 시스템 클립보드 간에 복사하여 붙여넣는 방법을 제공합니다 "*y
. 그런 다음 또는 를 사용하여 "+p
붙여넣습니다 "*p
. 이렇게 하면 여백의 상대 숫자나 vim과 관련 없는 기타 임의 표시가 복사되는 것을 방지할 수 있습니다.