コマンドプロンプトとGitブランチ名のターミナルウィンドウのタイトルは何ですか?

コマンドプロンプトとGitブランチ名のターミナルウィンドウのタイトルは何ですか?

私はコマンドラインプロンプトに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

プロンプト()にGitブランチが表示され、動作しますjoedoe@machine1 ~/git/repo1 (dev_branch) $が、現在の作業ディレクトリを含むGNOME端末のウィンドウのタイトルがめちゃくちゃになり、今では「ターミナル」のみが表示されます。

ターミナルウィンドウのタイトルが変わるのはなぜですか?より良い解決策はありますか?

答え1

前の$ PS1のこの部分はタイトルを設定します。

\[\e]0;\u@\h: \w\a\]

この\[...\]部分は、内部文字がプロンプトの長さを変更しないことを意味します。\e]0;...\aタイトルを設定するために使用され、タイトルは次のように翻訳される\u@\h: \wように設定されます。ユーザー名@ホスト名:作業ディレクトリ

同じ動作を得るには、このモードを新しいPS1に含めます。

関連情報