Diff Tool для Linux, в который можно вставить два текста без файлов?
Мне часто приходится сравнивать два текстовых блока без создания файла для каждого из них, а затем запускать сравнение между ними.
Есть ли инструмент, который я могу использовать и просто копировать и вставлять оба в пустые буферы, а затем получать разницу между ними двумя?
Meld ( статья в Википедии ) это позволяет.
Когда вы открываете новую вкладку различий ( Ctrl+ n), всплывающее окно предлагает вам выбрать два (или три) файла. Вы можете просто нажать OKздесь, ничего не выбирая.
Он открывает пустые буферы, как в текстовом редакторе, что позволяет вставлять (или печатать) текст. Различие происходит на лету (пока вы вставляете/набираете/редактируете текст).
Когда вы закрываете вкладку diff, инструмент спрашивает, хотите ли вы сохранить файлы.
Скриншот с http://meldmerge.org/features.html :
File Comparison
, а затем щелкнуть Blank comparison
, и это помогло.Другой вариант — диффузный: http://diffuse.sourceforge.net/index.html .
По умолчанию он открывается с двумя пустыми панелями, и вы можете вставлять все, что хотите, в каждую сторону.
Не обязательно самый красивый, но вы могли бы сделать это с заменой процесса и heredocs:
diff <(cat <<EOF1
First text
and more
EOF1) <(cat <<EOF2
Second text
and more
EOF2)
будет производить вывод:
1c1
< First text
---
> Second text
и вы, конечно, можете поместить все, что хотите, в каждый блок текста.
Другой вариант - использовать vim
, как в ответах здесь
Процесс, который я хотел бы сделать с этим, должен был бы сделать следующее внутри vim
:
:diffthis
, чтобы включить это окно вdiff
:vnew
, чтобы разделить другое окно по вертикали, чтобы они были бок о бок:diffthis
presto, у вас есть выделенный diff
мехов