(man bashで)readlineに関するドキュメントを確認しましたが、1つの質問に対する解決策が見つかりませんでした。キーを押したときにreadline設定(設定...on / off)を変更するには?
キーバインディングは次の形式で表示されます。
key:function
または
key:"string to enter"
しかし、私が試したとき:
key:set .... off
動作しません。
答え1
bind
optionsで組み込みコマンドを使用できます-x
。
bind "set var val"
bind -x keyseq:command
keyeq入力時に実行されるCauseコマンドを使用して変数を設定できるので、うまく
動作bind -x 'keyseq:bind "set var val"'
します。
はい:
bind 'set expand-tilde off'
bind -v | grep expand-tilde
# outputs set expand-tilde off
bind -x '"\C-x\C-t": bind "set expand-tilde on"'
Control+ x、Control+を押します。t
bind -v | grep expand-tilde
# outputs set expand-tilde on
詳細については、次を参照してください。help bind