You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

寻求支持不同尺寸窗口的tmux替代终端复用器

解决跨屏幕终端复用窗口尺寸问题的工具推荐

我之前也碰到过和你一模一样的困扰——用tmux的时候,在VSCode小终端里开的会话,到大屏上附加后尺寸完全跟着原窗口走,看输出特别憋屈。试了几个工具后,终于找到能完美解决这个需求的替代方案,分享给你:

1. Zellij

  • 这绝对是我现在的主力工具,它最核心的优势就是支持不同客户端拥有独立的窗口尺寸,完全匹配你的使用场景:在VSCode的嵌入式小终端里启动Zellij会话执行命令,然后在大屏终端用zellij attach附加同一个会话,大屏这边会自动适配当前终端的大小,两边的窗口尺寸互不干扰,输出也会实时调整宽度。
  • 它的上手成本很低,默认操作和tmux有不少相似之处,而且自带可视化的分屏提示,不用记太多复杂命令。启动会话直接敲zellij就行,完全不用额外配置就能实现尺寸独立的功能。

2. WezTerm

  • 虽然WezTerm本质是终端模拟器,但它内置的会话复用功能非常强大,同样支持每个连接的窗口独立调整尺寸。你可以把VSCode的默认终端改成WezTerm,在小窗口里运行命令,然后在大屏上打开WezTerm,用wezterm connect <你的会话名>连接到同一个会话,两边的窗口大小可以各自随意调整,输出内容会自动适配当前窗口的宽度。
  • 另外它还支持GPU加速,对于输出量大的场景(比如编译日志、程序运行输出)显示会更流畅,不会有卡顿的情况。创建指定名称的会话可以用wezterm start --new-window --session my-dev-session

3. Tmux的临时救急方案(不想换工具的话)

  • 如果你暂时不想切换工具,tmux也有一个临时的解决办法:附加会话的时候加上-d参数先断开原会话,命令是tmux attach -d,这样新的大屏终端尺寸会成为会话的默认尺寸,输出就能正常显示了。不过缺点是VSCode里的原终端会被断开,你需要重新附加回去,这时候VSCode的终端会适配新的尺寸(可能需要手动调整一下窗口大小触发适配)。这个方法不如上面的工具方便,但可以临时应付一下。

内容的提问来源于stack exchange,提问作者crm

火山引擎 最新活动