branch: externals/ergoemacs-mode commit cb657081b81b12d7b1a99e7f5967dd782f93ae9d Author: Walter Landry <wlan...@caltech.edu> Commit: Walter Landry <wlan...@caltech.edu>
Remove menu-filter stuff --- ergoemacs-lib.el | 95 -------------------------------------------------------- ergoemacs-map.el | 1 - 2 files changed, 96 deletions(-) diff --git a/ergoemacs-lib.el b/ergoemacs-lib.el index 2490710..c43b1eb 100644 --- a/ergoemacs-lib.el +++ b/ergoemacs-lib.el @@ -394,101 +394,6 @@ All other modes are assumed to be minor modes or unimportant. ;; Now create nested menu. `(keymap ,@ret))) -(defun ergoemacs-menu--filter-key-shortcut (cmd &optional keymap) - "Figures out ergoemacs-mode menu's preferred key-binding for CMD." - (cond - ((not cmd)) - (t - ;;; FIXME: faster startup by creating component alists - ;; SLOW: 2-seconds - (let ((key (where-is-internal cmd (or keymap ergoemacs-keymap) 'meta nil t))) - (when (memq (elt key 0) '(menu-bar remap again redo cut copy paste help open find ergoemacs-remap execute)) - (setq key nil)) - (and key (ergoemacs-key-description--menu key))) - ))) - - -(defun ergoemacs-menu--filter-key-menu-item (item &optional keymap) - "Key menu item." - (if (and (>= (safe-length item) 4) - (symbolp (car item)) - (eq (cadr item) 'menu-item) - (and (cl-caddr item) (stringp (cl-caddr item))) - (symbolp (cl-cadddr item)) - (not (ergoemacs-keymapp (cl-cadddr item)))) - ;; Look if this item already has a :keys property - (if (catch 'found-keys - (dolist (i item) - (when (eq i :keys) - (throw 'found-keys t))) nil) nil - (ergoemacs-menu--filter-key-shortcut (cl-cadddr item) keymap)) - nil)) - -;;;###autoload -(defun ergoemacs-menu--filter (menu &optional fn keymap) - "Put `ergoemacs-mode' key bindings on menus." - (let ((menu (or (and (not fn) menu) - (funcall fn menu))) - tmp tmp2) - ;; (when fn - ;; (message "%s:\n\t%s" fn menu)) - (if (not (ergoemacs-keymapp menu) ) - (progn - (when menu - (message "Invalid menu in ergoemacs-menu--filter %s" menu)) - menu) - (when (symbolp menu) - (setq menu (ergoemacs-sv menu))) - ;; For each element in the menu - (ergoemacs-setcdr - menu - (mapcar - (lambda (item) - (let (key) - (cond - ;; ((ergoemacs-keymapp item) - ;; (ergoemacs-menu--filter item) - ;; (message "1:%s..." (substring (format "%s" item) 0 (min (length (format "%s" item)) 60))) - ;; item) - ((and (ergoemacs-keymapp keymap) (ergoemacs-keymapp (cdr (cdr item)))) - ;; JIT processing - `(,(nth 0 item) menu-item ,(nth 1 item) ,(cdr (cdr item)) - :filter (lambda(bind) (ergoemacs-menu--filter bind nil ',keymap)))) - ((ergoemacs-keymapp (cdr (cdr item))) - ;; JIT processing - `(,(nth 0 item) menu-item ,(nth 1 item) ,(cdr (cdr item)) - :filter ergoemacs-menu--filter)) - ((ergoemacs-keymapp (car (cdr (cdr (cdr item))))) - ;; (message "3:%s..." (substring (format "%s" item) 0 (min (length (format "%s" item)) 60))) - (if (setq tmp (plist-get item :filter)) - (mapcar - (lambda(elt) - (cond - ((eq elt :filter) - (setq tmp2 t) - :filter) - ((not tmp2) - elt) - ((eq elt 'ergoemacs-menu--filter) - (setq tmp2 nil) - 'ergoemacs-menu--filter) - ((ignore-errors - (and (consp elt) - (eq (nth 0 elt) 'lambda) - (eq (nth 0 (nth 2 elt)) 'ergoemacs-menu--filter))) - (setq tmp2 nil) - elt) - (t - (setq tmp2 nil) - `(lambda(bind) (ergoemacs-menu--filter bind ',tmp ',keymap))))) - item) - `(,@item :filter ergoemacs-menu--filter))) - ((setq key (ergoemacs-menu--filter-key-menu-item item keymap)) - (append item (cons :keys (cons key nil)))) - (t item)))) - (cdr menu)))) - menu)) - ;;;###autoload (defun ergoemacs-gen-ahk (&optional all) "Generates autohotkey for all layouts and themes" diff --git a/ergoemacs-map.el b/ergoemacs-map.el index afcc344..5c031f0 100644 --- a/ergoemacs-map.el +++ b/ergoemacs-map.el @@ -62,7 +62,6 @@ (declare-function ergoemacs-timing-- "ergoemacs-mode") -(declare-function ergoemacs-menu--filter "ergoemacs-lib") (declare-function ergoemacs-warn "ergoemacs-lib") (declare-function ergoemacs-setcdr "ergoemacs-lib")