Если в командной строке я запускаю
vimdiff file1 file2
Я получаю экземпляр vim, в котором два файла открыты рядом. Предположим, что текст в файлах выглядит следующим образом (файл1 слева, файл2 справа):
╔═══════╤═══════╗
║foo │-------║
║bar │bar ║
║grue │-------║
║~ │~ ║
║~ │~ ║
╚═══════╧═══════╝
Теперь предположим, что мой курсор находится на "f" из "foo" и я хочу скопировать первую строку файла1 в первую строку файла2.
Один из способов сделать это - выбрать и скопировать (скопировать) строку с помощью v $ y , а затем использовать Ctrl + wl , чтобы переместить курсор на первую строку. файла2, а затем введите p , чтобы вставить скопированную строку. Если я сделаю это, а потом решу, что на самом деле не хочу этого делать, я могу нажать u , чтобы отменить команду вставки, которую я выполнил в file2.
Другой способ сделать это - использовать команду diff put dp. Однако, если после этого я решу, что не собираюсь этого делать, я не могу отменить его, просто нажав u , потому что мой курсор все еще находится в файле1 и команде u отменяет самое последнее изменение в file1, не самое последнее изменение в file2. Поэтому вместо этого я должен использовать Ctrl + wl или Ctrl + ww , чтобы переместить курсор в окно для file2 и , а затем нажать u .
Итак, мой вопрос: после того, как я использовал dp , как указано выше, есть ли какой-нибудь простой способ отменить его, не перемещая курсор в окно другого файла?