Skip to content

Différence de texte (Text Diff)

Deux zones de texte en entrée, diff unifié en sortie. Navigateur uniquement, sans téléversement.

Buğra SözeriDéveloppeur
Updated · Published
Reviewed by Convertitive

Comparez deux versions de texte et voyez exactement ce qui a changé. Les ajouts sont surlignés en vert, les suppressions en rouge, les lignes inchangées s'affichent en texte atténué. Le diff est au niveau des lignes (pas des caractères) — même convention que git diff et diff -u. Algorithme de plus longue sous-séquence commune (LCS) en JavaScript pur s'exécutant entièrement dans votre navigateur.

+1 1 ·2line-level diff · longest-common-subsequence
The quick brown fox
jumps over the lazy dog.
+leaps over the sleeping dog.
Woof.

Line-level diff. To diff at the word or character level, split the input differently before calling the underlying lib. The algorithm is O(m·n) — fine for thousands of lines, slow above ~50,000.

How to use

  1. Collez l'ancien texte

    La version antérieure de ce que vous comparez — un brouillon, une réponse par e-mail, un fichier de configuration.

  2. Collez le nouveau texte

    La version plus récente. Au fur et à mesure que vous tapez, le diff se recalcule.

  3. Lisez le résultat

    Les lignes vertes ont été ajoutées dans la nouvelle version. Les lignes rouges étaient dans l'ancienne version mais ont été supprimées. Les lignes inchangées s'affichent en texte atténué.

Frequently asked questions

Est-ce le même algorithme que git diff ?
Même famille — l'algorithme de Myers basé sur la plus longue sous-séquence commune (LCS). git utilise une variante plus optimisée pour les grands fichiers avec des heuristiques au niveau des lignes ; pour une comparaison de texte typique, la sortie est identique.
Puis-je faire un diff au niveau des mots ou des caractères ?
Pas encore dans l'interface. La bibliothèque sous-jacente accepte n'importe quelle fonction de division de chaîne, donc les diffs au niveau des mots et des caractères sont une modification d'une ligne. Cela viendra dans une future amélioration.
Quelle est la taille maximale des entrées ?
L'algorithme est en O(m·n) en temps et en mémoire. Jusqu'à ~5000 lignes de chaque côté est confortable ; au-delà de ~50 000 lignes, la page ralentira sensiblement.
L'outil stocke-t-il mon texte ?
Non. Chaque diff s'exécute dans votre navigateur ; rien n'est envoyé à un serveur ni enregistré.

Outils associés