Function: image-file-yank-handler

image-file-yank-handler is a byte-compiled function defined in image-file.el.gz.

Signature

(image-file-yank-handler STRING)

Documentation

Yank handler for inserting an image into a buffer.

Source Code

;; Defined in /usr/src/emacs/lisp/image-file.el.gz
;; We use a yank-handler to make yanked images unique, so that
;; yanking two copies of the same image next to each other are
;; recognized as two different images.
(defun image-file-yank-handler (string)
  "Yank handler for inserting an image into a buffer."
  (let ((len (length string))
	(image (get-text-property 0 'display string)))
    (if (eq yank-excluded-properties t)
        (set-text-properties 0 len () string)
      (remove-list-of-text-properties 0 len yank-excluded-properties string))
    (if (consp image)
	(add-text-properties 0
			     (or (next-single-property-change 0 'image-counter string)
				 (length string))
			     `(display
			       ,(cons (car image) (cdr image))
			       yank-handler
			       ,(cons 'image-file-yank-handler '(nil t)))
			     string))
    (insert string)))