From a3f8d1b4c99028d2c2542386916964f1e6de11b1 Mon Sep 17 00:00:00 2001 From: James Nguyen Date: Wed, 3 Feb 2021 00:42:24 -0800 Subject: [PATCH] Refactor menu-items to use evil-collection-define-operator-key --- modes/elfeed/evil-collection-elfeed.el | 13 ++------- modes/eww/evil-collection-eww.el | 22 +++------------ modes/info/evil-collection-info.el | 12 ++------ modes/mu4e/evil-collection-mu4e.el | 13 +++------ modes/notmuch/evil-collection-notmuch.el | 28 ++++--------------- .../evil-collection-transmission.el | 14 ++-------- modes/vdiff/evil-collection-vdiff.el | 28 ++++++++----------- modes/w3m/evil-collection-w3m.el | 23 ++++----------- 8 files changed, 39 insertions(+), 114 deletions(-) diff --git a/modes/elfeed/evil-collection-elfeed.el b/modes/elfeed/evil-collection-elfeed.el index 4cb72a3..24df220 100644 --- a/modes/elfeed/evil-collection-elfeed.el +++ b/modes/elfeed/evil-collection-elfeed.el @@ -107,16 +107,9 @@ "ZQ" 'elfeed-kill-buffer "ZZ" 'elfeed-kill-buffer) - (evil-collection-define-key 'operator 'elfeed-show-mode-map - ;; Like `eww'. - "u" '(menu-item - "" - nil - :filter (lambda (&optional _) - (when (memq evil-this-operator - evil-collection-yank-operators) - (setq evil-inhibit-operator t) - #'elfeed-show-yank))))) + ;; yu, like `eww' + (evil-collection-define-operator-key 'yank 'elfeed-show-mode-map + "u" 'elfeed-show-yank)) (provide 'evil-collection-elfeed) ;;; evil-collection-elfeed.el ends here diff --git a/modes/eww/evil-collection-eww.el b/modes/eww/evil-collection-eww.el index 682ca95..f8f5718 100644 --- a/modes/eww/evil-collection-eww.el +++ b/modes/eww/evil-collection-eww.el @@ -89,15 +89,8 @@ "ZQ" 'quit-window "ZZ" 'quit-window) - (evil-collection-define-key 'operator 'eww-mode-map - "u" '(menu-item - "" - nil - :filter (lambda (&optional _) - (when (memq evil-this-operator - evil-collection-yank-operators) - (setq evil-inhibit-operator t) - #'eww-copy-page-url)))) + (evil-collection-define-operator-key 'yank 'eww-mode-map + "u" 'eww-copy-page-url) (evil-collection-set-readonly-bindings 'eww-history-mode-map) (evil-set-initial-state 'eww-history-mode 'normal) @@ -128,15 +121,8 @@ ;; refresh "gr" 'revert-buffer) - (evil-collection-define-key 'operator 'eww-bookmark-mode-map - "u" '(menu-item - "" - nil - :filter (lambda (&optional _) - (when (memq evil-this-operator - evil-collection-yank-operators) - (setq evil-inhibit-operator t) - #'eww-copy-page-url))))) + (evil-collection-define-operator-key 'yank 'eww-bookmark-mode-map + "u" 'eww-copy-page-url)) (provide 'evil-collection-eww) ;;; evil-collection-eww.el ends here diff --git a/modes/info/evil-collection-info.el b/modes/info/evil-collection-info.el index 4da18af..0eb8432 100644 --- a/modes/info/evil-collection-info.el +++ b/modes/info/evil-collection-info.el @@ -113,15 +113,9 @@ "0" 'evil-digit-argument-or-evil-beginning-of-line "gg" 'evil-goto-first-line) - (evil-collection-define-key 'operator 'Info-mode-map - "u" '(menu-item ; Like eww. - "" - nil - :filter (lambda (&optional _) - (when (memq evil-this-operator - evil-collection-yank-operators) - (setq evil-inhibit-operator t) - #'Info-copy-current-node-name))))) + ;; yu, Like eww. + (evil-collection-define-operator-key 'yank 'Info-mode-map + "u" 'Info-copy-current-node-name)) (provide 'evil-collection-info) ;;; evil-collection-info.el ends here diff --git a/modes/mu4e/evil-collection-mu4e.el b/modes/mu4e/evil-collection-mu4e.el index 784aa16..380a6e7 100644 --- a/modes/mu4e/evil-collection-mu4e.el +++ b/modes/mu4e/evil-collection-mu4e.el @@ -259,15 +259,10 @@ "G" 'mu4e-compose-goto-bottom) (evil-set-command-property 'mu4e-compose-goto-bottom :keep-visual t) (evil-set-command-property 'mu4e-compose-goto-top :keep-visual t) - (evil-collection-define-key 'operator 'mu4e-view-mode-map - "u" '(menu-item - "" - nil - :filter (lambda (&optional _) - (when (memq evil-this-operator - '(evil-yank evil-cp-yank evil-sp-yank lispyville-yank)) - (setq evil-inhibit-operator t) - #'mu4e-view-save-url))))) + + ;; yu + (evil-collection-define-operator-key 'mu4e-view-mode-map + "u" 'mu4e-view-save-url)) ;;; Update mu4e-main-view diff --git a/modes/notmuch/evil-collection-notmuch.el b/modes/notmuch/evil-collection-notmuch.el index 0151396..8bb7b22 100644 --- a/modes/notmuch/evil-collection-notmuch.el +++ b/modes/notmuch/evil-collection-notmuch.el @@ -227,29 +227,13 @@ "+" 'notmuch-search-add-tag (kbd "RET") 'notmuch-search-show-thread)) - (evil-collection-define-key 'operator 'notmuch-search-mode-map - ;; Like `eww'. - "s" - `(menu-item - "" - nil - :filter (lambda (&optional _) - (when (memq evil-this-operator - evil-collection-yank-operators) - (setq evil-inhibit-operator t) - #'notmuch-search-stash-map)))) + ;; ys + (evil-collection-define-operator-key 'yank 'notmuch-search-mode-map + "s" 'notmuch-search-stash-map) - (evil-collection-define-key 'operator 'notmuch-show-mode-map - ;; Like `eww'. - "s" - `(menu-item - "" - nil - :filter (lambda (&optional _) - (when (memq evil-this-operator - evil-collection-yank-operators) - (setq evil-inhibit-operator t) - #'notmuch-show-stash-map))))) + ;; ys + (evil-collection-define-operator-key 'yank 'notmuch-show-mode-map + "s" 'notmuch-show-stash-map)) (provide 'evil-collection-notmuch) ;;; evil-collection-notmuch.el ends here diff --git a/modes/transmission/evil-collection-transmission.el b/modes/transmission/evil-collection-transmission.el index dfd443c..915af76 100644 --- a/modes/transmission/evil-collection-transmission.el +++ b/modes/transmission/evil-collection-transmission.el @@ -145,17 +145,9 @@ "P" 'transmission-set-bandwidth-priority "r" 'transmission-move) - (evil-collection-define-key 'operator 'transmission-info-mode-map - ;; Like `eww'. - "u" '(menu-item - "" - nil - :filter (lambda (&optional _) - (when (memq evil-this-operator - evil-collection-yank-operators) - (setq evil-inhibit-operator t) - #'transmission-copy-magnet)))) - + ;; yu, Like `eww'. + (evil-collection-define-operator-key 'yank 'transmission-info-mode-map + "u" 'transmission-copy-magnet) (evil-collection-set-readonly-bindings 'transmission-peers-mode-map) (evil-set-initial-state 'transmission-peers-mode 'normal) diff --git a/modes/vdiff/evil-collection-vdiff.el b/modes/vdiff/evil-collection-vdiff.el index 0641fb8..8db641e 100644 --- a/modes/vdiff/evil-collection-vdiff.el +++ b/modes/vdiff/evil-collection-vdiff.el @@ -30,30 +30,24 @@ (require 'vdiff nil t) (require 'evil-collection) +(defconst evil-collection-vdiff-maps '(vdiff-mode-map + vdiff-3way-mode-map)) + ;;;###autoload (defun evil-collection-vdiff-setup () "Set up `evil' bindings for `vdiff-mode'." - (dolist (mode '(vdiff-mode vdiff-3way-mode)) - (evil-define-minor-mode-key 'normal mode + (add-hook 'vdiff-mode-hook 'evil-normalize-keymaps) + (add-hook 'vdiff-3way-mode-hook 'evil-normalize-keymaps) + + (dolist (keymap evil-collection-vdiff-maps) + (evil-collection-define-key 'normal keymap "]c" 'vdiff-next-hunk "[c" 'vdiff-previous-hunk) ;; define `do' (diff obtain) and `dp' (diff put) bindings - (evil-define-minor-mode-key 'operator mode - "o" '(menu-item - "" - nil - :filter (lambda (&optional _) - (when (memq evil-this-operator - evil-collection-delete-operators) - #'vdiff-receive-changes))) - "p" '(menu-item - "" - nil - :filter (lambda (&optional _) - (when (memq evil-this-operator - evil-collection-delete-operators) - #'vdiff-send-changes)))))) + (evil-collection-define-operator-key 'delete keymap + "o" 'vdiff-receive-changes + "p" 'vdiff-send-changes))) (provide 'evil-collection-vdiff) diff --git a/modes/w3m/evil-collection-w3m.el b/modes/w3m/evil-collection-w3m.el index afd2f87..38a5a96 100644 --- a/modes/w3m/evil-collection-w3m.el +++ b/modes/w3m/evil-collection-w3m.el @@ -77,24 +77,11 @@ "ZQ" 'w3m-quit "ZZ" 'quit-window) - (evil-collection-define-key 'operator 'w3m-mode-map - "t" '(menu-item - "" - nil - :filter (lambda (&optional _) - (when (memq evil-this-operator - evil-collection-yank-operators) - (setq evil-inhibit-operator t) - #'w3m-print-this-url)))) - (evil-collection-define-key 'operator 'w3m-mode-map - "u" '(menu-item - "" - nil - :filter (lambda (&optional _) - (when (memq evil-this-operator - evil-collection-yank-operators) - (setq evil-inhibit-operator t) - #'w3m-print-current-url))))) + (evil-collection-define-operator-key 'yank 'w3m-mode-map + ;; yt + "t" 'w3m-print-this-url + ;; yu + "u" 'w3m-print-current-url)) (provide 'evil-collection-w3m) ;;; evil-collection-w3m.el ends here