yigityalim
projelerel kitabılabişe alpaylaş
xgithub
siteprojelerel kitabılaboratuvardeğişiklik günlüğü
hakkındakullanımlarşimdiişe alpaylaş
diğerxgithublinkedine-posta
metarssllms.txtsitemap
© 2026 Yiğit Yalım. Tüm hakları saklıdır.
/
Laboratuvarlara Dön
10 May 2026·veri

Diff Viewer

İki metni yan yana ya da unified diff olarak göster. LCS-tabanlı line diff, boşluk yoksay seçeneği. Code review, manifest karşılaştırma, content drift.

diff · version-control · comparison

ÖncekiCubic-Bezier TesterSonrakiJSON Formatter

İki dosyayı karşılaştırmak için terminale gitmeden, GitHub'a push'lamadan, IDE açmadan — basit. Yapıştır, gör.

DiffViewer+4−3
@@ -1,6 +1,7 @@
1−function greet(name) {
2− console.log("hi, " + name);
3− return null;
1+function greet(name: string): string {
2+ const msg = `hi, ${name}`;
3+ console.log(msg);
4+ return msg;
45 }
56
67 greet("world");

Algoritma

LCS (Longest Common Subsequence) tabanlı line-level diff. m×n DP tablosu kuruluyor, sonra geri tarama ile add/remove/context op listesi üretiliyor. Tam Myers değil ama browser'da sub-MB inputlar için yeterince hızlı (O(mn) bellek + zaman).

Görünümler

  • Unified — git/diff formatı, + add - remove, satır numaralarıyla. Compact, scroll friendly.
  • Split — yan yana before/after kolonları. İki taraf hizalanmış, missing satırlar boş bırakılmış.

Boşluk yoksay

ignoreWhitespace aktifse normalize fonksiyonu s.replace(/\s+/g, " ").trim() uygular, ama display orijinal metni gösterir. Indentation refactor'larında signal/noise oranını yükseltir.