특히 명령이 완료된 후 알림을 보내려고합니다. 예를 들어 구성 파일을 다시로드하면 다음과 같이 수행 될 수 있는지 확인하고 싶습니다.
bind R source-file "$HOME/.tmux.conf" && display-message "Configuration reloaded."
그러나 그것은 작동하지 않습니다. 명령을 함께 묶는 방법으로 시도한 다른 것도 없습니다.
특히 명령이 완료된 후 알림을 보내려고합니다. 예를 들어 구성 파일을 다시로드하면 다음과 같이 수행 될 수 있는지 확인하고 싶습니다.
bind R source-file "$HOME/.tmux.conf" && display-message "Configuration reloaded."
그러나 그것은 작동하지 않습니다. 명령을 함께 묶는 방법으로 시도한 다른 것도 없습니다.
답변:
run-shell
옵션을 사용할 수 있지만 중요한 것은 명령을\;
이 경우 다음과 같은 것이 있습니다.
bind R source-file ~/.tmux.conf \; run-shell "echo 'Reload'"
run-shell shell-command
(별칭 : run)
창을 만들지 않고 백그라운드에서 shell-command를 실행합니다. 완료되면 stdout으로의 출력이 복사 모드로 표시됩니다. 명령이 성공하지 못하면 종료 상태도 표시됩니다.
내 질문을 작성한 직후에는 효과가있을 것으로 생각했습니다. 나는 그것을 시도하고 작동하며, 당신은 당신의 tmux 구성을 위해 여러 파일을 참 아야합니다.
다음은 특히 구성 다시로드와 관련된 솔루션입니다. .tmux.conf 파일에서 다음과 같이 입력하십시오.
bind R source-file "$HOME/.tmux/reload.tmux"
~ / .tmux / reload.tmux 파일에 다음과 같은 내용을 입력하십시오.
source-file "$HOME/.tmux.conf"
display-message "Configuration reloaded."
완벽하게 작동합니다.
tmux 내부에 완전한 스크립트를 허용하고 내부에 tcl 언어를 첨부하는 패치가 있습니다.
또한 '모드'키 입력에 대해 원하는만큼의 동작을 지정할 수 있습니다.
이를 사용하면 코드는 다음과 같습니다.
bind R tcl { source-file "$HOME/.tmux.conf" ; display-message "Configuration reloaded." }
또는 더 읽기 쉬운 :
bind R tcl {
source-file "$HOME/.tmux.conf"
display-message "Configuration reloaded."
}
\;
구분 기호로 나를 위해 (Debian squeeze의 TMUX 1.3) 작동합니다 .