答え1
これはまさに iTerm2 の統合です。これを削除するのではなく、iTerm2 の動的なテストを統合スクリプト内で実行する必要があります。注意: 以下の ssh に関する警告を参照してください。
itermが応答するANSIシーケンスがあり、これはどのシェル/sshがアクティブであるかに関係なく機能します。独自のシーケンスを作成したい人のために、シーケンスは次のとおりです。printf '\x1b[1337n'
。
.bashrc (または使用するシェル init) には、おそらく次のような内容が含まれています。
テスト -r ~/.iterm2_shell_integration.bash && . ~/.iterm2_shell_integration.bash
おそらく最初のテストは不要です。さらに醜いものに変更するだけです:
isiterm2.sh&&テスト -r ~/.iterm2_shell_integration.bash && . ~/.iterm2_shell_integration.bash
VS Code リモート エクスプローラー/SSH ユーザー VSコードは起動時にSSH接続に文字を自動入力/フィードするようです。これらのコマンドはisIterm2.shのsttyリセットシーケンスによって切り取られる可能性があります。私の短期的なハックは、プロンプトの2番目の表示でこのチェック/ロードを行うことです。これはそのようなただし、これは間に合わせの策です。
答え2
弦は実際にはANSIシーケンスむしろ、これらは ANSI シーケンスとして開始されますが、リモート マシン上で (何らかのスクリプト エラーにより) 変換され、ほとんどの文字が別の形式に変換されます。
アンANSIシーケンス例えば
escape[A
;の前にオプションの が付いている可能性がありますAが、問題のある出力では133
(は 8 進数 133 です) と表示されます。同様に、スクリーンショットではいくつかの場所で ASCII エスケープ文字ではなく[リテラルが表示されています。\033
おそらく、GUI ターミナルと Putty の違いは、前者がTERM
に設定されている可能性があるのに対しxterm-256color
、PuTTY には独自の設定があり、TERM
PuTTY では が設定されていない (デフォルトはxterm
) ことです。
Ubuntu 14.04はこれを独自に実行したわけではない(しばらく前から存在していたが、誰も不満を言っていない)これ) なので、これはインストール後の「改善」です。提案されているように、まずは独自のスクリプト.bashrc
(または追加したカラーテーマ スクリプト - バグが多いものもあります) を調べてください。
答え3
これはiTerm2のシェル統合のようです。http://www.iterm2.com/documentation-shell-integration.html。
.iterm2_shell_integration.bash が .bash_profile によってソース化されているかどうかを確認します。
答え4
これは、Iterm2 の非標準エスケープ コードが原因です。独自のエスケープコード、こちらで発行されています:シェル統合により Linux 端末に無効な文字が表示されるこの問題を解決するには、iTerm2 統合がインストールされているリモート サーバーで次のコマンドを実行します。
curl https://raw.githubusercontent.com/gnachman/iTerm2/master/tests/isiterm2.sh > ~/.isiterm2.sh && chmod ug+x ~/.isiterm2.sh
スクリプトが成功した場合にシェル統合をロードする条件を設定するために、
.bash_profile
(または、または任意の場所)を変更します。.profile
~/.isiterm2.sh && test -e "$HOME/.iterm2_shell_integration.bash" && source "$HOME/.iterm2_shell_integration.bash"