Paste an image on clipboard to Emacs Org mode file without saving it

lina picture lina · Jul 2, 2013 · Viewed 10.9k times · Source

As I'm using the Emacs Org mode as a research log, sometime I want to keep track of something via screenshot images, and I definitely don't want to save them. So I'm wondering is there any way to insert those figures into my org mode file, like with word coping them from clipboard?

Answer

assem picture assem · Jul 3, 2013

The exact functionality you want isn't currently implemented, but I would be skeptical of saving lots of images into a research log if your opinion is that you "definitely don't want to save them."

Anyways, the functionality you desire has been expressed in the org-mode mailing list a couple of times in recent years - check

http://comments.gmane.org/gmane.emacs.orgmode/33770

http://www.mail-archive.com/[email protected]/msg50862.html

The first link includes some code to launch a screenshot utility (via ImageMagick) to [uniquely] save the file and insert an inline link in your org-mode buffer.

As stated in that thread, the code was improved upon and added to org-mode hacks page - which has lots of useful gems:

http://orgmode.org/worg/org-hacks.html

(defun my-org-screenshot ()
  "Take a screenshot into a time stamped unique-named file in the
same directory as the org-buffer and insert a link to this file."
  (interactive)
  (setq filename
        (concat
         (make-temp-name
          (concat (buffer-file-name)
                  "_"
                  (format-time-string "%Y%m%d_%H%M%S_")) ) ".png"))
  (call-process "import" nil nil nil filename)
  (insert (concat "[[" filename "]]"))
  (org-display-inline-images))