使用git-prompt.sh PROMPT_COMMAND更改Cygwin标题栏

时间:2014-03-07 23:58:40

标签: bash cygwin

为了更好地自定义我的Cygwin命令提示符和终端窗口,我遵循了这个git-prompt指南: https://web.archive.org/web/20160304014517/http://ithaca.arpinum.org/2013/01/02/git-prompt.html

指南中的所有内容都有效,但最后一个提示位于“One Last Thing”标题下,它提供以下行来更改PS1并设置终端标题栏:

PROMPT_COMMAND='__git_ps1 "\u \W" "\\\$ " " [%s $(get_sha)] "; set_titlebar "$USER@${HOSTNAME%%.*} $(get_dir)"'

但是,当我将此行添加到我的.bashrc时,会收到以下错误:

-bash: set_titlebar: command not found

我到处寻找解决方案,解决为什么会这样,但已经走到了尽头。我正在使用mintty 1.2-beta1(x86_64-pc-cygwin),将我的终端设置为xterm,并使用git-prompt.sh脚本。

1 个答案:

答案 0 :(得分:4)

set_titlebar不是Bash内置函数,而是文章作者的自定义函数。

在链接指南的顶部,作者参考了之前的帖子:

  

许多人编写或修改了复杂的脚本来从git获取信息,将数据移植到shell的提示符中。 (我自己done it。)但是,[...]

这链接到定义set_titlebar的脚本:

function set_titlebar {
    case $TERM in
        *xterm*|ansi|rxvt)
            printf "\033]0;%s\007" "$*"
            ;;
    esac
}

您需要包含该功能,一个相似或自己编写。