怎么在org-mode下显示gif动图?

org-mode下插入gif图片,用C-c C-x C-v显示的图片是静态的,怎么才能显示动态的图片呢?

试试EAF?

一直想用EAF,可惜是mac。

我也是用的EAF,支持好。神器。感谢懒猫大大。

不过你是mac不能用EAF的话,可以试试我写的函数。Emacs原生支持。

(defun my-func/open-and-play-gif-image (file &optional link)
  "Open and play GIF image `FILE' in Emacs buffer.

Optional for Org-mode file: `LINK'."
  (let ((gif-image (create-image file))
        (tmp-buf (get-buffer-create "*Org-mode GIF image animation*")))
    (switch-to-buffer tmp-buf)
    (erase-buffer)
    (insert-image gif-image)
    (image-animate gif-image nil t)
    (local-set-key (kbd "q") 'bury-buffer)
    ))

(add-to-list 'org-file-apps '("\\.gif\\'" . my-func/open-and-play-gif-image))

这个播放不怎么流畅,是个问题,不知道有没有大神能够解决。

不知道这个函数在org-mode下怎么用?放到配置文件中,打开有gif的org文件依然是静态图。

这个在最后的 add-to-list 那个步骤就是添加打开 .gif 图片连接时,使用上面的函数。会使用 Emacs 的函数 image-animate 来播放。

这个是新的buffer显示动画,能不能在原来的org buffer显示动画?

你这种需要,Emacs暂时做不到,需要的话,可能 xwidget 特性的浏览器能显示gif,但是应该也很难在Org buffer里显示。

这里其实有一份 Animating gifs in orgmode 不过和上面一样,有性能问题,可能这是 emacs render 的老问题。

我在想,对于这种图片大小不变,只有内容改变的情况,是不是在渲染的时候可以特殊判断一下

隔壁的popweb做这个应该是小菜一碟了。

这里应该是想要做行内的显示,popweb 是弹出框式的,不太一样