Emacs Org-mode内嵌图片不更新问题求助
解决Org-mode修改Babel生成图片后缓冲区不更新的问题
问题根源:Emacs默认会缓存图片文件内容,即便磁盘上的
test.png已经被Babel重新生成,缓冲区显示的还是缓存版本,而默认的org-redisplay-inline-images不会强制刷新这个缓存。临时快速修复:
直接在Emacs中执行M-x org-display-inline-images,当提示是否强制刷新时输入y;或者在scratch缓冲区里求值(org-display-inline-images t t),就能立刻看到更新后的图片。永久配置方案:
替换你原有的钩子配置,改用带强制刷新参数的版本:(add-hook 'org-babel-after-execute-hook (lambda () (org-display-inline-images t t)))第二个
t是开启强制刷新的参数,会让Org-mode重新读取磁盘上的图片文件,而非使用缓存内容。额外检查项:
确认你的Babel代码块没有添加:cache yes参数——如果加了这个,Babel会跳过重新生成图片文件的步骤,自然不会有更新。你的代码块未包含该参数,可排除此情况。
内容的提问来源于stack exchange,提问作者Richard Longland
相关产品推荐
相关产品推荐

