Bash対話型モードでのみターミナルWerase設定を無効にします。

Bash対話型モードでのみターミナルWerase設定を無効にします。

C^wTerminalでデフォルト以外のタスクにバインドしたいが、Terminalで無効にする必要がbashあります。werase残念ながら、これはbashが起動した他のプログラム、特に私のSSHセッションに影響します。C^wそこに入力するとechoが発生します^W

bashの対話型モードでのみデフォルト以外の特定の端末設定を有効にし、コマンドを実行すると自動的に無効/復元する方法はありますか?

ベストアンサー1

現在、stty設定を無効にするreadlineオプションがあります。あなたの~/.inputrc

set bind-tty-special-chars Off 

Control-wその後、必要に応じてバインドできます。対話的に次のことを試すことができます。

$ bind 'set bind-tty-special-chars Off'
$ bind -ps | grep C-w
"\C-w": unix-word-rubout
$ bind -x '"\C-w": date'

その後、この文字を入力してコマンドを実行しますdateが、stty設定は影響を受けません。

おすすめ記事