2

当我键入多行命令时

$ for i in 1 2 3; do
for> echo $i
for> done
1
2
3

然后用向上箭头调用命令,退格在最后一行的开头停止(即在擦除之后done)。有没有办法让 zsh 行编辑器通过跳到末尾echo $i并擦除前一行来保持退格?我知道我可以使用向上箭头,但我想保持退格。有趣的是,这适用于使用 Ctrl-W 进行文字擦除,但不适用于退格。

4

1 回答 1

2

当您运行时,bindkeys -v所有键都设置为类似 vi 的行为,包括绑定到vi-backward-delete-char. 之后您可以覆盖特定的键,如下所示:

bindkey '^h' backward-delete-char

或者也许^?代替^h- 键入 Ctrl-V Backspace 以获得正确的代码。

于 2013-05-24T09:36:21.683 回答