Tmux에서 창 닫기를 비활성화하는 방법이 있습니까?

Tmux에서 창 닫기를 비활성화하는 방법이 있습니까?

tmuxinator를 사용하고 있습니다. 여기 내 프로젝트 파일이 있습니다.

project_name: Network
project_root: ~/Code/Network
tabs:
  - editor: vim
  - worker: 
      layout: cd49,181x48,0,0[181x5,0,0{90x5,0,0,90x5,91,0},181x42,0,6]
      panes:
        - QUEUE=high,normal,low rake resque:work
        - 
        - 
  - console: rails c

아래는 작업자 탭입니다.

여기에 이미지 설명을 입력하세요

이 탭 닫기 창에 대해서만 비활성화하는 방법이 있습니까? 나는 이것을 방지하고 싶습니다 :

여기에 이미지 설명을 입력하세요

답변1

remain-on-exit해당 창에 대해 창 옵션을 true로 설정하고 싶을 수도 있습니다 . 사용하지 않아tmuxinator, 그래서 해당 컨텍스트에서 이것이 깔끔하게 구성될 수 있는지 여부와 방법을 알 수 없습니다. 일반을 사용하는 방법은 다음과 같습니다.티먹스다음 이름의 기존 창에 대해 설정하는 명령입니다 worker.

tmux set-option -w -t :worker remain-on-exit on

이는 창 옵션이므로 해당 창의 모든 창에 적용됩니다. 창의 명령이 종료된 후 를 사용하여 respawn-pane해당 명령을 새로 시작할 수 있습니다.

tmux respawn-pane -t :worker.0

(또는 Prefix:respawn-pane현재 창을 다시 생성합니다.)

하지만 예상한 대로 작동하지 않을 수도 있습니다.tmuxinator항상 "기본" 창/창을 만든 다음 구성된 명령을 "입력"하는 것 같습니다. 즉, 다시 시작한 명령은 respawn-pane창에 대해 구성된 명령이 아니라 일반 쉘이 됩니다.tmuxinator구성). 대신 루프에서 명령을 실행하고 싶을 수도 있습니다(tmuxinator구성):

while :; do QUEUE=high,normal,low rake resque:work; printf 'Hit enter to re-run... (C-c to abort)'; read; done

관련 정보