web-dev-qa-db-ja.com

Git BashターミナルウィンドウからコピーまたはGitBashターミナルウィンドウに貼り付けるときに、制御文字0x96が侵入します

私はWindows10を使用しており、GitBashを使用しています。

このウィンドウからコピーまたは貼り付けると、文字列の先頭に「(10進数の150、16進数の0x96)」という文字が表示されることがあります。

この文字は通常表示されないため、「コマンドが見つかりません」などのエラーが発生します。問題をコピー貼り付けに結び付ける前に、私は長い間それらと格闘してきました。

最後に、貼り付けたテキストを含むURLでブラウザーを開くコマンドに、引数としてテキストを貼り付けることができました。ブラウザーのアドレスフィールドに文字が表示されました。

enter image description here

このキャラクターを生み出すのは貼り付けアクションだと100%確信しています。 I.e。テキストをソースからブラウザに直接コピーすると、文字が表示されません。同じテキストをGitBashに手動で入力すると、文字が表示されません。しかし、Git Bashにテキストを貼り付けると、文字が表示されます。

それは大きな迷惑です。どんなメカニズムがそれを生み出すのかわからないので、私は必死になっています。

キャラクター150は特別です。これが私がなんとかググったものです:

保護地域の開始、保護地域の開始、保護地域の開始

手動で変更したり送信したりできない文字位置の文字列を開始します。オプションで、消去からも保護します。 EPAは文字列を終了します。

質問:このキャラクターがGit Bashに貼り付けられたテキストに忍び込むのを防ぐにはどうすればよいですか?

わかりました、これは私が不必要なキーを押したことが原因です。

Linuxからは、Ctrl+Shift+Vで貼り付ける習慣があります。このコマンドがWindowsGit Bashターミナルに貼り付けられない場合は、代わりにShift+Insを押すことを忘れないでください。

Ctrl+Shift+Vは効果がないように見えますが、実際には非表示の制御文字を挿入します。

コマンドの先頭でたまたまCtrl+Shift+Vを押すと、結果は次のようになります。

enter image description here

それをコピーしてブラウザに貼り付けようとすると、次のように表示されます。

$ echo
bash: $'\302\203\302\226echo': command not found

UPD:GitBashをサポートする端末であるminttyには、Ctrl + Shift + C/Vキーの組み合わせに切り替えるオプションがあります。