Realizar una imagen (es decir, modo imagen) recargar automáticamente los cambios desde el disco

11

Tengo una imagen generada por plantuml que abro en un búfer de modo Imagen. Quiero usar el modo de reversión automática para que se actualice automáticamente, pero por alguna razón no parece funcionar en los búferes del modo de imagen. ¿Se me escapa algo?

Mark Aufflick
fuente

Respuestas:

9

Como alguien que acaba de tener este problema, he encontrado otra solución: auto-image-file-mode. Lo que hace es asegurarse automáticamente de que el archivo esté en modo de imagen en lugar de binario, así que habilite eso auto-revert-modey todo funcionará como se espera. Emacs 24.4.1

Fuente: http://osdir.com/ml/bug-gnu-emacs-gnu/2014-01/msg01061.html

joonoro
fuente
4

No proporciona mucha información sobre lo que está haciendo o lo que está viendo. Intente dar una receta paso a paso, preferiblemente a partir de emacs -Q, y diga lo que espera frente a lo que ve.

¿ Revertir manualmente el búfer funciona ( M-x revert-bufferdespués de configurar el búfer actual en el búfer de imagen)? Si es así, investigue qué hay de diferente en la reversión automática.

Estas usando global-auto-revert-mode? Si no, ¿está activado el búfer de imagen auto-revert-buffer-list? Si no, eso explicaría las cosas: auto-revert-modeagrega el búfer actual a esa lista y auto-revert-buffersrevierte los búferes que están en esa lista.

No soy un experto image-mode, pero al buscar reverten image-mode.elveo la función image-after-revert-hook. Si fuera yo, podría comenzar M-x debug-on-entry image-after-revert-hook(después de cargar image-mode.el, no image-mode.elc), y luego pasar por el depurador (por ejemplo, usar d).

(Una suposición descabellada me dice que esa función ni siquiera se llama, y ​​que el búfer de imagen no es candidato para la reversión. Ver arriba. Tal vez intente global-auto-revert-mode, para empezar).

Dibujó
fuente
3

Intenté abrir un png en emacs, habilitarlo auto-revert-modey luego desde un shell, copiar otra imagen sobre él y luego reemplazar ese archivo con una copia del png original.

Lo que encontré es que el archivo a veces se actualiza al contenido binario de los archivos nuevos, pero no al contenido representado. Si abre el contenido binario, intente usarlo C-c C-cpara convertirlo en una imagen.

Después de hacer esa conversión al menos una vez, comienza a revertirse automáticamente como esperaría al mantenerla como una imagen.

Nota: Probé esto con Emacs 25.1, por lo que puede ser una nueva característica. Qué versión estás usando?

dgtized
fuente
24.3 - ¡hora de actualizar! Solía ​​permanecer en la cabeza de la fuente o cerca, pero la versión de lanzamiento es bastante buena en estos días.
Mark Aufflick