在 vim 中,我经常在从系统剪贴板中粘贴困惑的内容后,最终撤消的内容超出了我想要的范围。有更好的办法吗?
重现:
Open iTerm # or terminal
vi # open vim
i # enter insert mode
type some stuff
Cmd-V # paste the contents of the OS X clipboard
粘贴一团糟,因为我没有:set Past
。所以
Esc # enter command mode
u # undo
但这会撤销我的打字和粘贴。
我可以使用不同的撤消功能吗?除了记住在粘贴之前 :set Paste
之外,还有更好的方法来做到这一点吗?
最佳答案
这不是您正在寻找的答案,但您确实应该停止使用 vim 作为非模式编辑器。如果你想粘贴,请返回正常模式并使用 vim 的粘贴命令。
假设您有一个具有剪贴板访问权限的 vim 版本,这应该可以解决问题 "+p
。您还可以通过将未命名寄存器设置为 +
(或 *
) 注册,这样从剪贴板粘贴就变成了一个简单的 p
。
以下问题有一个很好的答案,其中包含所有这些信息 How to make vim paste from (and copy to) system's clipboard? .
关于vim - 撤消粘贴而不撤消之前的输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33643493/