Ubuntu 18.04
私はIDEで組み込み端末を使用しており、IDEバインディングがあります Ctrl8 これは非常に便利で便利であり、再バインドしたくありません。しかし Ctrl8 ショートカットは Backspace IDEに埋め込まれた端末に焦点を合わせたとき、これは本当に迷惑です。さらに Ctrl8 後方の文字削除のために私には役に立たないようです。
ターミナルを開こうとした後、Edit-> Preferencesを開いてからShortcutsを開きましたが、 Ctrl8 そこで。では、単に無効にする方法は?構成ファイルはありますか?
Ctrl8 通常の意味でのショートカットではありません。多くの端末エミュレータは、従来通り^?
(別名 Ctrl?) にとって Ctrl8 (詳細については このU&Lの投稿 をご覧ください)。これは、notであり、通常はソースコードを変更する以外の構成可能な動作です。
^?
は、ASCII Delおよび^H
(別名 CtrlH)for ASCII Backspace(詳細については この情報投稿 を参照)。
したくない場合 Ctrl8 キャラクターを削除するには、変更が必要になる場合があります。
端末が送信する制御コード Backspace キー。 GNOMEターミナルは通常、デフォルトで^?
(ASCII DEL)、IIRCに設定されているため、^H
に設定する必要があります。 GNOMEターミナルでは、Edit->Profile Preferences->Compatibility :
端末にこれを設定するオプションがなく、^?
を送信する場合 Backspace、その後、次の2つのステップが壊れます Backspace。
擬似TTYがerase
に使用する制御コード
現在の状態を確認してください:
$ stty -a | grep erase
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = M-^?; eol2 = M-^?;
swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W;
erase= ^?
の場合、それを変更する必要があります。
stty erase '^H'
シェルが前の文字を消去するために使用する制御コード。 bashでは、デフォルトはboth^H
および^?
が制御TTYのerase
文字の場合、^?
になります。
現在の状態を確認してください:
$ bind -p | grep backward-del
"\C-h": backward-delete-char
"\C-?": backward-delete-char
\C-?
バインディングを削除し、必要に応じて\C-h
バインディングを追加します。
bind -r '\C-?'
bind '\C-h: backward-delete-char'
これらを.bashrc
に追加して、これらの設定を保存します。
または、IDEショートカットを変更できます。