Answers:
你想用 push-line-or-edit
小部件,然后您可以编辑完整的命令:
推线或编辑 在顶级(PS1)提示符,相当于推送线。在辅助(PS2)提示符下,移动整个当前多行结构 进入编辑器缓冲区。后者相当于push-input,后跟get-line。
默认情况下,此窗口小部件未绑定到任何键,因此请使用
bindkey "^[q" push-line-or-edit
把它绑定到 ESC-q
。 (这个组合是必然的 push-line
使用emacs键绑定时,如果使用 push-line
定期选择其他组合键。)
一个小的演示(■表示光标):
$ bindkey "^[q" push-line-or-edit $ echo ' [输入] [quote]■ [ESC-Q] $ echo' ■ [向上箭头] $■echo'