如果在命令提示符下,我运行
vimdiff file1 file2
我得到一个并排打开两个文件的 vim 实例。假设文件中的文本如下所示(file1 在左侧,file2 在右侧):
╔═══════╤═══════╗
║foo │-------║
║bar │bar ║
║grue │-------║
║~ │~ ║
║~ │~ ║
╚═══════╧═══════╝
现在假设我的光标位于“foo”的“f”上,并且我希望将 file1 的第一行复制到 file2 的第一行。
一种方法是使用v$ y选择并拉出(复制)该行,然后使用Ctrl+wl将光标移动到 file2 的第一行,然后键入p粘贴复制的行。如果我这样做,然后我决定我真的不想这样做,我可以按u撤消我在 file2 中执行的粘贴命令。
另一种方法是使用 diff put 命令 dp。但是,如果在这样做之后我决定我不是故意的,我不能简单地通过按u来撤消它,因为我的光标仍在 file1 中,并且u命令将撤消对 file1 的最新更改,而不是最最近对 file2 的更改。因此,我必须使用Ctrl+wl或Ctrl+ww将光标移动到 file2 的窗口,然后按u。
所以,我的问题是:在我如上所述使用dp之后,是否有任何简单的方法可以让我撤消它而无需将光标移到另一个文件的窗口?