Есть ли способ отключить закрытие панелей в 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 верно для этого окна. Я не использую tmuxinator, поэтому я не знаю, можно ли / как это можно правильно настроить в этом контексте. Вот как вы можете использовать обычную команду tmux, чтобы установить ее для существующего окна с именем worker:

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

Это опция окна, поэтому она будет применяться ко всем панелям в этом окне. После выхода из команды панели вы можете использовать respawn-pane начать свою команду заново.

tmux respawn-pane -t :worker.0

(Или префикс :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
Другие вопросы по тегам