最近、私はPS1変数を変更して、端末の表示の楽しみのためにかなりのソーラー色に対応することにしました。tmuxセッションにいないときは、すべてが素晴らしいです!虹、ポニー、ユニコーン、そして際立ったプロンプト!涼しい!
ただし、問題はtmux内にあります。PS1の値が期待どおりであり、tmuxが実行されていないときと同じであることを確認しました\[\033]0;\w\007\]\[\[\]\]\u\[\]@\[\[\]\]\h\[\]:\[\]\W\[\]$ \[\]
。
.bash_profile内のすべてのエイリアスなども期待どおりに機能しています。tmuxもecho -ne "\033[1;33m hi"
、予想どおりに動作するため、問題なく色を表示していgls --color
ます。
私の.bash_profileの現在の関連行はですがexport PS1="\[\033]0;\w\007\]\[\[\]\]\u\[\]@\[\[\]\]\h\[\]:\[\]\W\[\]$ \[\]"
、元々は.bash_promptファイルにあるスクリプトを使用していくつかの条件などを処理していました。より単純なバージョンに戻してみました。
実行bash
するとプロンプトが色付けされますが、各ペインで実行する必要があります。export PS1=[that long string I've already posted]
しない。
私の.tmux.confは次のとおりです。
set-option -g default-command "reattach-to-user-namespace -l /usr/local/bin/bash"
set -g default-terminal "xterm-256color"
set-window-option -g automatic-rename on
bind '"' split-window -c "#{pane_current_path}"
bind % split-window -h -c "#{pane_current_path}"
bind c new-window -c "#{pane_current_path}"
.bash_profileの関連部分:
export TERM="xterm-256color"
if which tmux >/dev/null 2>&1; then
test -z "$TMUX" && (tmux attach || tmux new-session)
fi
私はmacOS Sierra、iTerm 2を使用していますが、bashの現在の自作バージョンとシステムbash(それは現在自作を使用しています)、tmux 2.4の両方を試しました。
またtouch testing_touch_from_bash_profile
、2つのペインを使用したtmuxセッション中に.bash_profileに配置し、1つのペインを強制終了し、ペインを開いて、ファイルが実際に作成されたことを確認しました。
echo $TERM
を返しますxterm-256color
。
設定変更をテストするためにtmuxを終了するときに、tmuxを終了したこと、およびを介して現在システム上でtmuxプロセスが実行されていないことを確認しましたps -ax | grep tmux
。
奇妙なことに、.bash_promptスクリプトを追加すると、各tmuxペイン内で色を変更する限り、色も変わります。
私は/programming/21005966/tmux-prompt-not-following-normal-bash-prompt-ps1-wを見て、最初の行のbash呼び出しの後に--loginフラグを追加してみました.tmux.confの。tmuxを起動tmux new bash
すると、最初のペインは色付けされますが、後続のペインは色付けされません。
$ PS1変数は、フィールドの色付けを除いて、一見すべての面で尊重されています。
誰かアイデアはありますか?
PS1
あなたが投稿の設定が変更色に任意のコマンドを持っていません。tmuxの外部で機能する実際の設定を投稿します。また、あなたが設定されなければならないPS1
では.bashrc
ないでは、.bash_profile
:.bash_profile
すべてで実行されないことがあります、との設定は、後に上書きされる可能性があります。