키 바인딩을 눌렀을 때 두 명령을 실행하는 방법

키 바인딩을 눌렀을 때 두 명령을 실행하는 방법

그래서 버퍼에 저장된 텍스트를 소켓을 통해 다른 컴퓨터로 전달하고 싶습니다. 이를 위해 소켓을 수행했습니다. 항목에서 다음 명령을 시작하면 됩니다.copy-mode-vi

bind -T copy-mode-vi Enter send-keys -X copy-selection-and-cancel \; run-shell "tmux loadb - | nc localhost 19988"

나는 그것이 있어야 한다는 것을 보았지만 \;이 구문으로 인해 내 tmux에 결함이 발생합니다.

답변1

-X 한 번에 하나의 명령만 허용합니다., 그러나 운 좋게도 여러 send-keys -X명령을 바인딩할 수 있습니다(구분하여 \;).

bind -T copy-mode-vi Enter send-keys -X copy-selection-and-cancel \; send-keys -X run-shell "tmux loadb - | nc localhost 19988"

그러나 두 번째 문제가 있습니다. 복사 모드는 특정 명령만 지원하며 run-shell해당 명령에는 해당되지 않습니다. 이 세 가지 명령만 copy-pipe외부 명령을 호출할 수 있으므로(선택 사항을 수락하고 처리해야 함) 불행하게도 여기에서는 접근 방식을 완전히 다시 설계해야 합니다.

관련 정보