aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefan Kangas2022-08-30 19:05:29 +0200
committerStefan Kangas2022-08-31 05:51:51 +0200
commit5b857953a7affcfb01c24689c8bd85b072d2d186 (patch)
treeea4a2162ecf3577e0677bb8fb65864f312b952fa
parent7e2c5ddea4687c6d180c2e5506b709474404d437 (diff)
downloademacs-5b857953a7affcfb01c24689c8bd85b072d2d186.tar.gz
emacs-5b857953a7affcfb01c24689c8bd85b072d2d186.zip
image-dired: Prefer defvar-keymap
* lisp/image/image-dired-dired.el (image-dired-minor-mode-map): * lisp/image/image-dired.el (image-dired-thumbnail-mode-line-up-map) (image-dired-thumbnail-mode-tag-map) (image-dired-thumbnail-mode-map) (image-dired-display-image-mode-map): Prefer defvar-keymap.
-rw-r--r--lisp/image/image-dired-dired.el45
-rw-r--r--lisp/image/image-dired.el164
2 files changed, 92 insertions, 117 deletions
diff --git a/lisp/image/image-dired-dired.el b/lisp/image/image-dired-dired.el
index aa075ed27f7..4ed861aeeb3 100644
--- a/lisp/image/image-dired-dired.el
+++ b/lisp/image/image-dired-dired.el
@@ -191,30 +191,27 @@ With prefix argument, move ARG lines."
191 (select-window window)) 191 (select-window window))
192 (message "Thumbnail buffer not visible")))) 192 (message "Thumbnail buffer not visible"))))
193 193
194(defvar image-dired-minor-mode-map 194(defvar-keymap image-dired-minor-mode-map
195 (let ((map (make-sparse-keymap))) 195 :doc "Keymap for `image-dired-minor-mode'."
196 ;; (set-keymap-parent map dired-mode-map) 196 ;; Hijack previous and next line movement. Let C-p and C-b be
197 ;; Hijack previous and next line movement. Let C-p and C-b be 197 ;; though...
198 ;; though... 198 "p" #'image-dired-dired-previous-line
199 (define-key map "p" #'image-dired-dired-previous-line) 199 "n" #'image-dired-dired-next-line
200 (define-key map "n" #'image-dired-dired-next-line) 200 "<up>" #'image-dired-dired-previous-line
201 (define-key map [up] #'image-dired-dired-previous-line) 201 "<down>" #'image-dired-dired-next-line
202 (define-key map [down] #'image-dired-dired-next-line) 202
203 203 "C-S-n" #'image-dired-next-line-and-display
204 (define-key map (kbd "C-S-n") #'image-dired-next-line-and-display) 204 "C-S-p" #'image-dired-previous-line-and-display
205 (define-key map (kbd "C-S-p") #'image-dired-previous-line-and-display) 205 "C-S-m" #'image-dired-mark-and-display-next
206 (define-key map (kbd "C-S-m") #'image-dired-mark-and-display-next) 206
207 207 "C-t d" #'image-dired-display-thumbs
208 (define-key map "\C-td" #'image-dired-display-thumbs) 208 "<tab>" #'image-dired-jump-thumbnail-buffer
209 (define-key map [tab] #'image-dired-jump-thumbnail-buffer) 209 "C-t i" #'image-dired-dired-display-image
210 (define-key map "\C-ti" #'image-dired-dired-display-image) 210 "C-t x" #'image-dired-dired-display-external
211 (define-key map "\C-tx" #'image-dired-dired-display-external) 211 "C-t a" #'image-dired-display-thumbs-append
212 (define-key map "\C-ta" #'image-dired-display-thumbs-append) 212 "C-t ." #'image-dired-display-thumb
213 (define-key map "\C-t." #'image-dired-display-thumb) 213 "C-t c" #'image-dired-dired-comment-files
214 (define-key map "\C-tc" #'image-dired-dired-comment-files) 214 "C-t f" #'image-dired-mark-tagged-files)
215 (define-key map "\C-tf" #'image-dired-mark-tagged-files)
216 map)
217 "Keymap for `image-dired-minor-mode'.")
218 215
219(easy-menu-define image-dired-minor-mode-menu image-dired-minor-mode-map 216(easy-menu-define image-dired-minor-mode-menu image-dired-minor-mode-map
220 "Menu for `image-dired-minor-mode'." 217 "Menu for `image-dired-minor-mode'."
diff --git a/lisp/image/image-dired.el b/lisp/image/image-dired.el
index 038bd61a47e..a58eaa4775d 100644
--- a/lisp/image/image-dired.el
+++ b/lisp/image/image-dired.el
@@ -819,84 +819,64 @@ You probably want to use this together with
819 (select-window window)) 819 (select-window window))
820 (message "Associated dired buffer not visible")))) 820 (message "Associated dired buffer not visible"))))
821 821
822(defvar image-dired-thumbnail-mode-line-up-map 822(defvar-keymap image-dired-thumbnail-mode-map
823 (let ((map (make-sparse-keymap))) 823 :doc "Keymap for `image-dired-thumbnail-mode'."
824 ;; map it to "g" so that the user can press it more quickly 824 "<right>" #'image-dired-forward-image
825 (define-key map "g" #'image-dired-line-up-dynamic) 825 "<left>" #'image-dired-backward-image
826 ;; "f" for "fixed" number of thumbs per row 826 "<up>" #'image-dired-previous-line
827 (define-key map "f" #'image-dired-line-up) 827 "<down>" #'image-dired-next-line
828 ;; "i" for "interactive" 828 "C-f" #'image-dired-forward-image
829 (define-key map "i" #'image-dired-line-up-interactive) 829 "C-b" #'image-dired-backward-image
830 map) 830 "C-p" #'image-dired-previous-line
831 "Keymap for line-up commands in `image-dired-thumbnail-mode'.") 831 "C-n" #'image-dired-next-line
832 832
833(defvar image-dired-thumbnail-mode-tag-map 833 "<" #'image-dired-beginning-of-buffer
834 (let ((map (make-sparse-keymap))) 834 ">" #'image-dired-end-of-buffer
835 ;; map it to "t" so that the user can press it more quickly 835 "M-<" #'image-dired-beginning-of-buffer
836 (define-key map "t" #'image-dired-tag-thumbnail) 836 "M->" #'image-dired-end-of-buffer
837 ;; "r" for "remove" 837
838 (define-key map "r" #'image-dired-tag-thumbnail-remove) 838 "d" #'image-dired-flag-thumb-original-file
839 map) 839 "<delete>" #'image-dired-flag-thumb-original-file
840 "Keymap for tag commands in `image-dired-thumbnail-mode'.") 840 "m" #'image-dired-mark-thumb-original-file
841 841 "u" #'image-dired-unmark-thumb-original-file
842(defvar image-dired-thumbnail-mode-map 842 "U" #'image-dired-unmark-all-marks
843 (let ((map (make-sparse-keymap))) 843 "." #'image-dired-track-original-file
844 (define-key map [right] #'image-dired-forward-image) 844 "<tab>" #'image-dired-jump-original-dired-buffer
845 (define-key map [left] #'image-dired-backward-image) 845
846 (define-key map [up] #'image-dired-previous-line) 846 "g g" #'image-dired-line-up-dynamic
847 (define-key map [down] #'image-dired-next-line) 847 "g f" #'image-dired-line-up
848 (define-key map "\C-f" #'image-dired-forward-image) 848 "g i" #'image-dired-line-up-interactive
849 (define-key map "\C-b" #'image-dired-backward-image) 849
850 (define-key map "\C-p" #'image-dired-previous-line) 850 "t t" #'image-dired-tag-thumbnail
851 (define-key map "\C-n" #'image-dired-next-line) 851 "t r" #'image-dired-tag-thumbnail-remove
852 852
853 (define-key map "<" #'image-dired-beginning-of-buffer) 853 "RET" #'image-dired-display-thumbnail-original-image
854 (define-key map ">" #'image-dired-end-of-buffer) 854 "C-<return>" #'image-dired-thumbnail-display-external
855 (define-key map (kbd "M-<") #'image-dired-beginning-of-buffer) 855
856 (define-key map (kbd "M->") #'image-dired-end-of-buffer) 856 "L" #'image-dired-rotate-original-left
857 857 "R" #'image-dired-rotate-original-right
858 (define-key map "d" #'image-dired-flag-thumb-original-file) 858
859 (define-key map [delete] #'image-dired-flag-thumb-original-file) 859 "D" #'image-dired-thumbnail-set-image-description
860 (define-key map "m" #'image-dired-mark-thumb-original-file) 860 "S" #'image-dired-slideshow-start
861 (define-key map "u" #'image-dired-unmark-thumb-original-file) 861 "C-d" #'image-dired-delete-char
862 (define-key map "U" #'image-dired-unmark-all-marks) 862 "SPC" #'image-dired-display-next-thumbnail-original
863 (define-key map "." #'image-dired-track-original-file) 863 "DEL" #'image-dired-display-previous-thumbnail-original
864 (define-key map [tab] #'image-dired-jump-original-dired-buffer) 864 "c" #'image-dired-comment-thumbnail
865 865
866 ;; add line-up map 866 ;; Mouse
867 (define-key map "g" image-dired-thumbnail-mode-line-up-map) 867 "<mouse-2>" #'image-dired-mouse-display-image
868 ;; add tag map 868 "<mouse-1>" #'image-dired-mouse-select-thumbnail
869 (define-key map "t" image-dired-thumbnail-mode-tag-map) 869 "<mouse-3>" #'image-dired-mouse-select-thumbnail
870 870 "<down-mouse-1>" #'image-dired-mouse-select-thumbnail
871 (define-key map "\C-m" #'image-dired-display-thumbnail-original-image) 871 "<down-mouse-2>" #'image-dired-mouse-select-thumbnail
872 (define-key map [C-return] #'image-dired-thumbnail-display-external) 872 "<down-mouse-3>" #'image-dired-mouse-select-thumbnail
873 873 ;; Seems I must first set C-down-mouse-1 to undefined, or else it
874 (define-key map "L" #'image-dired-rotate-original-left) 874 ;; will trigger the buffer menu. If I try to instead bind
875 (define-key map "R" #'image-dired-rotate-original-right) 875 ;; C-down-mouse-1 to `image-dired-mouse-toggle-mark', I get a message
876 876 ;; about C-mouse-1 not being defined afterwards. Annoying, but I
877 (define-key map "D" #'image-dired-thumbnail-set-image-description) 877 ;; probably do not completely understand mouse events.
878 (define-key map "S" #'image-dired-slideshow-start) 878 "C-<down-mouse-1>" #'undefined
879 (define-key map "\C-d" #'image-dired-delete-char) 879 "C-<mouse-1>" #'image-dired-mouse-toggle-mark)
880 (define-key map " " #'image-dired-display-next-thumbnail-original)
881 (define-key map (kbd "DEL") #'image-dired-display-previous-thumbnail-original)
882 (define-key map "c" #'image-dired-comment-thumbnail)
883
884 ;; Mouse
885 (define-key map [mouse-2] #'image-dired-mouse-display-image)
886 (define-key map [mouse-1] #'image-dired-mouse-select-thumbnail)
887 (define-key map [mouse-3] #'image-dired-mouse-select-thumbnail)
888 (define-key map [down-mouse-1] #'image-dired-mouse-select-thumbnail)
889 (define-key map [down-mouse-2] #'image-dired-mouse-select-thumbnail)
890 (define-key map [down-mouse-3] #'image-dired-mouse-select-thumbnail)
891 ;; Seems I must first set C-down-mouse-1 to undefined, or else it
892 ;; will trigger the buffer menu. If I try to instead bind
893 ;; C-down-mouse-1 to `image-dired-mouse-toggle-mark', I get a message
894 ;; about C-mouse-1 not being defined afterwards. Annoying, but I
895 ;; probably do not completely understand mouse events.
896 (define-key map [C-down-mouse-1] #'undefined)
897 (define-key map [C-mouse-1] #'image-dired-mouse-toggle-mark)
898 map)
899 "Keymap for `image-dired-thumbnail-mode'.")
900 880
901(easy-menu-define image-dired-thumbnail-mode-menu image-dired-thumbnail-mode-map 881(easy-menu-define image-dired-thumbnail-mode-menu image-dired-thumbnail-mode-map
902 "Menu for `image-dired-thumbnail-mode'." 882 "Menu for `image-dired-thumbnail-mode'."
@@ -930,21 +910,19 @@ You probably want to use this together with
930 ["Refresh thumb" image-dired-refresh-thumb]) 910 ["Refresh thumb" image-dired-refresh-thumb])
931 ["Quit" quit-window])) 911 ["Quit" quit-window]))
932 912
933(defvar image-dired-display-image-mode-map 913(defvar-keymap image-dired-display-image-mode-map
934 (let ((map (make-sparse-keymap))) 914 :doc "Keymap for `image-dired-display-image-mode'."
935 (define-key map "S" #'image-dired-slideshow-start) 915 "S" #'image-dired-slideshow-start
936 (define-key map (kbd "SPC") #'image-dired-display-next-thumbnail-original) 916 "SPC" #'image-dired-display-next-thumbnail-original
937 (define-key map (kbd "DEL") #'image-dired-display-previous-thumbnail-original) 917 "DEL" #'image-dired-display-previous-thumbnail-original
938 (define-key map "n" #'image-dired-display-next-thumbnail-original) 918 "n" #'image-dired-display-next-thumbnail-original
939 (define-key map "p" #'image-dired-display-previous-thumbnail-original) 919 "p" #'image-dired-display-previous-thumbnail-original
940 (define-key map "m" #'image-dired-mark-thumb-original-file) 920 "m" #'image-dired-mark-thumb-original-file
941 (define-key map "d" #'image-dired-flag-thumb-original-file) 921 "d" #'image-dired-flag-thumb-original-file
942 (define-key map "u" #'image-dired-unmark-thumb-original-file) 922 "u" #'image-dired-unmark-thumb-original-file
943 (define-key map "U" #'image-dired-unmark-all-marks) 923 "U" #'image-dired-unmark-all-marks
944 ;; Disable keybindings from `image-mode-map' that doesn't make sense here. 924 ;; Disable keybindings from `image-mode-map' that doesn't make sense here.
945 (define-key map "o" nil) ; image-save 925 "o" nil) ; image-save
946 map)
947 "Keymap for `image-dired-display-image-mode'.")
948 926
949(define-derived-mode image-dired-thumbnail-mode 927(define-derived-mode image-dired-thumbnail-mode
950 special-mode "image-dired-thumbnail" 928 special-mode "image-dired-thumbnail"