在 tmux 中调整屏幕分割窗格大小

在 tmux 中调整屏幕分割窗格大小

我想调整窗格大小,以便我可以扩展/压缩窗格大小(上/下/左/右等)..

有什么办法可以完成这个吗?

答案1

假设您的前缀键仍然是默认的,CtrlB
要向下调整大小,请使用:: CtrlBresize-p -D 2
要向上调整大小,请使用:: CtrlBresize-p -U 2
要向左调整大小,请使用:: CtrlBresize-p -L 2
要向右调整大小,请使用:: CtrlBresize-p -R 2

因此,这意味着首先按住Ctrl,然后按下并释放B,然后释放 B ,然后输入冒号(:,通常通过按住Shift并按下分号来输入;),然后输入单词 resize 和其余部分。这些水平线是常见的连字符/破折号/减号。在行末,发出“换行符”(按Enter或 ,Return具体取决于键盘上的内容)。

末尾的数字是可选的,默认为 1。-U 也是默认值,不需要。

如果您忘记了,^B?将在键的末尾显示这些找到的 C-Up 和 C-Down 和 C-Left 和 C-Right(使用默认键绑定)。

您也可以尝试按 Ctrl+B,然后按 Ctrl+箭头键。
但是,请注意,在某些终端上,Ctrl 箭头键可能会出现问题。因此,您可以尝试解决终端限制,或者创建新的快捷键绑定,或者干脆不使用快捷键,而使用上面显示的较长的命令。

更新:我非常欣赏这个问题。这个问题在首次发布后几年内一直得到赞同。

我上面提供的信息应该适用于各种情况。例如,当使用 SSH 控制使用内置有 tmux 的 OpenBSD 的远程计算机时,它就可以工作。

有些人发现其他一些技术对他们来说效果很好,这些技术可能使用更少的按键。特别是,tmux 似乎已成为 Mac 的内置功能,人们在按住一个或多个键时取得了一些成功。这些技术不太可能在各种场景中发挥作用(例如,当使用不同类型的计算机/操作系统,以及可能的远程终端时),但在某些环境中,替代方法可能比这些说明中描述的方法更快。

这个答案在下面引发了一些评论,描述了一些对其他人有效的替代方案。如果你只是想用一种可靠的方法完成工作,我建议按照这个答案顶部附近的说明进行操作。如果你想进一步了解可能更快的方法,请务必花时间查看这个答案下的评论,因为那里的信息显然对人们也很有效。

答案2

调整窗格大小的一个选项是使用鼠标。为此,请将以下几行添加到.tmux.conf

set -g mode-mouse on
set -g mouse-resize-pane on

如果你使用的是 Mac,并且上述方法不起作用,请使用此方法(来源):

set-option -g mouse on

开启此模式后,只需单击并拖动窗格分隔线即可调整其大小。

答案3

假设您的前缀键是 Ctrl-B(Mac 上为 Cmd-B):

  1. 按下 Ctrl-B 并释放
  2. 按住 Meta(Mac 上的选项)
  3. 按住 Meta 键并反复按箭头键以调整当前窗格的大小

然而,似乎存在一些超时,所以如果您在按住 Meta 的同时 1 或 2 秒内没有按下箭头键,Meta-{arrow} 将被视为当前提示中的输入。

答案4

我刚刚发现了另一种方法。显然tmux有两种不同的按键方式(假设您的前缀键仍然是Ctrlb

  1. 按下Ctrlb,抬起手指,然后按下其中一个arrow键。这将切换焦点。
  2. 按下Ctrlb,不要抬起手指,然后arrow同时按下其中一个键。这样可以调整窗格大小,我想这比其他任何方法都快。

类似地,Ctrlbo也有不同的行为。第一种按键切换焦点,第二种按键切换窗格。

相关内容