
Я использую 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 для этого окна. Я не используютмуксинатор, поэтому я не знаю, можно ли/как это можно чисто настроить в этом контексте. Вот как вы бы использовали простойtmuxкоманда, чтобы установить его для существующего окна с именем worker
:
tmux set-option -w -t :worker remain-on-exit on
Это опция окна, поэтому она будет применяться ко всем панелям в этом окне. После того, как команда панели завершится, вы можете использовать , respawn-pane
чтобы начать ее команду заново.
tmux respawn-pane -t :worker.0
(Или Prefix:respawn-pane
для повторного появления текущей панели.)
Однако это может не дать того, чего вы ожидаете, посколькутмуксинаторпохоже, всегда создает «стандартные» панели/окна, а затем «вводит» настроенную вами команду (т.е. команда, перезапущенная с помощью, respawn-pane
будет простой оболочкой, а не командой, настроенной для панели в вашемтмуксинаторконфигурации). Вместо этого вы можете захотеть запустить команду в цикле (в вашемтмуксинаторконфигурация):
while :; do QUEUE=high,normal,low rake resque:work; printf 'Hit enter to re-run... (C-c to abort)'; read; done