Сравнить два текста

Онлайн-diff текста, работающий полностью в браузере. Вставьте два текста (код, проза, JSON, что угодно) в левую и правую панели — тул подсветит изменения: красным зачёркнутым в оригинале, зелёным в изменённой. Выберите построчную, пословную или посимвольную гранулярность; переключайтесь между «рядом», unified (стиль GitHub) или встроенным видом. Diff вычисляется алгоритмом Myers — даже многомегабайтные входы работают мгновенно. Никаких загрузок — всё остаётся у вас.

Как пользоваться

1
Вставьте два текста

Оригинал слева, изменённый справа.

2
Выберите вид + гранулярность

«Рядом» для ревью, unified для шеринга, встроенно для прозы.

3
Прочитайте diff

Красный — оригинал (удалено), зелёный + новое (добавлено), серый = без изменений.

4
Настройте опции

Игнор пробелов, если форматирование шумное; игнор регистра, если он не важен.

Diff двух фрагментов текста или кода с гранулярностью строк, слов или символов — в браузере

Вид
Гранулярность
Опции
Сравнение
Оригинал
Изменённый
Вставьте два текста выше, чтобы увидеть различия.
Не знаешь, что попробовать?
750+ инструментов — открой сюрприз
🎲 Сюрприз

Что можно делать

Три вида
Рядом (две колонки), unified (GitHub-style с — и +), встроенно (один блок, удаления зачёркнуты рядом со вставками).
Три гранулярности
Строки, слова или символы. Пословный отлично для прозы; посимвольный — для мелких правок кода.
Пропуск пробелов и регистра
Пропустить шум. Особенно полезно при сравнении переформатированного кода или JSON.
Статистика вставок / удалений
Видны +N / −N на глаз, плюс сколько строк затронуто.
Поменять местами
Перевернуть оригинал и изменённый одной кнопкой, если вставили в неправильном порядке.
Остаётся локально
Diff работает в браузере через LCS-алгоритм Myers. Никаких загрузок, никакой серверной обработки.

Типичные применения

  • Увидеть, что изменилось между двумя версиями конфига перед деплоем.
  • Рецензировать переписанный абзац с пословной гранулярностью.
  • Сравнить два JSON-ответа и найти неожиданное различие в поле.
  • Проверить copy-paste правку перед коммитом.
  • Получить чистый unified diff для отправки в чат или код-ревью.

Почему именно этот

Большинство онлайн-diff останавливаются на построчном уровне — когда одно слово меняется внутри длинной строки, всё равно приходится глазами искать его по всей строке. Мы запускаем diff повторно внутри каждой изменённой строки, так что правки на уровне слов и символов подсвечены точно. Особенно полезно для прозы, юридических текстов и JSON, где важно одно значение, зарытое в длинном объекте.

Частые вопросы

Почему сравнение двух больших файлов тормозит?

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

Какой алгоритм diff?

То же семейство Myers longest-common-subsequence, что использует git, GNU diff и большинство инструментов код-ревью — так что вывод совпадает с тем, что ревьюеры видят в PR. Для гранулярности слов и символов внутри изменённых строк тот же алгоритм прогоняется заново на токенах этой строки.

Почему мой код diff выглядит странно с выключенным «Игнорировать пробелы»?

Табы vs пробелы, хвостовые пробелы и CRLF считаются реальными различиями, когда «Игнорировать пробелы» выключен. Включите опцию, если важно только содержимое.

Можно скопировать diff?

Unified-вид — простой текст, выделяйте и копируйте. Бок-о-бок вид — HTML; чистый экспорт через переключение на unified.

💡 Хотите, чтобы мы улучшили этот инструмент лично для вас?

Мы можем! Просто отправьте нам сообщение с вашим пожеланием. Если хотите обсудить детали — оставьте свою почту, и мы с вами свяжемся. Можно анонимно.

Как вы оцениваете этот инструмент?

Спасибо за вашу оценку!
Хотите рассказать подробнее? Оставьте комментарий!
Спасибо! Ваш комментарий появится после модерации.
Опубликовано Обновлено Автор: