Как можно различить строки 2-4 в файле A и строки 8-10 в файле B?
Кроме того, возможно ли визуально выбирать строки в каждом файле вместо записи номеров строк?
Спасибо!
Требуемое решение в настоящее время не существует в Vim, хотя некоторые разработчики обсуждают его. Есть два решения, которые я использовал.
Одним из них является удаление строки 1 в файле A и строк 1-7 в файле B и различие оставшихся строк (например, с помощью :windo diffthis
).
Другой - использовать плагин, такой как NrrwRgn, чтобы скопировать интересующие строки в новые буферы, а затем изменить их. Приятной особенностью плагина NrrwRgn является то, что вы можете вносить изменения в эти новые буферы, и когда вы выходите из них, изменения копируются обратно в исходные буферы.
Для любой операции Vim, для которой вы можете указать диапазон строк, этот диапазон можно указать несколькими способами. Одним из них является использование номеров строк. Другой способ заключается в визуальном выборе региона. Увидеть
:help [range]
:help V
Используя плагин NrrwRgn для решения вашего примера, вы поместите курсор на строку 2 файла A и введите
Vjj\nr
визуально выбрать строки 2-4 (Vjj
) и скопировать их в новый буфер (\nr
). Затем поместите курсор в строку 8 файла B и повторите ту же последовательность. В каждом из двух новых буферов выполните
:diffthis
Не элегантно, но это работает.