Cómo mostrar una diferencia entre dos buffers con diferencias de "nivel de personaje"


20

Cuando se comparan dos búferes por diferencias, M-x ediff-buffersno indica los caracteres específicos que han cambiado dentro de una palabra (es decir, diferencias de "nivel de caracteres"). La mayoría de las herramientas diff modernas mostrarán las diferencias dentro de una palabra.

Parece que a Emacs le falta esta característica importante (¿o obviamente útil?) Por defecto. ¿Cómo puedo hacer que Emacs muestre las diferencias por carácter?

Actualización Aquí M-x ediff-buffers diff1 diff2, utilizo emacs -Qpara garantizar que mi tema no interfiera: ingrese la descripción de la imagen aquí

Aquí está el mismo texto pegado en Meld: ingrese la descripción de la imagen aquí


Parece que este problema está relacionado con el tema que está utilizando. En Vanilla Emacs (24.4), se resaltan las diferencias entre líneas individuales. Puede verificar esto al iniciar Emacs a través emacs -Qy llamando ediff-buffersen diff1y diff2como lo haría normalmente.
itsjeyd

Intenté correr con emacs -Q, agregué arriba. Además, modifiqué mi pregunta para abordar las diferencias de nivel de caracteres en lugar de las diferencias entre líneas .
modulitos

Respuestas:



6

Esta característica se llama "refinación" en Ediff. Puede presionar *para refinar el trozo actual o @para activar el refinado automático cada vez que se mueva a un trozo diferente.


1
Modifiqué mi pregunta para abordar las diferencias de nivel de caracteres en lugar de las diferencias dentro de la línea . ¿Es posible hacer que Emacs muestre las diferencias dentro de una palabra?
modulitos
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.