tooly

Porównaj teksty (diff)

Wklej dwie wersje tekstu i zobacz dokładnie, co się zmieniło: dodane fragmenty na zielono, usunięte na czerwono, z licznikiem zmian. Wszystko działa w przeglądarce.

Wszystko działa w przeglądarce — nic nie jest wysyłane

Jak używać

  1. 1

    Wklej oryginalny tekst po lewej, a zmieniony po prawej.

  2. 2

    Przełączaj między porównaniem wierszami i słowami.

  3. 3

    Przeczytaj podświetlone różnice.

Kiedy szybkie porównanie tekstów się opłaca

Większość poprawek staje się niewidoczna zaraz po ich wprowadzeniu. Czytanie dwóch wersji obok siebie jest powolne i zawodne: ludzie regularnie przeoczają zmienioną cyfrę w cenie, usunięte „nie” albo zamienioną datę.

Diff wykonuje to szukanie za Ciebie. Typowe sytuacje, w których naprawdę oszczędza czas:

  • Sprawdzenie, co druga strona zmieniła w umowie, ofercie lub regulaminie, zanim cokolwiek podpiszesz.
  • Porównanie dwóch eksportów tej samej listy (adresów e-mail, kodów SKU, identyfikatorów), żeby zobaczyć, które pozycje się pojawiły, a które zniknęły.
  • Ustalenie, dlaczego dwa pliki konfiguracyjne lub pliki .env działają inaczej.
  • Przejrzenie zredagowanego artykułu lub tłumaczenia względem pierwotnej wersji.

Jak działa porównanie

Narzędzie opiera się na metodzie najdłuższego wspólnego podciągu — tej samej rodzinie algorytmów, na której działają git diff i klasyczny uniksowy diff. Szuka możliwie największej ilości tekstu wspólnego dla obu wersji, pozostawia ją jako niezmienioną, a całą resztę oznacza jako usuniętą z oryginału albo dodaną w nowej wersji.

Wynik jest przeliczany na bieżąco podczas pisania lub wklejania, więc możesz poprawić coś w dowolnym polu i od razu zobaczyć efekt. Usunięte fragmenty są wyświetlane na czerwono z przekreśleniem, dodane na zielono, a reszta jako zwykły tekst czcionką o stałej szerokości, dzięki czemu wyrównanie w kodzie i tabelach pozostaje czytelne.

Licznik nad wynikiem znaczy w każdym trybie coś nieco innego:

  • W trybie Wierszami liczy wiersze: +4 / −2 oznacza, że dodano cztery wiersze, a usunięto dwa. Edytowany wiersz liczy się raz jako usunięty (stara wersja) i raz jako dodany (nowa).
  • W trybie Słowami liczy zmienione fragmenty, a nie pojedyncze słowa. Przeredagowana fraza z sześciu słów w jednym miejscu liczy się jako jedno usunięcie i jedno dodanie.

Tryb wierszy a tryb słów w praktyce

Tryb wierszy traktuje każdy wiersz jako niepodzielną całość. To właściwy model dla wszystkiego, w czym wiersze mają samodzielne znaczenie: kodu źródłowego, wierszy CSV, plików logów, list nazwisk, ustawień YAML lub .ini. Jest też rygorystyczny: spacja na końcu albo tabulator zamiast spacji sprawia, że wiersz jest inny.

Tryb słów dzieli tekst na słowa i znaki interpunkcyjne i porównuje właśnie je. Sprawdza się znacznie lepiej przy prozie, gdzie cały akapit to często jeden długi wiersz, a diff wierszowy powiedziałby tylko „ten akapit się zmienił”. W trybie słów widać dokładnie, które słowa zostały zastąpione. Jest też bardziej wyrozumiały: różnice polegające wyłącznie na białych znakach, na przykład podwójna spacja między zdaniami, są w dużej mierze ignorowane.

Dobry nawyk to zacząć od trybu wierszy, żeby zobaczyć, gdzie są zmiany, a potem przełączyć się na tryb słów, żeby przeczytać, co dokładnie zmieniło się w długim wierszu.

Jak uzyskać czysty, czytelny wynik

Większość mylących różnic bierze się z szumu formatowania, a nie z prawdziwych poprawek. Kilka rzeczy do sprawdzenia przed porównaniem:

  1. Końce wierszy i zawijanie. Tekst skopiowany z PDF lub e-maila często ma twarde podziały wierszy w środku zdań. Jeśli jedna wersja jest zawinięta, a druga nie, tryb wierszy oznaczy wszystko jako zmienione. Użyj trybu słów albo najpierw usuń podziały.
  2. Wielkość liter. Porównanie rozróżnia wielkość liter, więc „Faktura” i „faktura” to co innego. Jeśli wielkość liter nie ma dla Ciebie znaczenia, ujednolić oba teksty konwerterem wielkości liter przed wklejeniem.
  3. Listy posortowane i nieposortowane. Diff uwzględnia kolejność. Jeśli dwie listy zawierają te same pozycje w innej kolejności, przesunięcia pokaże jako usunięcia i dodania. Jeśli interesuje Cię tylko to, co jest na liście, najpierw posortuj obie w ten sam sposób.
  4. JSON i zminifikowane dane. Zminifikowany dokument JSON to jeden ogromny wiersz. Sformatuj obie wersje formaterem JSON z tym samym wcięciem, a potem porównaj wierszami; każdy klucz trafi do osobnego wiersza i zmiany staną się oczywiste.
  5. Cudzysłowy drukarskie i półpauzy. Edytory tekstu zamieniają " na cudzysłowy typograficzne, a - na półpauzy. Na pierwszy rzut oka wyglądają tak samo, ale to inne znaki i pojawiają się jako zmiany.

Rozmiar i prywatność

Oba teksty zostają na stronie. Nic nie jest wysyłane na serwer, więc porównanie nieopublikowanej umowy, wewnętrznego kodu źródłowego czy pliku z danymi klientów niczym się nie różni od porównania dwóch list zakupów. Zamknięcie karty usuwa wszystko.

Szybkość zależy od Twojego urządzenia i od tego, jak bardzo teksty się różnią. Kilka tysięcy wierszy porównuje się natychmiast; dziesiątki tysięcy mocno zmienionych wierszy mogą zająć kilka sekund. Jeśli działa ociężale, porównuj tylko istotny fragment albo użyj trybu wierszy, który ma znacznie mniej jednostek do dopasowania niż tryb słów.

FAQ

Czy mój tekst jest wysyłany?

Nie. Porównanie działa w przeglądarce.

Wiersze czy słowa — co wybrać?

Wiersze dla kodu, logów i list; słowa dla prozy, gdzie zdanie zmieniło się nieznacznie.

Czy białe znaki mają znaczenie?

Tak, domyślnie liczy się każdy znak, więc spacje na końcu wiersza pokazują się jako zmiany.

Czy mogę porównać pliki?

Wklej ich zawartość. Bardzo duże pliki (dziesiątki tysięcy wierszy) mogą chwilę potrwać.

Podobne narzędzia