Скажите, что я создал патч с git format-patch
. Файл является в основном объединенной разностью с некоторыми метаданными. Если я открываю файл в Vim, я вижу, какие строки были изменены, но я не вижу, какие символы в измененных строках отличаются. Кто-либо знает путь (в Vim или некотором другом бесплатном программном обеспечении, которое работает на Ubuntu) визуализировать различия на символ?
Встречный пример, где разность на символ визуализируется, при выполнении vimdiff a b
.
обновите пятница 12 ноября 22:36:23 UTC 2010
diffpatch полезен для сценария, где Вы работаете с единственным файлом.
обновите четверг 16 июня 17:56:10 UTC 2016
Различное выделение выезда в мерзавце 2.9. Этот сценарий делает точно, что я первоначально искал.
Учитывая ваши ссылки на Vim в вопросе, я не уверен, что это тот ответ, который вам нужен :), но Emacs может это сделать. Откройте файл, содержащий diff, убедитесь, что вы находитесь в diff-mode
(если файл называется foo.diff
или foo.patch
, это происходит автоматически; в противном случае введите Mx diff-mode
RET ), перейдите к интересующему вас фрагменту и нажмите Cc Cb для Уточнить-фрагмент
]. Или пролистайте файл по одному фрагменту за раз, используя M-n ; это произведет уточнение автоматически.
После небольшого исследования я заметил, что этот вопрос дважды поднимался в последнее время в основном списке рассылки Vim. Плагин NrrwRgn был упомянут оба раза (сделать две узкие области и разделить их). Использование NrrwRgn, описанное Кристианом Брабандтом, больше похоже на обходной путь, чем на решение, но, возможно, этого достаточно.
Я попробовал NrrwRgn, и он, вместе с :diffthis, был действительно полезен для иллюстрации различий между символами внутри частей одного файла. Но для этого потребовалось много нажатий клавиш. Мой Vimscript довольно ржавый, но, вероятно, это можно сделать с помощью сценария. Возможно, NrrwRgn может быть улучшен для обеспечения нужной функциональности.
Thoughts?
Мне неизвестен инструмент для разницы в символах, но есть инструмент для разницы в словах: wdiff.
см. Примеры 4 лучших инструмента для различения файлов в UNIX / Linux - Diff, Colordiff, Wdiff, Vimdiff .