Text Diff
Bandingkan dua blok teks dan lihat penambahan, penghapusan, dan konteks tak berubah baris demi baris. Tampilan side-by-side atau unified.
Dibuat oleh JXXR1 · ♥ Jadi sponsor · ☕ Belikan saya kopi
Untuk apa ini?
Membandingkan dua versi sebuah teks — paragraf, file config, query SQL, list — dan melihat persis baris mana yang ditambahkan, dihapus, atau dibiarkan. Bahkan ketika kamu tidak punya git diff di tangan atau teksnya tidak ada di version control. Output-nya adalah diff level baris yang sama dengan yang kamu lihat di code review: hijau untuk penambahan, merah untuk penghapusan, polos untuk konteks yang tidak berubah.
Kapan digunakan
- Menemukan perbedaan antara dua email, kontrak, atau blob yang ditempel yang "kelihatan sama".
- Membandingkan file config atau environment variable di dua lingkungan (staging vs prod).
- Me-review perubahan pada sebuah copy yang diedit di Word/Docs oleh orang lain.
- Mem-diff dua hasil query, snippet log, atau blob JSON (pakai JSON Formatter dulu untuk kanonikalisasi).
- Sanity check cepat untuk search-and-replace sebelum commit.
Side-by-side vs unified
- Side-by-side — lebih mudah memindai perubahan kecil baris per baris; original di kiri, versi baru di kanan.
- Unified — lebih mirip output
git diff; lebih cocok untuk dibagikan atau dicetak, dan lebih mudah diikuti saat perubahan jarang.
Kesalahan umum
- Ini adalah diff per baris, bukan diff per kata. Satu karakter berubah di tengah baris panjang akan menandai seluruh baris sebagai berubah. Untuk diff prosa level paragraf, kamu mungkin butuh tool yang melakukan tokenisasi ke kata.
- "Ignore whitespace" hanya memengaruhi perbandingan, bukan tampilan. Baris yang hanya berbeda di trailing spaces atau indentasi akan masuk ke kolom unchanged, tapi whitespace asli tetap ditampilkan.
- "Ignore case" juga begitu. "TODO" dan "todo" dianggap sama, tapi case asli tetap dirender.
- Urutan penting. Jika kamu menukar dua baris, diff akan menunjukkan keduanya sebagai removed-and-re-added, bukan sebagai pasangan "moved". Tidak ada deteksi pemindahan.
- Input besar (10k+ baris) bisa lambat. Algoritma LCS itu O(m·n) — oke untuk file biasa, lambat untuk yang sangat besar. Diff potongan kecil satu per satu.
- Trailing newline dihitung sebagai baris. Dua input yang hanya berbeda di apakah berakhir dengan newline akan menampilkan satu penambahan atau penghapusan di akhir.