Function: image-dired-dired-toggle-marked-thumbs
image-dired-dired-toggle-marked-thumbs is an autoloaded, interactive
and byte-compiled function defined in image-dired-dired.el.gz.
Signature
(image-dired-dired-toggle-marked-thumbs &optional ARG)
Documentation
Toggle thumbnails in front of marked file names in the Dired buffer.
If no file is marked, toggle display of thumbnail on the current file's line.
ARG, if non-nil (interactively, the prefix argument), specifies the files
whose thumbnail display to toggle instead of the marked files: if ARG is an
integer, use the next ARG (or previous -ARG, if ARG<0) files; if ARG is
the symbol marked, use only the marked files, if any; any other value of
ARG means toggle thumbnail display of the current line's file.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/image/image-dired-dired.el.gz
;;;###autoload
(defun image-dired-dired-toggle-marked-thumbs (&optional arg)
"Toggle thumbnails in front of marked file names in the Dired buffer.
If no file is marked, toggle display of thumbnail on the current file's line.
ARG, if non-nil (interactively, the prefix argument), specifies the files
whose thumbnail display to toggle instead of the marked files: if ARG is an
integer, use the next ARG (or previous -ARG, if ARG<0) files; if ARG is
the symbol `marked', use only the marked files, if any; any other value of
ARG means toggle thumbnail display of the current line's file."
(interactive "P" dired-mode)
(setq image-dired--generate-thumbs-start (current-time))
(dired-map-over-marks
(let ((image-pos (dired-move-to-filename))
(image-file (dired-get-filename nil t))
thumb-file
overlay)
(when (and image-file
(string-match-p (image-dired--file-name-regexp) image-file))
(setq thumb-file (create-image
(image-dired--get-create-thumbnail-file image-file)))
;; If image is not already added, then add it.
(let ((thumb-ov (cl-loop for ov in (overlays-in (point) (1+ (point)))
if (overlay-get ov 'thumb-file) return ov)))
(if thumb-ov
(delete-overlay thumb-ov)
(put-image thumb-file image-pos)
(setq overlay
(cl-loop for ov in (overlays-in (point) (1+ (point)))
if (overlay-get ov 'put-image) return ov))
(overlay-put overlay 'image-file image-file)
(overlay-put overlay 'thumb-file thumb-file)))))
;; Show or hide thumbnail on ARG next files.
arg)
(add-hook 'dired-after-readin-hook
'image-dired-dired-after-readin-hook nil t))