首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >当将较小的监视器切换到更大的监视器时,有没有办法重新绘制tmux窗口?

当将较小的监视器切换到更大的监视器时,有没有办法重新绘制tmux窗口?
EN

Stack Overflow用户
提问于 2018-02-24 07:54:35
回答 6查看 0关注 0票数 0

假设你需要通过ssh与Terminal.app连接到远程服务器,并且当你用更大分辨率的显示器和已经启动的tmux连接时,它会在控制台周围画点,可以看出来它不符合新窗口的尺寸。 有什么办法重新绘制和清理窗口吗?我尝试了CTRL + L或CTRL-B + R命令,但是这两者都没有起到任何作用。

代码语言:javascript
复制
% tmux -V
tmux 1.5
EN

回答 6

Stack Overflow用户

发布于 2018-02-24 12:15:31

tmux将窗口的尺寸限制为它所连接的所有会话中的每个尺寸中的最小尺寸。如果不是这样的话,就无法显示所有连接的客户端的整个窗口区域。

最简单的方法是在连接的时候将其他客户端从会话中分离出来:

代码语言:javascript
复制
tmux attach -d

或者,在连接到会话之前,可以将任何其他客户端移动到不同的会话:

代码语言:javascript
复制
takeover() {
    # create a temporary session that displays the "how to go back" message
    tmp='takeover temp session'
    if ! tmux has-session -t "$tmp"; then
        tmux new-session -d -s "$tmp"
        tmux set-option -t "$tmp" set-remain-on-exit on
        tmux new-window -kt "$tmp":0 \
            'echo "Use Prefix + L (i.e. ^B L) to return to session."'
    fi

    # switch any clients attached to the target session to the temp session
    session="$1"
    for client in $(tmux list-clients -t "$session" | cut -f 1 -d :); do
        tmux switch-client -c "$client" -t "$tmp"
    done

    # attach to the target session
    tmux attach -t "$session"
}
takeover 'original session' # or the session number if you do not name sessions

如果是由较小的客户端切换到会话,屏幕将再次缩小。

还有一种变化是你只能“take over”窗口(将窗口链接到一个新的会话中,设置aggressive-rersize,并将其他窗口活动的会话切换到其它窗口),但是在一般情况下,编写脚本会变得更困难(两者的“exit”都不同,当你想要退出该会话的时候你可以取消窗口链接或者关闭会话而不仅仅是脱离会话)。

票数 0
EN

Stack Overflow用户

发布于 2018-02-24 13:30:27

可以通过CTRL-B + SHIFT-D分离来自于会话中的客户端。

tmux将列出所有会话的当前维度,然后你只需将它从所有较小的会话中分离出来。

票数 0
EN

Stack Overflow用户

发布于 2018-02-24 14:44:15

在最近的tmux版本上有一个更简单的解决方案(测试版本为1.9):

代码语言:javascript
复制
tmux detach -a

-a为该会话中的所有其他客户端设置,但当前客户端除外。

你可以在.[bash|zsh]rc设置alias:

代码语言:javascript
复制
alias takeover="tmux detach -a"

Workflow:你可以正常连接到会话中,并且如果你被另一个强制缩小tmux窗口大小的会话干扰的话,可以通过使用takeover来解决这个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100007423

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档