TK TaskKit
Outils dev

Comparateur

Compare deux textes côte à côte ou en vue unifiée. Modes optionnels ignorer les espaces et ignorer la casse.

Original
Modifié
Diff
Colle deux textes pour voir ce qui a changé ligne à ligne.

Les entrées restent sur cet appareil. Chaque outil dev de TaskKit tourne entièrement dans ton navigateur. Tokens, payloads et texte collé ne sont pas transmis aux serveurs de TaskKit ni à des tiers.

Ce que fait cet outil

Compare deux morceaux de texte et affiche les différences soit côte à côte soit en diff unifié. Des toggles optionnels ignorent les espaces de début/fin et la casse. Le diff est calculé sur les lignes (pas les caractères), ce qui est ce que tu veux pour du code, des configs et de la prose.

Quand l'utiliser

  • Repérer ce qui a changé entre deux réponses d'API.
  • Réviser des éditions à un fichier de config quand tu n'as pas la version dans git.
  • Comparer deux messages d'erreur pour trouver le mot qui diffère.
  • Vérifier qu'un round-trip de copier-coller n'a pas inséré de caractères invisibles.

Comment ça marche

L'algorithme est un calcul de plus longue sous-séquence commune (LCS), qui est la même approche que git diff. La complexité est environ O(n × m) en nombres de lignes, donc on cape les entrées à 2 500 lignes par côté pour garder la performance prévisible. Les lignes qui matchent sont appariées ; les lignes qui n'existent que d'un côté sont signalées comme ajouts ou suppressions.

Notes

Pourquoi ligne par ligne et pas caractère par caractère ? Parce que la plupart des diffs réels sont à propos de lignes. Les diffs au niveau caractère sont bruyants sur quoi que ce soit de plus long qu'une phrase. Si tu as besoin d'un vrai diff caractère, utilise git diff --word-diff en local.

Ignorer les espaces ignore-t-il les tabs vs espaces ? Oui — ce toggle traite n'importe quelle suite d'espaces blancs comme équivalente à n'importe quelle autre, ce qui est utile quand un fichier a été reformaté mais que le contenu est par ailleurs le même.

Qu'est-ce qui se passe au-delà de 2 500 lignes ? L'outil refuse de rendre et te demande de couper. LCS est quadratique ; à 100k lignes tu figerais l'onglet pendant des minutes.

Outils liés