2014-01-08 54 views
10

私はMacでいくつか更新を行い、設定の一部が壊れているようです。私はTmuxプロンプトが通常のbashプロンプトに従わないPS1 W

これは、代わりに パス全体のちょうど現在のディレクトリを表示するために私の通常のbashセッションで動作している「$ W \」=次は私の.bash_profileに

輸出PS1が設定されています。しかし、私がtmuxに切り替えると、再びパス全体が表示されます。色やその他の文字のようなbashプロファイルのPS1への他の変更は正常に機能し、tmuxに反映されます。私は.tmux.confを空にして、それが競合を引き起こしていたかどうかを確認しましたが、この動作に変更はありませんでした。

システムで新しいユーザーを作成して同じPS1を試しましたが、通常のセッションとtmuxの両方で完全に機能しました。

私はそれが動作していて、アップデートで何が変更されたのか分からないので、私はほとんど混乱しています。 .bash_profileと.tmux.conf以外のファイルはここで再生できますか? tmuxがどこから設定を引っ張っているかを知る方法はありますか?

追加情報: この動作はiTerm2とターミナル tmuxはバージョン1.8 の両方で同じであるマックOSX 10.9.1

+0

'tmux'はログインしていないシェルを作成している可能性があります。その場合、代わりに' .bashrc'がソースとなります。 – chepner

+0

私の.bash_profileの他のエイリアスがtmuxに持ち越され、PS1に加えた他の変更がtmuxで正しく反映されているとは思いませんが、\ W変数は動作したくないようです通常は。 – Paige

+0

tmuxに入ったら、$ PS1はどのように設定されていますか? – graywh

答えて

1

あなた.tmux.confに以下を追加します。

new -n WindowName bash --login 

あなたはWindowNameを置き換えることができます最初のウィンドウに名前を付けるために必要なものは何でも構いません。このようにbashが呼び出されると、$PS1を変更した.bash_profile.bash_rc.profileなどに送信されます。

+0

これは私のためには機能しませんでしたが、私の解決策は次の答えです。 – srk

1

私は同じ問題を抱えていたし、いくつかの研究の後、私は私の~/.tmux.confに次のコマンドを追加しました:私はiTerm2でOSX 10.9.5を使用しています

set-option -g default-command "reattach-to-user-namespace -l /opt/local/bin/bash --login" 

を2.0.0.20141103を構築し、bashの4.3.30(1 )-release、tmux 1.9a。 BashとtmuxはMacportからのものです。

+0

これはすでにset-optionを使用している場合に機能します。 – RaviU

7

私にも同様の問題があります。

tmux new bash 

だから、これを簡素化するために、私はちょうど私がすべて使用の私の〜/ .bash_aliasesファイルにエイリアスを作成しました:私はいつものように、適用されるbashコマンドでtmuxは始めた場合、私は、正しい結果を得ます時間:

alias tn='tmux new bash' 

これは最初のウィンドウでのみ機能します。新しいウィンドウを作成するときは、端末にbashを実行してbashを再起動する必要があります。

+0

親指の男..受け入れられた答えは私のためにも働かなかった。 –

11

この1つは私の作品:tmuxの/端末で :

tmux set-option -g default-command bash 

それとも単に~/.tmux.confに入れる:

set-option -g default-command bash 
0

屏風でtmuxは使用している場合、あなたはbyobu-promptコマンドを試すことができます。それはbashのカラープロンプトが必要かどうか尋ねます。 Yesと答えると、プロンプトは通常のuser @ hostに変わります。

関連する問題