emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] 220/287: Partial Fix for Issue #243


From: Matthew Fidler
Subject: [elpa] 220/287: Partial Fix for Issue #243
Date: Wed, 02 Jul 2014 14:46:09 +0000

mlf176f2 pushed a commit to branch externals/ergoemacs-mode
in repository elpa.

commit cfc1c4884dbec6e894212598a71c2a826ddf7ae3
Author: Matthew L. Fidler <address@hidden>
Date:   Thu Jun 26 08:10:50 2014 -0500

    Partial Fix for Issue #243
---
 ergoemacs-shortcuts.el |   21 ++++++++++++++-------
 1 files changed, 14 insertions(+), 7 deletions(-)

diff --git a/ergoemacs-shortcuts.el b/ergoemacs-shortcuts.el
index 5646bef..21036aa 100644
--- a/ergoemacs-shortcuts.el
+++ b/ergoemacs-shortcuts.el
@@ -1185,13 +1185,20 @@ argument prompt.
                         (setq ergoemacs-deactivate-mark deactivate-mark)
                         (cond
                          ((eq local-fn 'keymap)
-                          (when real-read
-                            (push (list type
-                                        (listify-key-sequence key))
-                                  history))
-                          (setq continue-read t
-                                key key-trial
-                                pretty-key pretty-key-trial)
+                          ;; Test to see if major/minor modes have an
+                          ;; override for this keymap, see Issue 243.
+                          (let ((new-fn (and key 
(ergoemacs-with-major-and-minor-modes (ergoemacs-real-key-binding key-trial)))))
+                            (if (ignore-errors (commandp new-fn t))
+                                (progn
+                                  (setq local-fn 'major-minor-override-fn)
+                                  (ergoemacs-read-key-call new-fn nil key))
+                              (when real-read
+                                (push (list type
+                                            (listify-key-sequence key))
+                                      history))
+                              (setq continue-read t
+                                    key key-trial
+                                    pretty-key pretty-key-trial)))
                           ;; Found, exit
                           (throw 'ergoemacs-key-trials t))
                          ((eq (type-of local-fn) 'cons)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]