Comparateur de textes
Comparez deux textes ligne par ligne et voyez exactement ce qui a été ajouté, retiré ou laissé tel quel.
Fonctionne entièrement dans votre navigateur. Rien n'est envoyé, journalisé ni conservé.
Collez deux versions d'un texte et voyez ce qui a changé entre elles, ligne par ligne. La comparaison a lieu dans votre navigateur : aucun des deux textes n'est envoyé nulle part.
Comment ça marche
Les deux textes sont découpés en lignes et appariés par une plus longue sous-séquence commune — l'idée même derrière le diff d'un gestionnaire de versions. Les lignes présentes dans les deux, dans le même ordre, sont affichées comme inchangées ; tout le reste est un ajout ou un retrait.
Les fins de ligne sont normalisées d'abord : le même fichier enregistré sous Windows et sous Linux se compare comme identique et non comme entièrement réécrit. Une ligne remplacée apparaît comme un retrait suivi d'un ajout, parce que c'est ce qu'elle est.
Les blocs identiques en tête et en fin sont appariés avant la comparaison proprement dite, ce qui rend instantané un changement d'une ligne dans un long fichier. Deux textes qui n'ont presque rien en commun sont le cas coûteux, et au-delà d'une certaine taille l'outil le dit plutôt que de figer votre onglet.
Exemples
| Cas | Saisie | Résultat |
|---|---|---|
| Une ligne changée sur trois | alpha / beta / gamma against alpha / BETA / gamma | 1 added, 1 removed |
Questions fréquentes
Mon texte quitte-t-il le navigateur ?
Non. La comparaison s'exécute localement en JavaScript, et rien n'est téléversé, journalisé ni stocké. Il n'y a pas non plus de lien de partage pour cet outil, car un lien devrait transporter les deux textes dans l'URL — où ils finiraient dans l'historique du navigateur et dans les journaux des serveurs traversés.
Pourquoi comparer des lignes plutôt que des mots ?
Parce que c'est ce qui rend un diff lisible pour ce que l'on compare réellement : de la configuration, du code, des contrats. Un diff au mot sur un paragraphe reformaté marque presque chaque mot comme modifié et ne vous apprend rien.
Qu'ignore au juste l'option « ignorer les espaces » ?
Les suites d'espaces et de tabulations sont ramenées à un espace unique et les extrémités de chaque ligne sont rognées : réindenter un bloc n'est donc pas signalé comme une réécriture. Les espaces ne sont pas supprimés pour autant — « a b » et « ab » restent deux lignes différentes.
Y a-t-il une limite de taille ?
Cinq mille lignes par côté, et la partie qui diffère réellement peut s'étendre sur 1200 lignes au maximum de chaque côté. C'est la seconde limite qui mord sur deux textes sans rapport ; l'outil refuse plutôt que d'épuiser la mémoire.
Bon à savoir
- La comparaison s'exécute dans votre navigateur. Rien de ce que vous collez n'est envoyé, journalisé ni stocké.
- Sans JavaScript, le formulaire fonctionne toujours en soumettant au serveur, qui exécute le même algorithme. Dans ce cas, les deux textes transitent bien par le réseau.