是否可以让 tmux 启动所有窗格时提示符位于底部而不是顶部?使用窗格一段时间后,输出意味着提示符位于底部,因此让提示符始终位于底部似乎很有意义。
答案1
添加这个你的~/.tmux.conf
:
set-option -g default-command 'tput cup "$(tput lines)"; exec "$SHELL" -l'
这将运行tput cup "$(tput lines)"
(取自你自己的答案),然后在新窗格中生成 shell。无论您使用什么 shell,它都应该有效。
笔记:
- 默认值
default-command
并不总是等同于"$SHELL" -l
(参见man 1 tmux
)。如果您使用default-shell
选项,则应使用可执行文件的完整路径,而不是。如果您的是本身,$SHELL
这一点非常重要。$SHELL
tmux
- 如果您明确指定一个命令(例如
bash
在tmux split-window bash
),那么它将从顶部开始,因为default-command
在这种情况下并不重要。 tput cup "$(tput lines)"
您可以使用 来插入换行符,而不是yes "" | head -n 100
。这种方法的优点是,如果窗格的高度在之后立即增加(例如,您破坏了相邻的窗格),那么这 100 个换行符很可能足以将提示保持在底部。缺点是它们将出现在窗格的历史记录中。
答案2
我找到了一种方法,使用这个问题作为灵感。我把这句话加到了我的.bashrc:
tput cup "$LINES"
或者对于那些需要使用 csh 的较差的机器,我的 .cshrc 中有以下内容:
tput cup `tput lines`
它似乎运行良好,但显然它不是 tmux 特有的。