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

Zen*_*Zen 19 vim

我在 iterm2 中打开了 vim。首先,我在插入模式下输入了一些东西,比如

Hello
Run Code Online (Sandbox Code Playgroud)

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

如果我退出插入模式,并再次打开插入模式,这Hello不能通过delete键删除。但是可以删除新输入的内容。

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

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

我通过远程服务器做了一些测试iterm,没有遇到同样的问题。

这个问题的原因可能是什么?如何解决?


PS:因为我用的是macbook,所以deletekey是对应 backspacePC的。

小智 35

把它放到你的 .vimrc 中:

set backspace=indent,eol,start
Run Code Online (Sandbox Code Playgroud)

  • @Gawain,你能解释一下解决方案吗?谢谢。 (4认同)

Rod*_*cía 11

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


Ste*_*HNH 1

我相信这可能是由于 OSX 默认安装的 vim 版本所致。您始终可以通过自制程序安装 vim 并查看替换是否有帮助。我发现这个页面有助于提升 OSX 终端体验。 https://www.topbug.ne​​t/blog/2013/04/14/install-and-use-gnu-command-line-tools-in-mac-os-x/

记下这一行“brew install vim --override-system-vi”