vim - 如何从 `Insert mode` 撤消在此模式下所做的更改?

标签 vim editor vi

我是 Vim 编辑器的新手,所以我想比实际做的更简单地完成这个简单的任务。

场景

当我犯错或我只是在 Insert mode 中测试一些新命令时我希望我能从这里逃到Normal mode不影响文件。

我的解决方案

我离开了 Insert mode回到Normal mode然后按u撤消更改。

问题

有一种方法可以只保留 Insert mode不影响文件?

最佳答案

嗯,不确定 vim 是否默认有这个。但是 vim 是非常强大的编辑器,它支持键盘映射:您可以将一些操作序列“绑定(bind)”到一些击键/击键序列。

这是您完成任务的方法。在正常模式下输入::inoremap <f2> <esc>u 现在您可以按 F2 退出插入模式撤消更改。 如果您喜欢此绑定(bind)并希望它在编辑 session 之间持续存在,只需将相同的文本(不带冒号)放入您的 .vimrc文件:inoremp <f2> <esc>u

但此绑定(bind)有一个问题:如果您在插入模式下不做任何更改,F2 将不会像 plain 一样,它还会撤消之前的更改。

关于vim - 如何从 `Insert mode` 撤消在此模式下所做的更改?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11484979/

相关文章:

vim - 具有RSI类型症状(无法使用的手指)的代码创建/编辑器的软件要求

vim - 如何在 Vim 中交叉重做,即在撤消后进行一些编辑后重做更改?

vim - 如何在 OSX 中将 vim 更新到 8.0 版本?

php - Vim - mysqli 与 phpcomplete 函数

javascript - 如何在 Vim 中使用 JSLint

java - 制作带有部分的编辑器页面不起作用(eclipse,java)

vim:基于一个 :global 命令运行多个命令

Vim 对象选择与语法感知文本对象

c++ - Visual Studio 中特定于 Qt 的构造的损坏缩进

linux - vim 中的可视化 block 编辑