IZN Tools

Сравнение двух текстов

Построчно, с подсветкой изменённых слов — как в код-ревью.

До 5000 строк с каждой стороны. Ничего не покидает вкладку — можно вставлять договор или конфиг.
Посчитано на вашем устройстве

Как читать результат

| Цвет | Значение | | --- | --- | | Красный, − | только слева — удалено | | Зелёный, + | только справа — добавлено | | Оба подряд | изменённая строка с подсветкой изменённых слов |

Номера строк с каждой стороны относятся к тексту этой стороны — номер здесь совпадает с номером в вашем редакторе.

Две опции и когда они нужны

  • Без учёта пробелов — для переформатированного кода или документа с переразбитыми строками. Отступы, табы против пробелов, пробелы в конце строк перестают считаться.
  • Без учёта регистра — для текста, где нормализовали заглавные, и нужно увидеть правки под этим.

Обе опции меняют только сравнение. Показывается всегда ваш исходный текст.

Unified-дифф

Результат копируется и скачивается как unified diff — формат ---/+++/-/+, который уже понимают все системы ревью, почтовые клиенты и patch. Вставьте его в задачу, и читатель увидит ровно то, что видели вы.

Ничего не загружается

Оба текста остаются во вкладке. В этом и смысл делать это здесь, а не в сервисе: можно вставить договор, выгрузку клиентов или невыпущенный код, и копии ни у кого не появится.

Вопросы

Что именно сравнивается?+

Строки — так же, как это делает `diff`. Каждая строка слева сопоставляется с правой по наибольшей общей подпоследовательности, поэтому вставленный абзац показывается как вставка, а не сдвигает всё ниже в «изменения». Внутри изменённой строки слова сравниваются ещё раз, чтобы было видно, какие именно поменялись.

Почему перенесённый блок показан как удалённый и добавленный?+

Потому что построчный diff не знает о переносах. Абзац, вырезанный сверху и вставленный снизу, для алгоритма — удаление в одном месте и вставка в другом, так это и показывается. Инструменты, которые «находят перемещения», гадают, и ошибаются достаточно часто, чтобы здесь этого не делать.

Что делает «без учёта пробелов»?+

То же, что `diff -w`: пробелы не считаются вовсе, так что `x = 1` и `x=1` — одна строка, а файл с изменённым отступом не покажет отличий. Показывается по-прежнему исходный текст, игнорирует пробелы только сравнение.

Можно сравнить два файла?+

Вставьте их. Поля принимают до пяти тысяч строк с каждой стороны — это конфиг, договор, выгрузка CSV или файл исходников. Больше браузер тоже переварит, но результат перестаёт быть тем, что человек читает.