Porównywarka tekstów
Porównaj dwa teksty wiersz po wierszu i zobacz dokładnie, co dodano, co usunięto, a co zostało bez zmian.
Działa w całości w twojej przeglądarce. Nic nie jest wysyłane, logowane ani przechowywane.
Wklej dwie wersje tekstu i zobacz, co się między nimi zmieniło, wiersz po wierszu. Porównanie odbywa się w twojej przeglądarce: żaden z tekstów nie jest nigdzie wysyłany.
Jak to działa
Oba teksty są dzielone na wiersze i dopasowywane za pomocą najdłuższego wspólnego podciągu — to ta sama idea, która stoi za diffem w systemie kontroli wersji. Wiersze, które występują w obu tekstach w tej samej kolejności, są pokazywane jako niezmienione; cała reszta to dodanie albo usunięcie.
Najpierw normalizowane są znaki końca wiersza, więc ten sam plik zapisany w Windows i w Linuksie zostaje uznany za identyczny, a nie za taki, w którym zmienił się każdy wiersz. Zastąpiony wiersz pojawia się jako usunięcie, po którym następuje dodanie, bo właśnie tym jest.
Identyczne bloki na początku i na końcu są odrzucane przed właściwym porównaniem, dlatego zmiana jednego wiersza w długim pliku jest natychmiastowa. Kosztowny przypadek to dwa teksty, które nie mają prawie nic wspólnego, i powyżej pewnego rozmiaru narzędzie to mówi, zamiast zamrozić ci kartę.
Przykłady
| Przypadek | Dane wejściowe | Wynik |
|---|---|---|
| Jedna zmieniona linia z trzech | alpha / beta / gamma against alpha / BETA / gamma | 1 added, 1 removed |
Najczęściej zadawane pytania
Czy mój tekst opuszcza przeglądarkę?
Nie. Porównanie działa lokalnie w JavaScripcie i nic nie jest przesyłane, rejestrowane ani przechowywane. To narzędzie nie ma też linku do udostępnienia, bo link musiałby zawierać oba teksty w adresie URL, skąd trafiłyby do historii przeglądarki i do logów serwera.
Dlaczego porównuje wiersze, a nie słowa?
Bo właśnie to sprawia, że diff jest czytelny dla rzeczy, które ludzie porównują: konfiguracji, kodu, umów. Diff po słowach akapitu, w którym zmieniono zawijanie wierszy, oznacza prawie każde słowo jako zmienione i nic ci nie mówi.
Co dokładnie pomija opcja ignorowania spacji?
Ciągi spacji i tabulatorów są sprowadzane do jednej spacji, a początek i koniec każdego wiersza są przycinane, więc ponowne wcięcie bloku nie jest oznaczane jako przepisanie. Nie usuwa spacji całkowicie: „a b” i „ab” to nadal różne wiersze.
Czy jest limit rozmiaru?
Pięć tysięcy wierszy na stronę, a część, która faktycznie się różni, może obejmować najwyżej 1200 wierszy po każdej stronie. To drugi limit daje się odczuć przy dwóch niezwiązanych tekstach; narzędzie odmawia, zamiast wyczerpać pamięć.
Warto wiedzieć
- Porównanie działa w twojej przeglądarce. Nic z tego, co wkleisz, nie jest wysyłane, rejestrowane ani przechowywane, a serwer nigdy nie jest proszony o porównanie czegokolwiek.
- Oznacza to również, że narzędzie wymaga JavaScriptu. Bez niego nie ma porównania w ogóle, a nie porównanie wykonywane gdzie indziej.
Wszystkie narzędzia z kategorii Kod