Comparar textos

Compara dos textos línea a línea y resalta lo añadido y lo eliminado, como en un control de versiones. Gratis y 100 % en tu navegador.
Procesamiento 100 % local · tus archivos no salen de tu navegador
Publicidad

Procesamiento 100 % local · tus textos nunca salen de tu navegador

Te devuelven un contrato «con dos cambios menores» de doce páginas. Leerlo entero para encontrarlos es media mañana perdida, y aun así se te escapará la coma que convierte una cláusula de penalización en otra cosa. Un diff resuelve eso en un segundo: pone las dos versiones una frente a otra y te señala exactamente qué se ha tocado.

Qué es un diff, en realidad

Un diff no es una lectura comparada ni un corrector: es un cálculo. El programa trocea los dos textos en unidades —aquí, líneas— y busca la secuencia más larga de unidades que aparecen en los dos, en el mismo orden. Ese esqueleto compartido queda como material sin cambios, y todo lo que sobra a un lado o al otro se etiqueta como eliminado o como añadido.

El truco es potente porque no depende del punto donde empieza el cambio. Un comparador ingenuo que fuera línea 1 contra línea 1, línea 2 contra línea 2, marcaría el documento entero como distinto en cuanto insertaras un párrafo nuevo al principio. El cálculo de la subsecuencia común más larga vuelve a alinear el resto por sí solo. Es el mismo principio que hay detrás del comando diff de Unix, de los cambios que muestra Git y del control de cambios de cualquier editor colaborativo.

Publicidad

Por líneas o por palabras: por qué importa la granularidad

La unidad de comparación cambia por completo lo que ves. Un diff por líneas es el estándar en programación: cada línea de código es una instrucción con sentido propio, así que marcar la línea entera es informativo y el resultado se lee limpio.

En prosa la cosa cambia. Un párrafo suele ser una única línea larguísima, de modo que cambiar «treinta días» por «quince días» tiñe las cuatrocientas palabras del párrafo de rojo y otras cuatrocientas de verde. Un diff por palabras resaltaría solo «treinta» y «quince», pero fragmenta mucho más el texto y cuesta seguirlo cuando la reescritura es amplia.

Esta herramienta trabaja por líneas, y hay un truco sencillo para afinarla: antes de pegar el texto, mete un salto de línea después de cada punto. Al convertir cada frase en una línea, el diff pasa a señalarte la oración concreta que ha cambiado en lugar del bloque completo.

Situaciones en las que te ahorra el disgusto

  1. Contratos y presupuestos revisados. La otra parte devuelve «la misma propuesta con un retoque». Comparando pegas el original y su versión, y ves si el retoque afectaba también al plazo de pago.
  2. Código y configuración. Dos versiones de un archivo, la que funcionaba y la que dejó de funcionar. El diff aísla la línea culpable.
  3. Textos legales de proveedores. Guarda los términos de servicio de hoy y cotéjalos con los de dentro de seis meses para ver qué han cambiado sin avisar.
  4. Traducciones y correcciones de estilo. Comprueba que el corrector solo ha tocado lo acordado y no ha reescrito medio artículo.
  5. Exportaciones de datos. Dos listados sacados en fechas distintas: las líneas verdes son altas y las rojas, bajas.
Publicidad

Dónde llega y dónde no

Un diff compara caracteres, no significados. Si una frase se reformula por completo pero dice lo mismo, la marcará como cambio; y si dos versiones dicen lo contrario con las mismas palabras salvo un «no», señalará una diferencia mínima que tú deberás valorar. Tampoco entiende de movimientos: un párrafo desplazado del final al principio aparece como borrado allí y añadido aquí.

Los espacios invisibles son otra fuente de ruido. Un tabulador frente a cuatro espacios, un espacio de más al final de la línea o un salto de línea estilo Windows frente a uno estilo Unix son diferencias reales para el algoritmo aunque en pantalla no se distinga nada. Si te salen líneas marcadas que parecen idénticas, casi siempre es eso.

Cómo usarlo y qué mirar después

Pega la versión original en el primer recuadro y la modificada en el segundo: el resultado se recalcula solo. Si el texto viene desordenado, pásalo antes por ordenar líneas para eliminar duplicados y líneas vacías, o normaliza el formato con el conversor de mayúsculas y minúsculas. Para medir cuánto ha crecido un documento tras la revisión tienes el contador de palabras y el contador de caracteres. Y si los textos vienen dentro de un PDF, primero extrae el texto del PDF. Más utilidades en herramientas de archivos.

Preguntas frecuentes

¿Qué significan los colores del resultado?

El verde marca las líneas que solo existen en el texto modificado, es decir, lo que se ha añadido. El rojo marca las que solo estaban en el original y han desaparecido. Lo que se muestra en gris es material idéntico en ambos y sirve de contexto para situar cada cambio.

¿Por qué una línea retocada sale a la vez en rojo y en verde?

Porque un diff por líneas no sabe editar dentro de una línea: solo entiende de líneas presentes y ausentes. Si cambias una palabra en mitad de un párrafo, la versión antigua se marca como eliminada y la nueva como añadida, una encima de otra. Verlas emparejadas te indica que se trata de una modificación, no de dos cambios distintos.

¿Qué algoritmo hay debajo?

El cálculo de la subsecuencia común más larga (LCS), el mismo fundamento del comando diff de Unix y de los cambios que muestra Git. Su gracia es que busca la mayor cantidad posible de material compartido antes de decidir qué marcar, de forma que un párrafo insertado al principio no desplaza ni descoloca todo lo que viene detrás.

¿Detecta un párrafo que solo ha cambiado de sitio?

Lo señala como eliminado en su posición antigua y añadido en la nueva, no como un movimiento. Es una limitación conocida de los diff clásicos: describen el camino más corto entre dos textos, no la intención de quien editó.

¿Sirve para revisar código fuente?

Sí, y es uno de sus mejores usos, porque el código ya viene organizado en líneas con sentido propio. Resulta muy práctico para comparar dos fragmentos pegados desde sitios distintos, un archivo de configuración antes y después de tocarlo o dos respuestas de una API.

¿Hay un tamaño máximo de texto?

No hay un tope rígido, pero el coste de calcular un diff crece con el cuadrado del número de líneas. Con documentos de miles de líneas la comparación se vuelve pesada, así que en esos casos merece la pena trocear por capítulos o secciones y comparar por partes.

¿Es seguro pegar aquí un contrato confidencial?

Sí: el cotejo se calcula íntegramente dentro de tu navegador, sin subir nada a ningún servidor y sin guardar copias. Ese es el motivo por el que la herramienta también funciona sin conexión una vez cargada la página.

Herramientas relacionadas

Publicidad