web-dev-qa-db-ja.com

WindowsでGitターミナルのタイトルを変更するにはどうすればよいですか?

私はWindows 10で作業しており、通常、最大5つのCMDウィンドウを開いています。これを行うのは、同じアプリケーションを異なるデータで実行し、例外がスローされた場合に監視し続ける必要があるためです。

ウィンドウのタイトルを変更し(titleコマンドを使用)、デフォルトのテキストの代わりに数字を使用して、作業中のウィンドウを簡単に識別し、_Alt+Tab_( CMDウィンドウの操作方法の例

最近、Gitを使い始めましたが、Windows用のGit Bashターミナルが本当に好きです。 CMDウィンドウの場合と同じようにGit Bashターミナルを操作したいのですが、ウィンドウのタイトルを変更する方法が見つかりません。私は少し検索して これらの手順 と他のいくつかを見つけました(まだ3つ以上のリンクを投稿することが許可されていないため貼り付けることができません)が、別の設定でのみ機能するようですデフォルトのタイトル。ウィンドウのタイトルを、選択したカスタムテキストにいつでも変更したい。

これは可能ですか? Git Bashで使用できるtitleのようなコマンドはありますか?

13

あなたは this link で正しい軌道に乗っていました

_git-Prompt.sh_スクリプトを少し変更すると(私にとっては、これはc:\Program Files (x86)\Git\etc\profile.d\git-Prompt.shにあります)、タイトルを好きなようにすることができます。

注:このディレクトリに書き戻すには、管理者としてNotepad ++などを実行する必要があります。

まず、_git-Prompt.sh_(もちろん_git-Prompt.backup.sh_など)のバックアップを保存してから、_git-Prompt.sh_の先頭を次のように変更します。

[編集:最初のtestフラグを_-n_から_-z_に修正して、空の$ GITTITLEPREFIXをチェックしました空ではない変数ではなく変数で、不足している 'fi'を追加します]

_if test -z "$GITTITLEPREFIX" # if not empty
then
    GITTITLEPREFIX="Git-Bash => " # prefix that will have current pwd appended after it
fi

if test -f ~/.config/git/git-Prompt.sh
then
    . ~/.config/git/git-Prompt.sh
else
    if test -n "$GITTITLE"
    then   ##### Set window title directly to GITTITLE if not empty
        PS1='\[\033]0;$GITTITLE\007\]' 
    else   ##### Set window title to GITTITLE PREFIX plus the PWD
        PS1='\[\033]0;$GITTITLEPREFIX${PWD//]^[:ascii:]]/?}\007\]' 
    fi
fi
###### Leave the rest of the file the same
    PS1="$PS1"'\n'
    PS1="$PS1"'\[\033[32m\]'
###### Etc.
_

これにより、最初にGITTITLEPREFIXが空かどうかがチェックされ、空でない場合は、リンクされた記事と同様に、「Git-Bash =>」に設定されます。この後に現在のパスが追加されるため、「1:$ PWD」が必要な場合は、次のようにGITTITLEPREFIXを「1:」に設定します。

_GITTITLEPREFIX="1 : "
_

それ以外の場合は、GITTITLEを空でない値に設定すると、タイトル全体がGITTITLEのコンテンツに正確に設定されます(PWDは追加されません)。したがって、「1」だけが必要な場合は、次のように使用します。

_GITTITLE="1"
_

次に、スクリプトを実行します。私のパスで、私はこのようにしました:

_. "/c/Program Files (x86)/Git/etc/profile.d/git-Prompt.sh"
_

タイトルが変わるはずです。もちろん、これにエイリアスを設定するか、パスから別のスクリプトを作成して、パスを実行するのが簡単になるので、タイトルは単なる引数になります。読者の練習問題として残しておきます...

7
LightCC

このスレッドは数か月前のものです。しかし、私は代替案が役立つと思います

ユーザープロファイルフォルダーの.bashrcファイルに次の行を追加できます

export TITLEPREFIX="Git Bash"

Git bashをタイトル接頭辞にしたい場所。これはユーザー固有の変更です。したがって、自分のログインを持つ複数のユーザーがマシンを使用する場合、誰でも自分のタイトルをカスタマイズできます。

8
user3086265

簡単なオプションはecho -ne "\e]0;YOUR TITLE HERE\a"

6
Fabio A. Correa

スクリプトにほとんど変更を加えずに質問を解決しました。最初に、ウィンドウに必要な名前を渡すために、変数name=$1を追加して、title変数に設定します。

name=$1
PS1='\[\033]0;$name\007\]' # set window title

2つ目は、推奨される here です。次の行にコメントしました。

#PS1="$PS1"'\[\033[35m\]'       # change to purple
#PS1="$PS1"'$MSYSTEM '          # show MSYSTEM

最終的なコードは次のとおりです。

if test -f /etc/profile.d/git-sdk.sh
then
    TITLEPREFIX=SDK-${MSYSTEM#MINGW}
else
    TITLEPREFIX=$MSYSTEM
fi
name=$1
PS1='\[\033]0;$name\007\]' # set window title
PS1="$PS1"'\n'                 # new line
PS1="$PS1"'\[\033[32m\]'       # change to green
PS1="$PS1"'\u@\h '             # user@Host<space>
#PS1="$PS1"'\[\033[35m\]'       # change to purple
#PS1="$PS1"'$MSYSTEM '          # show MSYSTEM
PS1="$PS1"'\[\033[33m\]'       # change to brownish yellow
PS1="$PS1"'\w'                 # current working directory
if test -z "$WINELOADERNOEXEC"
then
    GIT_EXEC_PATH="$(git --exec-path 2>/dev/null)"
    COMPLETION_PATH="${GIT_EXEC_PATH%/libexec/git-core}"
    COMPLETION_PATH="${COMPLETION_PATH%/lib/git-core}"
    COMPLETION_PATH="$COMPLETION_PATH/share/git/completion"
    if test -f "$COMPLETION_PATH/git-Prompt.sh"
    then
        . "$COMPLETION_PATH/git-completion.bash"
        . "$COMPLETION_PATH/git-Prompt.sh"
        PS1="$PS1"'\[\033[36m\]'  # change color to cyan
        PS1="$PS1"'`__git_ps1`'   # bash function
    fi
fi
PS1="$PS1"'\[\033[0m\]'        # change color
PS1="$PS1"'\n'                 # new line
PS1="$PS1"'$ '                 # Prompt: always $
MSYS2_PS1="$PS1"               # for detection by MSYS2 SDK's bash.basrc

一時的にスクリプトのコピーを作成し、C:に貼り付けました。次のように、パスに従って、タイトルを変更する必要があるたびに簡単に実行できます。$ . /c/changename.sh

まだスクリプトについて学習しているので、エイリアスを設定できます。 @LightCCが言ったように、「それは読者の演習として残しておきます...」