Cómo comparar texto en línea con MoreKits
Guía basada en escenarios para detectar cambios de línea, palabra y estructura entre dos bloques de texto o código, sin subirlos nunca a un servidor.

Más utilidades que combinan bien con esta guía:
Por qué importa
Imagina: son las 17:48 del viernes. El ingeniero de guardia te escribe porque producción devuelve HTTP 502. Comparas la configuración Nginx desplegada con la copia buena conocida del martes pasado y ves de inmediato una línea extra proxy_read_timeout 5;. Cinco segundos — esa es tu caída. Una herramienta de comparación en dos paneles convierte una búsqueda de 30 minutos en un arreglo de 30 segundos.
El mismo patrón lo viven equipos legales revisando un contrato tachado, gestores de contenido comparando una exportación CMS con staging, y analistas validando CSV entre dos sistemas de reporting. Cuando la pregunta es «¿qué cambió exactamente?», recurres a un diff. Esta guía muestra cómo usar el comparador de texto de MoreKits para responder con precisión, en privado y con los tipos de archivo que realmente usas.
Tres escenarios reales
Compara staging.env y production.env para encontrar que LOG_LEVEL=debug coló en prod y está inundando el pipeline de logs.
Caída evitada
Pega los contratos v2 y v3 lado a lado; el diff en línea resalta la coma movida y el cambio de «shall» por «must» para que revisen solo los deltas.
Aprobación en minutos
Coloca el archivo de idioma anterior y el regenerado. Recortar, minúsculas e ignorar espacios aseguran que solo marque diferencias reales de traducción.
Sin regresiones en producción
Guía paso a paso con entrada y salida reales
La herramienta está en /content-tools/text-compare. Ábrela en una pestaña nueva y sigue.
Pega el original a la izquierda
Coloca la versión de confianza en el panel Original. El editor acepta texto plano, JSON, YAML, código, Markdown y CSV. No hay un límite práctico — la comparación corre en un Web Worker.
Pega el candidato a la derecha
Coloca la versión nueva en Modified. En cuanto ambos paneles tienen contenido se renderiza el diff sin hacer clic. El margen muestra inserciones en verde y borrados en rojo, con resaltado a nivel de carácter para ediciones en línea.
Reduce ruido con los interruptores de normalización
Usa la barra para ignorar espacios finales, normalizar finales de línea o pasar a minúsculas antes del diff. Muchos falsos positivos (CRLF vs LF, tab vs espacios) desaparecen con un interruptor.
Salta entre cambios
Pulsa las flechas arriba/abajo en la barra de cambios (o los atajos del tooltip) para recorrer cada hunk. En archivos largos es mucho más rápido que hacer scroll.
Exporta el diff
Usa Copy as unified diff para pegar el resultado en un ticket o descripción de PR. El formato es la misma sintaxis de parche
--- / +++que entiendegit apply.
Input
{
"logLevel": "info",
"retries": 3,
"endpoints": ["https://api.example.com"]
}Output
{
- "logLevel": "info",
- "retries": 3,
+ "logLevel": "debug",
+ "retries": 5,
"endpoints": ["https://api.example.com"]
}Cláusula v2
The Supplier shall deliver the Goods within thirty (30) days of receipt of the purchase order.
Cláusula v3
The Supplier must deliver the Goods within forty-five (45) days of receipt of the purchase order.

Consejos útiles
- Arrastra y suelta un archivo sobre cualquier panel para cargar contenido — práctico para
.env,.yamlo.csven disco. - Pre-formatea JSON con el formateador JSON antes del diff. Con forma canónica en ambos lados, el diff se centra en datos reales, no en espacios cosméticos.
- Combínalo con la herramienta de marca de agua para rastrear qué copia de un contrato filtró: marcas invisibles de marca de agua de texto oculto sobreviven a la mayoría de flujos copiar/pegar y se ven claras en el diff.
- Guarda la URL con hashes de tus comparaciones habituales (p. ej.
#case=ignore) para que los interruptores vengan preactivados. - Usa Trim Lines si tu equipo mezcla editores que añaden newline final. El diff deja de quejarse por una línea 401 vacía.
Trampas comunes
Error frecuente
El diff está «todo rojo» — casi cada línea cambió
Casi seguro solo difieren finales de línea (CRLF vs LF) o espacios finales. Activa Ignore line endings y Trim trailing spaces en la barra; el diff suele colapsar a los cambios reales.
Error frecuente
JSON y YAML «parecen distintos» pero los datos son idénticos
El orden de claves y las comillas difieren entre exportadores. Formatea ambos lados con el Formateador de código; el diff residual es el cambio significativo.
Error frecuente
Rendimiento lento en un log enorme
El algoritmo del diff es O(N×M) en el peor caso. Para logs multimegabyte, recorta primero la ventana temporal relevante (o usa grep para extraer el id de petición) antes de pegar. La herramienta entonces maneja decenas de miles de líneas al instante.
Cuándo no es la herramienta adecuada
El comparador de texto brilla en texto no estructurado o semiestructurado. Usa otra cosa cuando:
- Comparas cambios visuales (capturas UI, exportaciones de diseño). Usa un diff de imagen perceptual.
- Auditas historial en Git.
git log -py una plataforma de revisión están hechas para eso. - Diff de binarios grandes (assets compilados, PDF). Convierte a representación textual primero o usa un diff binario.
- Comparas datos tabulares con identidad por fila (p. ej. exportaciones DB con columna id).
VLOOKUPen hoja oEXCEPTen SQL dan resultados más limpios que un diff por líneas.
Preguntas frecuentes
¿Se sube mi texto a algún sitio?
No. La comparación corre por completo en tu navegador vía Web Worker. No hay fetch de vuelta a MoreKits, ni telemetría del contenido que pegas, y la página funciona sin conexión tras visitarla una vez.
¿Puedo compartir una comparación con un compañero?
La herramienta no persiste nada en servidor. El flujo más limpio es copiar el unified diff y pegarlo en ticket/PR. Si necesitas vista renderizada compartible, haz captura del panel de diff.
¿Maneja escrituras de derecha a izquierda?
Sí. El resaltado en línea es consciente de grafemas, así árabe, hebreo y urdu muestran diferencias por carácter sin romper ligaduras.
¿Cuál es la entrada máxima que puedo comparar?
No hay tope duro, pero el algoritmo es superlineal; más allá de ~250k líneas espera una pausa perceptible. Para cargas mayores, filtra primero el segmento relevante.
Próximos pasos
Cuando sepas qué cambió, los siguientes pasos naturales son:
- Embellece o minifica el payload con el Formateador de código.
- Re-codifica secciones escapadas con la herramienta Escape / Unescape.
- Si tu diff es Markdown, renderiza con el convertidor Markdown a HTML para confirmar que la salida visible sigue bien.
Cuando quieras — abre el comparador de texto y empieza a pegar.