2008-08-30 1 views
8

OS X 10.5でTerminal.appを使用すると、Bashで逆方向検索を実行するとコマンドが文字化けすることがよくあります。何らかの種類のtermcapやこれを修正できるbash shoptコマンドがありますか?それは非常に迷惑です。Terminal.appでbashリバース検索を行うにはどうすれば文字化けした出力が表示されないのですか?

再現手順:Terminal.appを開いて、longishコマンドに逆検索します。コマンドを見つけたら<ctrl> -Eと打ってください。カーソルは行の最後に移動しますが、表示は更新されません。

これは、OS Xのreadlineライブラリに何らかの問題があると推測しています。何よりも検索後にカーソル位置を更新すると、カーソルの位置を更新するのが問題になります。基本的には、ctrl-aとctrl-eは検索出力を壊す傾向があります。上記で

os x terminal failure image http://involution.com/images/osxterminal.png

、コマンドの最初の部分が表示されるべきであり、カーソルが行の最後でなければならないが、それはありません。あなたは文字通り、これが起こったときにあなたが編集しているものを見ることができません。

+0

あなたの$ PS1バリアブルの価値はいくらですか? – Milhous

答えて

11

私は自分のTERMをxterm-colorの代わりにxtermに設定することができ、問題を解決しました。 (エクスポートTERM = xterm)。

+0

ちょうどこれを試して周りに行って、それは動作します! – hoyhoy

1

は、私はどちらかはCtrl +EはCtrl +または矢印キーは、コマンドラインを正しく更新を打つ、これを再現することはできません。あなたは10.5.4を走っていますか?以前のバージョンのバグでしょうか?

+0

これは私にとってTiger以来起こっています。 – hoyhoy

1

私はこのバグに遭遇してきた、と私はそれを解決する方法がわからないながら、あなたはあなたがこの記事を見てみたいことがあり<down><up>

+0

ダウン/アップが動作します。だから、理論的には検索してから、次に押してからctrl-eを押します。しかし、私はこれを解決するためにいくつかのエリートtermcapまたはreadlineパッチを探しています。 – hoyhoy

4

を押すことによって、それを回避することができます。

bash-prompt-in-os-x-terminal-broken

私は同じ問題を抱えていたし、それがPS1変数としなければなりませんでした。これが役に立ったら教えてください。

1

これが問題であるかどうかは不明ですが、bashの画面が乱れている(Terminal.appだけでなく端末エミュレータを使用している)非常に一般的な原因はサイズ変更中のウィンドウです。

起動時にBashがウィンドウサイズを読み込み、それが変更されていないとみなします。ウィンドウのサイズが変更されると、現在コンソールから読み取っているアプリケーションに信号が送信されます。これがbashでない場合(おそらくテキストエディタを実行しているため)、bashはそれについて知りません。

この場合、解決策は、bashが信号を取得して新しいサイズに気付くようにウィンドウのサイズを変更することです。

0

最悪の場合、Xサーバ(ユーティリティの下のどこか)を起動して、実際のxtermを起動することができます。

3

プロンプトに色が付いている場合は、これは認識されているバグです。
bug report msg#00019を参照してください。

関連する問題