使图像(即图像模式)自动从磁盘重新加载更改


11

我有一个由plantuml生成的图像,该图像在图像模式缓冲区中打开。我想使用自动恢复模式,以便它自动刷新,但是由于某种原因,它似乎不适用于图像模式缓冲区。有什么我想念的吗?

Answers:



4

您没有提供有关您正在做的事情或所看到的事情的太多信息。尝试给出逐步的配方,最好从开始emacs -Q,并说出您的期望与所看到的。

手动还原缓冲区是否起作用(M-x revert-buffer将当前缓冲区设置为图像缓冲区后,)?如果是这样,请研究自动还原的不同之处。

您正在使用global-auto-revert-mode吗?如果没有,您的图像缓冲区是否打开auto-revert-buffer-list?如果没有,那将解释事情:auto-revert-mode将当前缓冲区添加到该列表,并auto-revert-buffers还原该列表上的缓冲区。

我不是专家image-mode,但是在搜索revertimage-mode.el我看到了功能image-after-revert-hook。如果是我,我可能会从M-x debug-on-entry image-after-revert-hook(加载之后image-mode.el,而不是image-mode.elc)开始,然后逐步调试(例如,使用d)。

(一个大胆的猜测告诉我,该函数甚至没有被调用,并且图像缓冲区不是还原的候选对象。请参见上文。也许global-auto-revert-mode从开始就可以尝试一下。)


3

我尝试在emacs中打开一个png,auto-revert-mode然后从外壳程序启用它,然后在其上复制另一个图像,然后用原始png的副本替换该文件。

我发现该文件有时会更新为新文件的二进制内容,而不是已渲染的内容。如果打开二进制内容,请尝试使用C-c C-c将其转换为图像。

至少执行一次转换后,它会按照保留图像的方式开始自动恢复。

注意:我使用Emacs 25.1进行了尝试,因此它可能是一项新功能。您使用的是哪个版本?


24.3-更新时间!我过去一直呆在源头上或附近,但是现在发行版本非常好。
Mark Aufflick 2014年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.