
zsh でバックスペースを押して引用符間を移動するにはどうすればよいですか?
次のように入力して Enter キーを押した後、引用符の先頭でleft
または を押しても何も起こりません。backspace
'
$ echo '
quote>
引用前の部分を再編集する方法として私が知っている唯一の方法は を押すことですcontrol c
が、あまり便利ではないと思います。
答え1
ウィジェットを使用する場合push-line-or-edit
は、完全なコマンドを編集できます。
プッシュラインまたは編集 トップレベル (PS1) プロンプトでは、push-line と同等です。セカンダリ (PS2) プロンプトでは、現在の複数行構造全体をエディター バッファーに移動します。後者は、push-input の後に get-line を実行することと同等です。
このウィジェットはデフォルトではどのキーにもバインドされていないので、
bindkey "^[q" push-line-or-edit
にバインドします。(このキーの組み合わせは、emacs キーバインディングを使用するときESC-q
に にバインドされるため、定期的に を使用する場合は別のキーの組み合わせを選択してください。)push-line
push-line
小さなデモンストレーション(■はカーソルを示します):
$ bindkey "^[q" 行または編集をプッシュ $エコー'[入力] [ 引用 ] ■[ESC-q] $エコー' ■[上矢印] $ ■エコー '