diff options
| author | Mark Oteiza | 2016-12-13 11:32:04 -0500 |
|---|---|---|
| committer | Mark Oteiza | 2016-12-13 11:32:04 -0500 |
| commit | bed0373855ea67ca0c393175e6b870b8a7c5ab9c (patch) | |
| tree | 5aa71a69a9d686a9a93d1b301f742ef83844d637 | |
| parent | dc833039179ee11dae9aeb15b7d75e7435f7f1c9 (diff) | |
| download | emacs-bed0373855ea67ca0c393175e6b870b8a7c5ab9c.tar.gz emacs-bed0373855ea67ca0c393175e6b870b8a7c5ab9c.zip | |
Replace image-dired-setup-dired-keybindings with a minor mode
* lisp/image-dired.el (image-dired-thumbnail-mode): Fix docstring to
remove mention of nonexistent image-dired-dired and to refer to the
new minor mode.
(image-dired-minor-mode-map): New keymap assimilated from
image-dired-setup-dired-keybindings. In the future, the keymap parent
should be removed, and perhaps also the duplicate bindings that
already exist in dired-mode-map.
(image-dired-setup-dired-keybindings): Remove. Replace with an
obsolete function alias.
(image-dired-minor-mode): New minor mode, assuming the role of
image-dired-setup-dired-keybindings.
| -rw-r--r-- | lisp/image-dired.el | 144 |
1 files changed, 55 insertions, 89 deletions
diff --git a/lisp/image-dired.el b/lisp/image-dired.el index 7978f075645..80b57336ac8 100644 --- a/lisp/image-dired.el +++ b/lisp/image-dired.el | |||
| @@ -1414,8 +1414,7 @@ You probably want to use this together with | |||
| 1414 | (define-derived-mode image-dired-thumbnail-mode | 1414 | (define-derived-mode image-dired-thumbnail-mode |
| 1415 | fundamental-mode "image-dired-thumbnail" | 1415 | fundamental-mode "image-dired-thumbnail" |
| 1416 | "Browse and manipulate thumbnail images using dired. | 1416 | "Browse and manipulate thumbnail images using dired. |
| 1417 | Use `image-dired-dired' and `image-dired-setup-dired-keybindings' to get a | 1417 | Use `image-dired-minor-mode' to get a nice setup." |
| 1418 | nice setup to start with." | ||
| 1419 | (message "image-dired-thumbnail-mode enabled")) | 1418 | (message "image-dired-thumbnail-mode enabled")) |
| 1420 | 1419 | ||
| 1421 | (define-derived-mode image-dired-display-image-mode | 1420 | (define-derived-mode image-dired-display-image-mode |
| @@ -1424,98 +1423,65 @@ nice setup to start with." | |||
| 1424 | Resized or in full-size." | 1423 | Resized or in full-size." |
| 1425 | (message "image-dired-display-image-mode enabled")) | 1424 | (message "image-dired-display-image-mode enabled")) |
| 1426 | 1425 | ||
| 1426 | (defvar image-dired-minor-mode-map | ||
| 1427 | (let ((map (make-sparse-keymap))) | ||
| 1428 | ;; (set-keymap-parent map dired-mode-map) | ||
| 1429 | ;; Hijack previous and next line movement. Let C-p and C-b be | ||
| 1430 | ;; though... | ||
| 1431 | (define-key map "p" 'image-dired-dired-previous-line) | ||
| 1432 | (define-key map "n" 'image-dired-dired-next-line) | ||
| 1433 | (define-key map [up] 'image-dired-dired-previous-line) | ||
| 1434 | (define-key map [down] 'image-dired-dired-next-line) | ||
| 1435 | |||
| 1436 | (define-key map (kbd "C-S-n") 'image-dired-next-line-and-display) | ||
| 1437 | (define-key map (kbd "C-S-p") 'image-dired-previous-line-and-display) | ||
| 1438 | (define-key map (kbd "C-S-m") 'image-dired-mark-and-display-next) | ||
| 1439 | |||
| 1440 | (define-key map "\C-td" 'image-dired-display-thumbs) | ||
| 1441 | (define-key map [tab] 'image-dired-jump-thumbnail-buffer) | ||
| 1442 | (define-key map "\C-ti" 'image-dired-dired-display-image) | ||
| 1443 | (define-key map "\C-tx" 'image-dired-dired-display-external) | ||
| 1444 | (define-key map "\C-ta" 'image-dired-display-thumbs-append) | ||
| 1445 | (define-key map "\C-t." 'image-dired-display-thumb) | ||
| 1446 | (define-key map "\C-tc" 'image-dired-dired-comment-files) | ||
| 1447 | (define-key map "\C-tf" 'image-dired-mark-tagged-files) | ||
| 1448 | |||
| 1449 | ;; Menu for dired | ||
| 1450 | (easy-menu-define nil map | ||
| 1451 | "Menu for `image-dired-minor-mode'." | ||
| 1452 | '("Image-dired" | ||
| 1453 | ["Copy with EXIF file name" image-dired-copy-with-exif-file-name] | ||
| 1454 | ["Comment files" image-dired-dired-comment-files] | ||
| 1455 | ["Mark tagged files" image-dired-mark-tagged-files] | ||
| 1456 | ["Jump to thumbnail buffer" image-dired-jump-thumbnail-buffer] | ||
| 1457 | |||
| 1458 | ["Toggle movement tracking" image-dired-toggle-movement-tracking] | ||
| 1459 | ["Toggle append browsing" image-dired-toggle-append-browsing] | ||
| 1460 | ["Toggle display properties" image-dired-toggle-dired-display-properties] | ||
| 1461 | |||
| 1462 | ["Display in external viewer" image-dired-dired-display-external] | ||
| 1463 | ["Display image" image-dired-dired-display-image] | ||
| 1464 | ["Display this thumbnail" image-dired-display-thumb] | ||
| 1465 | ["Display thumbnails append" image-dired-display-thumbs-append] | ||
| 1466 | |||
| 1467 | ["Create thumbnails for marked files" image-dired-create-thumbs] | ||
| 1468 | |||
| 1469 | ["Mark and display next" image-dired-mark-and-display-next] | ||
| 1470 | ["Display thumb for previous file" image-dired-previous-line-and-display] | ||
| 1471 | ["Display thumb for next file" image-dired-next-line-and-display])) | ||
| 1472 | map) | ||
| 1473 | "Keymap for `image-dired-minor-mode'.") | ||
| 1474 | |||
| 1427 | ;;;###autoload | 1475 | ;;;###autoload |
| 1428 | (defun image-dired-setup-dired-keybindings () | 1476 | (define-minor-mode image-dired-minor-mode |
| 1429 | "Setup easy-to-use keybindings for the commands to be used in dired mode. | 1477 | "Setup easy-to-use keybindings for the commands to be used in dired mode. |
| 1430 | Note that n, p and <down> and <up> will be hijacked and bound to | 1478 | Note that n, p and <down> and <up> will be hijacked and bound to |
| 1431 | `image-dired-dired-x-line'." | 1479 | `image-dired-dired-x-line'." |
| 1432 | (interactive) | 1480 | :keymap image-dired-minor-mode-map) |
| 1433 | 1481 | ||
| 1434 | ;; Hijack previous and next line movement. Let C-p and C-b be | 1482 | ;;;###autoload |
| 1435 | ;; though... | 1483 | (define-obsolete-function-alias 'image-dired-setup-dired-keybindings 'image-dired-minor-mode |
| 1436 | 1484 | "26.1") | |
| 1437 | (define-key dired-mode-map "p" 'image-dired-dired-previous-line) | ||
| 1438 | (define-key dired-mode-map "n" 'image-dired-dired-next-line) | ||
| 1439 | (define-key dired-mode-map [up] 'image-dired-dired-previous-line) | ||
| 1440 | (define-key dired-mode-map [down] 'image-dired-dired-next-line) | ||
| 1441 | |||
| 1442 | (define-key dired-mode-map (kbd "C-S-n") 'image-dired-next-line-and-display) | ||
| 1443 | (define-key dired-mode-map (kbd "C-S-p") 'image-dired-previous-line-and-display) | ||
| 1444 | (define-key dired-mode-map (kbd "C-S-m") 'image-dired-mark-and-display-next) | ||
| 1445 | |||
| 1446 | (define-key dired-mode-map "\C-td" 'image-dired-display-thumbs) | ||
| 1447 | (define-key dired-mode-map "\C-tt" 'image-dired-tag-files) | ||
| 1448 | (define-key dired-mode-map "\C-tr" 'image-dired-delete-tag) | ||
| 1449 | (define-key dired-mode-map [tab] 'image-dired-jump-thumbnail-buffer) | ||
| 1450 | (define-key dired-mode-map "\C-ti" 'image-dired-dired-display-image) | ||
| 1451 | (define-key dired-mode-map "\C-tx" 'image-dired-dired-display-external) | ||
| 1452 | (define-key dired-mode-map "\C-ta" 'image-dired-display-thumbs-append) | ||
| 1453 | (define-key dired-mode-map "\C-t." 'image-dired-display-thumb) | ||
| 1454 | (define-key dired-mode-map "\C-tc" 'image-dired-dired-comment-files) | ||
| 1455 | (define-key dired-mode-map "\C-tf" 'image-dired-mark-tagged-files) | ||
| 1456 | |||
| 1457 | ;; Menu for dired | ||
| 1458 | (define-key dired-mode-map [menu-bar image-dired] | ||
| 1459 | (cons "Image-Dired" (make-sparse-keymap "Image-Dired"))) | ||
| 1460 | |||
| 1461 | (define-key dired-mode-map [menu-bar image-dired image-dired-copy-with-exif-file-name] | ||
| 1462 | '("Copy with EXIF file name" . image-dired-copy-with-exif-file-name)) | ||
| 1463 | |||
| 1464 | (define-key dired-mode-map [menu-bar image-dired image-dired-dired-comment-files] | ||
| 1465 | '("Comment files" . image-dired-dired-comment-files)) | ||
| 1466 | |||
| 1467 | (define-key dired-mode-map [menu-bar image-dired image-dired-mark-tagged-files] | ||
| 1468 | '("Mark tagged files" . image-dired-mark-tagged-files)) | ||
| 1469 | |||
| 1470 | (define-key dired-mode-map [menu-bar image-dired image-dired-delete-tag] | ||
| 1471 | '("Remove tag from files" . image-dired-delete-tag)) | ||
| 1472 | |||
| 1473 | (define-key dired-mode-map [menu-bar image-dired image-dired-tag-files] | ||
| 1474 | '("Tag files" . image-dired-tag-files)) | ||
| 1475 | |||
| 1476 | (define-key dired-mode-map [menu-bar image-dired image-dired-jump-thumbnail-buffer] | ||
| 1477 | '("Jump to thumbnail buffer" . image-dired-jump-thumbnail-buffer)) | ||
| 1478 | |||
| 1479 | (define-key dired-mode-map [menu-bar image-dired image-dired-toggle-movement-tracking] | ||
| 1480 | '("Toggle movement tracking" . image-dired-toggle-movement-tracking)) | ||
| 1481 | |||
| 1482 | (define-key dired-mode-map | ||
| 1483 | [menu-bar image-dired image-dired-toggle-append-browsing] | ||
| 1484 | '("Toggle append browsing" . image-dired-toggle-append-browsing)) | ||
| 1485 | |||
| 1486 | (define-key dired-mode-map | ||
| 1487 | [menu-bar image-dired image-dired-toggle-disp-props] | ||
| 1488 | '("Toggle display properties" . image-dired-toggle-dired-display-properties)) | ||
| 1489 | |||
| 1490 | (define-key dired-mode-map | ||
| 1491 | [menu-bar image-dired image-dired-dired-display-external] | ||
| 1492 | '("Display in external viewer" . image-dired-dired-display-external)) | ||
| 1493 | (define-key dired-mode-map | ||
| 1494 | [menu-bar image-dired image-dired-dired-display-image] | ||
| 1495 | '("Display image" . image-dired-dired-display-image)) | ||
| 1496 | (define-key dired-mode-map | ||
| 1497 | [menu-bar image-dired image-dired-display-thumb] | ||
| 1498 | '("Display this thumbnail" . image-dired-display-thumb)) | ||
| 1499 | (define-key dired-mode-map | ||
| 1500 | [menu-bar image-dired image-dired-display-thumbs-append] | ||
| 1501 | '("Display thumbnails append" . image-dired-display-thumbs-append)) | ||
| 1502 | (define-key dired-mode-map | ||
| 1503 | [menu-bar image-dired image-dired-display-thumbs] | ||
| 1504 | '("Display thumbnails" . image-dired-display-thumbs)) | ||
| 1505 | |||
| 1506 | (define-key dired-mode-map | ||
| 1507 | [menu-bar image-dired image-dired-create-thumbs] | ||
| 1508 | '("Create thumbnails for marked files" . image-dired-create-thumbs)) | ||
| 1509 | |||
| 1510 | (define-key dired-mode-map | ||
| 1511 | [menu-bar image-dired image-dired-mark-and-display-next] | ||
| 1512 | '("Mark and display next" . image-dired-mark-and-display-next)) | ||
| 1513 | (define-key dired-mode-map | ||
| 1514 | [menu-bar image-dired image-dired-previous-line-and-display] | ||
| 1515 | '("Display thumb for previous file" . image-dired-previous-line-and-display)) | ||
| 1516 | (define-key dired-mode-map | ||
| 1517 | [menu-bar image-dired image-dired-next-line-and-display] | ||
| 1518 | '("Display thumb for next file" . image-dired-next-line-and-display))) | ||
| 1519 | 1485 | ||
| 1520 | (declare-function clear-image-cache "image.c" (&optional filter)) | 1486 | (declare-function clear-image-cache "image.c" (&optional filter)) |
| 1521 | 1487 | ||