使用 vim 进行退格

使用 vim 进行退格

我知道删除字母的“命令”是 x,但如果你真的只是删除 3-5 个字母,按下 真的有用吗ESC + hhhhh + xxxxx

在 vim 中,我们不能使用退格键,有什么原因吗?

答案1

由于你的打字顺序以 开头,因此<Esc>我假设你插入模式,对吧?如果是这样,你可以输入<C-w>删除光标左侧的单词,而无需离开插入模式。

击球<bs>作品插入对于单个字符,模式也是如此,如果您只需要删除刚刚输入的几个字符,则没有必要退出该模式。

x是删除字母的命令普通的模式,但它只能单独使用 ( x) 或与计数 ( 5x) 一起使用, 也一样X。 在许多情况下,您需要对整个单词或两个单词、一对括号之间的内容、直到特定模式向前、直到和包括特定字母向后执行操作……在这种情况下,您应该d与动作结合使用。

答案2

在命令模式下,Backspace 用于将光标向左移动。如果要按预期使用它,请在命令模式下使用以下命令:

:nnoremap <bs> X  

.vimrc如果您想要永久更改,请将其添加到您的文件中。

答案3

相反ESC hhhhh xxxxx,尝试d5h

答案4

您可以使用 Sachin Shekhar 建议的映射或“以 Vi 方式”进行操作,但我认为还有更好的方法:

backspace设置控制 Backspace 键的工作方式。将其放入 .vimrc 中可使 Backspace 键按大多数人期望的方式工作:

set backspace=indent,eol,start

了解:h 'backspace更多信息。

相关内容