我有一个很好的 tmux 状态行,但我不喜欢 bash/命令如何沿着它运行。也就是说,如果屏幕已满,我会在状态行上方输入内容。
我希望在其上方有一个换行符,这样我输入的内容就不会“触及”状态行;有什么办法可以做到这一点吗?
例子:
假设我有一个非常小的终端窗口,有两行长
bash>$ (cursor)
1: bash* 2: bash- 3: vim-
我如何获得一个空行来将状态栏与提示分开,例如:
bash>$ (cursor)
1: bash* 2: bash- 3: vim-
答案1
如果您不介意直接在窗格边框上方键入(对于任何不接触状态行的面板,无论如何都必须这样做),您可以强制tmux
使用较小的窗口:
set force-height <single_window_height - 1>
然而,这只是每个窗口的设置,并充当最大高度限制,因此当您更改包含的终端尺寸时,它不会执行您想要的操作。
答案2
从https://github.com/tmux/tmux/issues/1886#issuecomment-525382148
set -Fg 'status-format[1]' '#{status-format[0]}'
set -g 'status-format[0]' ''
set -g status 2
这利用了 tmux >= 2.9 中的多状态栏支持。它创建两个状态栏,使第二个状态栏成为您的实际状态栏,第一个状态栏成为空白以模拟空白