有没有办法可以禁用 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。我不使用多路复用器,所以我不知道是否/如何可以在该上下文中干净地配置它。以下是如何使用普通的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将是一个简单的 shell,而不是为你的窗格配置的命令多路复用器配置)。你可能希望在循环中运行命令(在你的多路复用器配置):

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

相关内容