和 ”老的“ ,当您键入+ ,(或)tmux
时,组中的每个会话都会被单独列出......(当然和,我不知道最近这种情况是否持续存在)CtrlBschoose-tree -s
2.1
2.6
例如,请注意test
和test2
位于不同的行上,但都标记为group 0
:
$ docker run --rm -it ubuntu:16.04 bash
root@be06ee1f6f86:/#
root@be06ee1f6f86:/# apt update && apt install -y tmux
[...]
root@be06ee1f6f86:/# tmux -V
tmux 2.1
root@be06ee1f6f86:/# tmux new -As test
<--- inside tmux --->
root@be06ee1f6f86:/# tmux detach
<--- outside tmux --->
[detached (from session test)]
root@be06ee1f6f86:/# tmux new -As test2 -t test
<--- inside tmux --->
root@be06ee1f6f86:/# tmux choose-tree -s
<--- choose-tree --->
(0) + test: 1 windows (group 0)
(1) + test2: 1 windows (group 0) (attached)
在较新的版本中,情况有所不同,并且 A)Ctrl+C不再用于退出树(q必须使用),而且 B)两个会话列在一行上,因此无法选择“另一个“(当然3.0a
并且3.2a
受到影响):
$ docker run --rm -it ubuntu:22.04 bash
root@94da749ff5aa:/# apt update && apt install -y tmux
root@94da749ff5aa:/# tmux -V
tmux 3.2a
root@94da749ff5aa:/# tmux new -As test
<--- inside tmux --->
root@94da749ff5aa:/# tmux detach
<--- outside tmux --->
[detached (from session test)]
root@94da749ff5aa:/# tmux new -As test2 -t test
<--- inside tmux --->
root@94da749ff5aa:/# tmux choose-tree -s
<--- choose-tree --->
(0) + test2: 1 windows (group test: test,test2) (attached)
这是 的根本性变化吗tmux
?还是有配置选项可以恢复这些更改?理想情况下,两者都重新启用^C
(尽管这是肌肉记忆,会进行调整),特别是在单独的行上显示每个会话?(我找了好久,但没找到)
我知道我可以用 查看它们^B:ls
,并用 选择正确的会话^B:new -As ${name}
,但我不想输入所有这些...
答案1
好吧,写完这个问题后,我就去一个新的地方挖掘了……tmux/CHANGES
仅以树模式显示会话组的第一个成员(-G 标志选择树以显示全部)。
果然,choose-tree -sG
我所追求的大部分目标都实现了(忽略^C
)。
通过将以下内容添加到您的 来使其生效~/.tmux.conf
:
bind-key -T prefix s choose-tree -ZGs
...它也在手册页中,呵呵。
-G
包括树中任何会话组中的所有会话,而不仅仅是第一个会话。