我在 bash 中有一个trap
onDEBUG
信号,用于更新 Xterm 中的标题
__title() {
COMMAND="$BASH_COMMAND"
case "$COMMAND" in
history* | autojump*)
COMMAND=""
;;
esac
if [ "$COMMAND" ]; then
echo -ne "\e]0;${COMMAND}\007"
else
echo -ne "\e]0; ... \007"
}
if [ "$BASH" ]; then
case "$TERM" in xterm* | rxvt*)
trap '__title' DEBUG
;;
esac
fi
有没有办法在 tmux 中捕获这个标题并在窗格和窗口标题中使用它?
答案1
我已经成功地将bash
标题和tmux
标题结合起来
tmux.conf
:
set-option -g default-terminal "xterm-256color"
set-option -g set-titles on
set-option -g set-titles-string "#T / #S / #I #F #W"
set-window-option -g pane-border-status top
set-window-option -g pane-border-format '#T'
set -as terminal-overrides ',tmux*:Ms=\\E]52;%p1%s;%p2%s\\007'
set -as terminal-overrides ',screen*:Ms=\\E]52;%p1%s;%p2%s\\007'
.bashrc
if [ "$BASH" ]; then
case "$TERM" in
xterm* | rxvt* | tmux* | screen*)
trap '__title' DEBUG
;;
esac
fi