设置标题??
我刚刚发现了一些用于更改终端上的 bash 终端标题的技巧。它的工作原理如下:
#function set-title() on terminal
function set-title() {
if [[ -z "$ORIG" ]]; then
ORIG=$PS1
fi
TITLE="\[\e]2;$*\a\]"
PS1=${ORIG}${TITLE}
}
我在 中写入了该代码~/.bashrc
。因此我可以更改标题,并且不会混淆我使用的终端。
前期问题
我想定制bash
vim
他们的朋友的新外观,所以我使用这个家伙指导安装电力线并且它运行完美。
问题
我的set title
功能现在不起作用。
我的尝试
将 set-title 代码置顶不起作用.bashrc
。(我知道这种方法很蠢)
写set-title
在上面usr/share/powerline/bindings/bash/powerline.sh
不起作用,我认为代码不同于.bashrc
那么如何恢复我的set-title
功能?
答案1
您的方法 ( "\[\e]2;$*\a\]"
)(输出Esc];Your title^G(Bel))。这是一个“VT100 ESCape 序列”,并非所有终端仿真器都能正确处理。echo $TERM
在两种环境中进行比较。
对于更便携的方法,请安装并使用xttitle - Changes X terminal emulator window titles
。我已将其内置到我的~/.bashrc
(cd
命令调整标题):
# from the "xttitle(1)" man page - put info in window title
update_title()
{
[[ $TERM = xterm ]] || [[ $TERM = xterm-color ]] && xttitle "[$$] ${USER}@${HOSTNAME}:$PWD"
}
cd()
{
[[ -z "$*" ]] && builtin cd $HOME
[[ -n "$*" ]] && builtin cd "$*"
update_title
}