删除键在vim插入模式下不起作用,无法删除以前键入的内容


12

我在iterm2中打开了vim。首先,我在插入模式下输入了一些内容,例如

Hello

在此阶段,如果我没有退出插入模式,那么delete按键可以工作,并且可以根据需要删除整个单词。

如果退出插入模式,然后再次打开插入模式,Hello则无法通过delete按键将其删除。但是,可以删除新输入的内容。

我已经重命名了.vimrc,问题仍然存在。

在shell命令行中,我的delete密钥运行良好。

我通过进行了对远程服务器的测试iterm,没有遇到相同的问题。

造成此问题的原因是什么?如何解决?


PS:当我使用Macbook时,该delete键对应 backspace于PC。

Answers:



3

这与shell或的版本无关vim。这是一个简单的配置事情,因为在插入模式下退格的操作是普通的可vim配置行为。具体来说,它是vimbackspace设置。在一台机器上(很可能)将其设置为空字符串,而在另一台机器上,将其设置为包含value start。这可能在全局配置文件中。

请注意,如果vimvi-compatible模式启动,则默认值是backspace变量为空字符串。您抱怨的行为实际上是原始行为vi。Linux操作系统倾向于使用各种vim选项来填充全局配置文件,这些选项会开启与原始配置不同的“更友好”的行为vi。BSD倾向于不这样做。

进一步阅读

  • Arnold Robbins,Elbert Hannah和Linda Lamb(2008)。“简单编辑”。 学习vi和Vim编辑器。O'Reilly Media,Inc.,ISBN 9781449313258。14。
  • :help backspace。vim文档。
  • 错误#19903。1998。Debian防弹少年团。


1

检查iTerm键映射(Preferences -> Profiles -> Keys)。我使用的是默认的“自然文本编辑”预设,通过此答案,删除与删除相关的键映射为我解决了这个问题。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.