summaryrefslogtreecommitdiff
path: root/lisp/allout.el
diff options
context:
space:
mode:
authorKen Manheimer <ken.manheimer@gmail.com>2011-01-20 16:57:15 -0500
committerKen Manheimer <ken.manheimer@gmail.com>2011-01-20 16:57:15 -0500
commit642f3c5c603d61aa0b47a614981f462669eec086 (patch)
tree923d950efeb859a063f702a035330e49199196dd /lisp/allout.el
parentd3e51865cd5f7a691f8eeafa670a225efe0e7a40 (diff)
downloademacs-642f3c5c603d61aa0b47a614981f462669eec086.tar.gz
(allout-institute-keymap): Use fset instead of reapplying defalias.
(allout-hotspot-key-handler): Check for non-control-modified bindings for hotspot characters if there is no control-modified versions.
Diffstat (limited to 'lisp/allout.el')
-rw-r--r--lisp/allout.el26
1 files changed, 16 insertions, 10 deletions
diff --git a/lisp/allout.el b/lisp/allout.el
index 49a7454b1e0..0f851657fdd 100644
--- a/lisp/allout.el
+++ b/lisp/allout.el
@@ -169,10 +169,11 @@ respective allout-mode keybinding variables, `allout-command-prefix',
;; used in minor-mode-map-alist to indirect to the actual
;; allout-mode-map-var value, which can be adjusted and reassigned.
+ ;; allout-mode-map-value for keymap reference in various places:
(setq allout-mode-map-value map)
- ;; The defalias reexecution is necessary when allout-mode-map-value is
- ;; changing from nil, and it doesn't hurt to do it every time, so:
- (defalias 'allout-mode-map allout-mode-map-value))
+ ;; the function value keymap of allout-mode-map is used in
+ ;; minor-mode-map-alist - update it:
+ (fset allout-mode-map allout-mode-map-value))
;;;_ * intialize the mode map:
;; ensure that allout-mode-map has some setting even if allout-mode hasn't
;; been invoked:
@@ -3416,13 +3417,18 @@ Returns the qualifying command, if any, else nil."
(not modified)
(<= 33 key-num)
(setq mapped-binding
- ;; translate as a keybinding:
- (key-binding (vconcat allout-command-prefix
- (vector
- (if (and (<= 97 key-num) ; "a"
- (>= 122 key-num)) ; "z"
- (- key-num 96) key-num)))
- t)))
+ (or
+ ;; try control-modified versions of keys:
+ (key-binding (vconcat allout-command-prefix
+ (vector
+ (if (and (<= 97 key-num) ; "a"
+ (>= 122 key-num)) ; "z"
+ (- key-num 96) key-num)))
+ t)
+ ;; try non-modified versions of keys:
+ (key-binding (vconcat allout-command-prefix
+ (vector key-num))
+ t))))
;; Qualified as an allout command -- do hot-spot operation.
(setq allout-post-goto-bullet t)
;; accept-defaults nil, or else we get allout-item-icon-key-handler.