org-inline-anim.el icon indicating copy to clipboard operation
org-inline-anim.el copied to clipboard

Inline playback of animated GIF/PNG for Org

-- eval: (visual-line-mode 1) --

#+STARTUP: showall

[[https://melpa.org/#/org-inline-anim][file:https://melpa.org/packages/org-inline-anim-badge.svg]] [[https://stable.melpa.org/#/org-inline-anim][file:https://stable.melpa.org/packages/org-inline-anim-badge.svg]]

  • org-inline-anim

Org-inline-anim plays animated GIF or PNG inline in Org buffers.

** Installation

You can install org-inline-anim from MELPA. For manual installation, download =org-inline-anim.el= into somewhere in your local directory and install it with =M-x package-install-file=.

Enable this feature in an Org buffer with =M-x org-inline-anim-mode=. Add the following line to your init file to automatically enable the feature in newly opened Org buffers.

#+BEGIN_SRC emacs-lisp (add-hook 'org-mode-hook #'org-inline-anim-mode) #+END_SRC

** Usage

You can play an animation by =M-x org-inline-anim-animate= (or =C-c C-x m=) when the point is on the image. If you use Org-babel and a result block has an animation image, the command works also in the result block or in the source block that generated the result block.

Without a prefix, the animation will play only once and stop at the last frame. With a single prefix (=C-u=), the animation will play and loop. You can stop it with a double prefix (=C-u C-u=) or a numeric arg 0 (=C-u 0= or =C-0=). The former shows the last frame after playback is stopped. The latter shows the first frame instead.

=M-x org-inline-anim-animate-all= (or =C-c C-x M=) plays all the animatable images in the buffer at once. The same prefix arguments above works for this command too.

If you prefer to loop the animation by default, set =org-inline-anim-loop= to non-nil. Then with a single prefix, the animation will play only once without looping.