Estoy experimentando con ediff-directories
, pero no estoy seguro de si lo estoy usando correctamente.
Leí en la documentación que, una vez que proporciono dos directorios ediff-directories
, si presiono ==
Emacs los compara recursivamente.
Sin embargo, si presiono ==
, solo obtengo carpetas con =
signos (lo que significa que las dos carpetas tienen contenidos idénticos) en el nivel donde ejecuto el comando. Si quiero ver qué carpetas tienen =
signos en niveles más profundos en la jerarquía de carpetas, necesito volver a ejecutar el ==
comando en cada nivel.
¿Cómo puedo decirle a emacs que vaya recursivamente hasta las hojas para poder ver todas las diferencias en el directory difference buffer
(accesible a través del comando del teclado D
)?
Si alguien conoce un tutorial sobre cómo usarlo ediff-directories
(aparte de la documentación oficial ), estaría muy interesado.
Además, si quiero salir de un grupo de sesión (comparación de carpetas en un nivel), pero tengo sesiones abiertas para niveles más profundos, si q
presiono (salir de este grupo de sesión), Emacs se queja con el mensaje:
Este grupo de sesiones tiene sesiones activas --- no puede salir
¿Cómo puedo salir de los grupos de sesiones sin salir de las sub-sesiones una por una?
ztree-diff
Puede diferenciar dos directorios de forma recursiva. github.com/fourier/ztreeRespuestas:
Lo he usado
M-x dired-compare-directories
, pero también está EdiffTrees , que podría servirle mejor en la situación que describe.fuente
También necesitaba esta función y se me ocurrió lo siguiente. La función
ediff-directories-recursive
funciona comoediff-directories
pero se repite en subdirectorios.La magia detrás de eso está reemplazando temporalmente el incorporado
directory-files
por uno propiodirectory-files-recursive
antes de llamarediff-directories
.fuente
Hay un
ztree
paquete disponible de Melpa que admite la comparación recursiva del árbol de directorios: elM-x ztree-diff
uso dediff
utilidades GNU para comparar los archivos correspondientes.Si lo usa
use-package
para instalar y configurar elztree
paquete, agregue a su.emacs
:fuente