pack
。我必须使用Ctrl+B, 15
列出窗口,然后键入与要打开的窗口相对应的字母。我知道我可以交换窗口。例如,我可以创建一个新窗口(
Ctrl+B, w
),该窗口将在空插槽3中打开。然后我可以Ctrl+B, c
窗口15和窗口3,然后关闭窗口15。显然,这是一个乏味的方法。您如何在tmux中管理许多窗口?
#1 楼
看起来您需要这样:movew
将立即重新编号所有窗口。评论
对于需要更明确说明的用户:ctrl b:然后输入move-window -r(其中ctrl b是默认的前缀键)
–mark
19年1月16日在22:32
顺便说一句,在tmux会话中,您可以在任何窗口/ shell中执行tmux命令,它将在包含tmux会话的位置执行操作。因此,简单的tmux move-window -r可以执行相同的操作,而无需使用tmux prefox组合键。
–Gurjeet Singh
20 May 15'0:11
#2 楼
tmux 1.7具有一些功能,可帮助建立和维护无间隙/压缩的窗口编号:move-window
命令学习了新的-r
选项,该选项将重新编号其中的所有窗口一个会话(当前会话或使用-t
选项指定的会话)。如果您有{{1:A,4:B,15:C}这样的窗口集,则可以运行
move-window -r
将它们重新编号为{1:A,2:B,3:C}(在本示例中,它们将以base-index
开头;在此示例中为1)。启用后,tmux将在关闭任何窗口后自动为会话的窗口重新编号(如renumber-windows
一样)。如果您喜欢这种行为,则可以在全局值中打开它,以便所有会话不覆盖它会自动启用它:
set-option -g renumber-windows on
评论
最后!我一直在寻找这个renumber-windows选项很久了!总是让我感到困惑,因为我之前已经关闭了一些窗口,所以新窗口在“左侧”打开。
–油带
15年11月16日在8:38
#3 楼
我经常发现自己处于窗口编号之间存在间隙的情况,例如与Windows进行会话:它们各自的顺序或激活“重新编号窗口”选项。结果:
1 3 4 8 9 13
在.tmux.conf中放入以下内容:
1 2 3 4 5 6
命中[PREFIX ] -R重新排序窗口(或更改绑定)。
我当前正在运行tmux 1.9a。
以上内容可以用更简单的替换:
bind R \
set -g renumber-windows on\; \
new-window\; kill-window\; \
set -g renumber-windows off\; \
display-message "Windows reordered..."
评论
这与运行“ move-window -r”不同吗?
–PonyEars
2014年8月23日在20:43
不它不是。我只是不知道move-window的-r选项:)永远不会太晚学习,谢谢!
–目标
2014年8月25日在8:07
#4 楼
如果您只需要窗口在被杀死时总是重新编号,则可以在.tmux.conf
中使用它:set-option -g renumber-windows on
评论
这正是我想要的!
– Dharmit
20年6月17日在9:23
#5 楼
前面的答案都很好,但是,如果您想要一次又一次地打乱少量窗口,这是一个简洁的解决方案。到一个新的窗口号(必须尚未被占用)。要交换两个窗口,请先将一个窗口临时移到新编号。例如交换Windows 3和5:move-window -t <number>
评论
相关:stackoverflow.com/questions/8469612/…