是否可以创建一个与当前窗口具有相同窗格布局的新 tmux 窗口?
答案1
tmux
没有内置功能可以做到这一点。
脚本编写
有什么tmux
是更简单的命令可以在内部tmux
或外部调用,例如。从命令行或 shell 脚本。与您的需求最相关的是list-windows
:
list-windows [-a] [-F format] [-t target-session] (alias: lsw) If -a is given, list all windows on the server. Otherwise, list windows in the current session or in target-session. For the meaning of the -F flag, see the FORMATS section.
其输出包括每个窗口的布局,因此脚本可以解析该信息并发送tmux
进一步的命令(new-window
等split
)以创建具有完全相同布局的另一个窗口。
第三方工具
tmux
作为编写整个脚本的替代方法,您可以使用其他用户已经创建的多种工具之一,以简化会话/布局的设置。以下各项都允许在 YAML 中描述布局:
您可以通过运行以下命令来获取当前窗口的布局:
tmux list-windows -F "#{window_active} #{window_layout}" | grep "^1" | cut -d " " -f 2
然后,您可以使用结果作为任何 Teamocil 窗口对象的布局键。
windows: - name: sample-two-uneven-panes layout: 00c7,158x38,0,0[158x9,0,0,37,158x28,0,10,39] panes: - echo foo - echo bar