我想将有关 Git 分支的信息添加到我的命令行提示符中,我发现这个帖子:
parse_git_branch() {
git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/'
}
export PS1="\u@\h \[\033[32m\]\w\[\033[33m\]\$(parse_git_branch)\[\033[00m\] $ "
我将这些行添加到我的.bashrc
.
它可以工作,在提示符 ( joedoe@machine1 ~/git/repo1 (dev_branch) $
) 中显示 Git 分支,但是,它弄乱了我的 GNOME 终端的窗口标题,该标题过去包含当前工作目录,现在它只显示“终端”。
为什么这会改变终端窗口标题?有更好的解决方案吗?
答案1
旧 $PS1 的这部分设置标题:
\[\e]0;\u@\h: \w\a\]
该\[...\]
部分仅意味着里面的字符不会改变提示的长度。\e]0;...\a
用于设置标题,标题被设置为\u@\h: \w
翻译为用户名@主机名:工作目录。
将该模式包含到您的新 PS1 中以获得相同的行为。