Comparar textos

Comparar dos textos y ver las diferencias

Pega el original a un lado y la versión nueva al otro. Verás qué líneas se añadieron, se quitaron o cambiaron —y dentro de las que cambiaron, exactamente qué palabra—, con numeración alineada y navegación entre diferencias.

Cero subidas · todo en tu navegador

Tus textos y tus archivos no salen de tu equipo: se comparan aquí dentro.

Por qué importa que esto no se suba

Lo que se pega en un comparador de textos casi nunca es público: un contrato antes de firmarlo, dos versiones de una configuración de producción con credenciales dentro, el borrador de un comunicado que aún no ha salido o el original y la corrección de un texto ajeno. Mandar las dos versiones al servidor de una web cualquiera para que te diga en qué se diferencian es entregar las dos. Aquí no hay a dónde mandarlas: la comparación se calcula en tu pestaña.

Cómo funciona, en 3 pasos

  1. Pon las dos versiones

    Pega el original a la izquierda y la versión nueva a la derecha. O arrastra dos archivos de texto encima: si sueltas los dos a la vez, cada uno va a un lado.

  2. Mira el resumen y salta entre cambios

    Arriba tienes cuántas líneas se añadieron, se quitaron y cambiaron. Con las flechas vas de una diferencia a la siguiente sin buscarla a ojo.

  3. Llévatelo

    Cambia a la vista unificada si prefieres una sola columna, o descarga el parche con solo los tramos que cambiaron.

Para qué la usa la gente

Por palabra, no solo por línea

Casi todos los comparadores te dicen qué líneas cambiaron. Con código eso basta, porque las líneas son cortas. Con un texto normal no: un párrafo de cuarenta palabras es una sola línea, y que te la marquen entera en amarillo no te dice nada. Vuelves a leerla dos veces buscando la palabra que baila.

Aquí, cuando una línea aparece en las dos versiones pero ha cambiado, se compara por dentro, palabra a palabra, y solo se resaltan las que se han movido: en rojo lo que decía antes, en verde lo que dice ahora. Si de «12.000 euros» pasó a «14.500 euros», eso es lo que se ilumina, y el resto de la frase se queda tranquilo. Los signos de puntuación cuentan por su cuenta, así que quitar una coma marca la coma y no la palabra de al lado.

Alinear bien es la mitad del trabajo

El problema difícil de comparar dos textos no es pintar colores: es saber qué línea del original se corresponde con cuál de la versión nueva. Si insertas un párrafo en la página 2, un comparador ingenuo —de los que van línea 1 contra línea 1, línea 2 contra línea 2— marcará como distinto todo lo que viene después, aunque no se haya tocado ni una coma.

Esta herramienta usa el algoritmo de Myers, el mismo que usan git y el comando diff, que busca la correspondencia con el menor número posible de cambios. Insertar un párrafo se ve como un párrafo insertado, y ya está. La implementación está comprobada contra el propio diff en trescientos pares de textos generados al azar, exigiendo que encuentre exactamente el mismo número de líneas añadidas y quitadas.

Las tres opciones que evitan los falsos positivos

La mayoría de las diferencias que no interesan a nadie vienen de tres sitios. Ignorar mayúsculas sirve cuando comparas un texto antes y después de un formateo. Ignorar los espacios del principio y del final quita del medio los sangrados y los espacios sueltos al final de la línea, que son invisibles y aparecen en cuanto dos personas editan el mismo archivo con editores distintos. Ignorar líneas vacías resuelve el caso de un texto pegado con doble salto entre párrafos frente a otro con salto simple.

Las tres cambian qué se considera igual, nunca lo que se te enseña: las líneas siguen apareciendo tal y como las escribiste, con su numeración real.

El salto de línea final, que despista a todo el mundo

Hay un caso que hace perder tardes enteras: dos archivos que se ven idénticos en pantalla, pero uno termina con un salto de línea y el otro no. Para cualquier programa son dos archivos distintos, y muchos comparadores online dicen alegremente que son iguales. Aquí se detecta y se dice con esas palabras, porque es exactamente el tipo de diferencia que uno no encontraría mirando.

Los límites, dichos antes de que fallen

Al soltar un archivo, el tope son 2 MB por lado. Un texto de varios miles de líneas con unos cuantos cambios se compara en milisegundos, porque lo primero que hace el algoritmo es recortar el principio y el final que coinciden. Lo que de verdad cuesta es comparar dos textos enormes que no se parecen en nada: ahí el trabajo crece con la cantidad de diferencias, no con el tamaño, y si se pasa del límite se te dice en vez de dejar la pestaña colgada.

Los tramos largos sin cambios se pliegan con un botón para abrirlos, de modo que un archivo de miles de líneas con tres cambios se lee de un vistazo. Y si lo que tienes son dos JSON y quieres compararlos en serio, conviene formatearlos primero: con el mismo sangrado, las diferencias reales saltan a la vista en vez de esconderse detrás de dos maneras distintas de escribir lo mismo.

Preguntas frecuentes

¿Se suben mis textos a algún servidor?

No. La comparación entera ocurre dentro de tu navegador: lo que pegas y los archivos que sueltas se procesan en tu equipo y no salen de la pestaña. No hay cuentas ni base de datos.

Importa más aquí que en casi cualquier otra herramienta, porque lo que se compara suele ser un contrato antes de firmarlo, una configuración de producción o un texto sin publicar. Carga la página, desconecta internet y compruébalo: sigue funcionando igual.

¿Puedo comparar dos PDF o dos documentos de Word?

Directamente no. Esta herramienta compara texto, y un PDF o un .docx son archivos comprimidos con formato dentro: al soltarlos saldrían caracteres sin sentido, y cuando eso pasa te avisamos en vez de enseñarte basura.

Lo práctico es abrir cada documento, seleccionar todo, copiar y pegar cada versión en un lado. Se pierde el formato, que para comparar el contenido no estorba: lo que quieres ver es qué frase cambió.

¿Qué diferencia hay entre dos columnas y unificado?

En dos columnas ves el original a la izquierda y la versión nueva a la derecha, cada línea frente a la suya. Es la más cómoda para revisar un contrato: puedes leer las dos versiones en paralelo.

En unificado las dos versiones se mezclan en una columna, con un menos delante de lo que se quitó y un más delante de lo que se puso. Es la que usan las herramientas de control de versiones, cabe en pantallas estrechas y se corresponde con el parche que descargas.

¿Qué es el parche y para qué sirve?

Es un archivo en formato de parche unificado, el mismo que producen diff y git. Lleva solo los tramos que cambiaron, con tres líneas de contexto alrededor de cada uno.

Sirve para mandar por correo o adjuntar a una incidencia solo lo que cambió, y para aplicarlo sobre el original con patch o git apply y obtener la versión nueva. El de esta herramienta está comprobado aplicándolo de verdad, no solo mirándolo.

¿Por qué marca como distintas dos líneas que se ven iguales?

Casi siempre por espacios invisibles: uno de más al final de la línea, una tabulación donde antes había espacios, un espacio doble en medio. Para los dos primeros está la casilla de ignorar espacios del principio y del final.

También puede ser cosa de mayúsculas, que tiene su propia casilla. Y hay un caso que despista mucho: que un archivo termine con salto de línea y el otro no. Se ve idéntico y para cualquier programa son dos archivos distintos; aquí se detecta y se dice.

¿Cómo de largos pueden ser los textos?

Al soltar un archivo, 2 MB por lado. Varios miles de líneas con unos cuantos cambios se comparan en milisegundos, porque el algoritmo empieza recortando el principio y el final coincidentes.

Lo que cuesta es comparar dos textos larguísimos que no se parecen en nada: el trabajo crece con la cantidad de diferencias, no con el tamaño. Si se pasa del límite, se te dice en vez de quedarse colgada.

¿Qué significan los colores?

El código de siempre: verde lo añadido, rojo lo eliminado y ámbar las líneas que están en las dos pero han cambiado. Dentro de una línea ámbar, las palabras concretas van resaltadas con más fuerza.

En dos columnas, cuando una línea solo existe en un lado, el hueco del otro sale rayado: así se entiende que ahí no falta nada, es que no hay línea.

¿Qué algoritmo usa para emparejar las líneas?

El de Myers, el mismo que usan git y diff. Se nota justo cuando importa: si insertas un párrafo en medio, un comparador ingenuo marca como distinto todo lo que viene detrás; el de Myers encuentra la correspondencia mínima y marca solo el párrafo nuevo.

La implementación de esta página se ha comprobado contra el propio diff en trescientos pares de textos generados al azar.

Herramientas relacionadas