[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] 53/117: Don't error on invalid menu.
From: |
Matthew Fidler |
Subject: |
[elpa] 53/117: Don't error on invalid menu. |
Date: |
Fri, 25 Jul 2014 13:24:12 +0000 |
mlf176f2 pushed a commit to branch externals/ergoemacs-mode
in repository elpa.
commit 126355ce330eed7614216d0e0bdabbde3203a38e
Author: Matthew L. Fidler <address@hidden>
Date: Thu Jul 17 13:54:27 2014 -0500
Don't error on invalid menu.
---
ergoemacs-menus.el | 47 +++++++++++++++++++++++------------------------
1 files changed, 23 insertions(+), 24 deletions(-)
diff --git a/ergoemacs-menus.el b/ergoemacs-menus.el
index 117cec6..a3f9e3f 100644
--- a/ergoemacs-menus.el
+++ b/ergoemacs-menus.el
@@ -63,31 +63,30 @@
nil))
(defun ergoemacs-preprocess-menu-keybindings (menu)
- (unless (keymapp menu)
- (error "Invalid menu in ergoemacs-preprocess-menu-keybindings %s" menu))
-
- (when (symbolp menu)
- (setq menu (symbol-value menu)))
-
- ;; For each element in the menu
- (setcdr menu
- (mapcar (lambda (item)
- (let ((key (ergoemacs-shortcut-for-menu-item item)))
- (if key
- (append item (cons :keys (cons key nil)))
- item)))
- (cdr menu)))
-
- ;; Recurse sub menu items
- (dolist (x (cdr menu))
- (when (and (consp x)
- (consp (cdr x))
- (consp (cdr (cdr x)))
- (consp (cdr (cdr (cdr x))))
- (eq (car (cdr x)) 'menu-item)
- (keymapp (car (cdr (cdr (cdr x))))))
+ (if (not (ignore-errors (keymapp menu)))
+ (progn
+ (message "Invalid menu in ergoemacs-preprocess-menu-keybindings %s"
menu)
+ menu)
+ (when (symbolp menu)
+ (setq menu (symbol-value menu)))
+ ;; For each element in the menu
+ (setcdr menu
+ (mapcar (lambda (item)
+ (let ((key (ergoemacs-shortcut-for-menu-item item)))
+ (if key
+ (append item (cons :keys (cons key nil)))
+ item)))
+ (cdr menu)))
+ ;; Recurse sub menu items
+ (dolist (x (cdr menu))
+ (when (and (consp x)
+ (consp (cdr x))
+ (consp (cdr (cdr x)))
+ (consp (cdr (cdr (cdr x))))
+ (eq (car (cdr x)) 'menu-item)
+ (keymapp (car (cdr (cdr (cdr x))))))
;(message "Submenu: %s" (car (cdr (cdr
x))))
- (ergoemacs-preprocess-menu-keybindings (car (cdr (cdr (cdr x))))))))
+ (ergoemacs-preprocess-menu-keybindings (car (cdr (cdr (cdr x)))))))))
(defvar ergoemacs-handle-ctl-c-or-ctl-x)
(defvar ergoemacs-no-shortcut-keys)
- [elpa] 48/117: Add support for dired+ prefixes, (continued)
- [elpa] 48/117: Add support for dired+ prefixes, Matthew Fidler, 2014/07/25
- [elpa] 47/117: theme component support for if/dolist/mapc/mapcar/when, Matthew Fidler, 2014/07/25
- [elpa] 49/117: Merge branch 'master' of github.com:ergoemacs/ergoemacs-mode, Matthew Fidler, 2014/07/25
- [elpa] 43/117: Setup local overrides outside of minibuffers and overriding keymaps, Matthew Fidler, 2014/07/25
- [elpa] 52/117: Take out org-italic, Matthew Fidler, 2014/07/25
- [elpa] 51/117: Fix F8 map, Matthew Fidler, 2014/07/25
- [elpa] 50/117: Add lookup of C-g to ergoemacs-keyboard-quit, Matthew Fidler, 2014/07/25
- [elpa] 55/117: Bug fix for ergoemacs-keyboard-quit, Matthew Fidler, 2014/07/25
- [elpa] 56/117: Add ability to "flatten" a composed keymap; Flatten maps that are always modified, Matthew Fidler, 2014/07/25
- [elpa] 58/117: Remove ergoemacs-read-modal-keymap function, Matthew Fidler, 2014/07/25
- [elpa] 53/117: Don't error on invalid menu.,
Matthew Fidler <=
- [elpa] 46/117: Install ergoemacs-read-default for every major mode, Matthew Fidler, 2014/07/25
- [elpa] 54/117: Fix menu keybinding preprocessing, Matthew Fidler, 2014/07/25
- [elpa] 57/117: Add first keyword, and use in minibuffer-setup-hook, Matthew Fidler, 2014/07/25
- [elpa] 60/117: Fix byte-compile warning, Matthew Fidler, 2014/07/25
- [elpa] 62/117: Update ergoemacs-mode-line custom description, Matthew Fidler, 2014/07/25
- [elpa] 61/117: Set ergoemacs-mode-line default to t, Matthew Fidler, 2014/07/25
- [elpa] 63/117: Attempt to fix Issue #278, Matthew Fidler, 2014/07/25
- [elpa] 67/117: Fix Issue #278, Matthew Fidler, 2014/07/25
- [elpa] 59/117: Add ergoemacs-mode-line option, Matthew Fidler, 2014/07/25
- [elpa] 64/117: Add run-hook property, Matthew Fidler, 2014/07/25