Mercurial > emacs
changeset 112388:e5e8faa33346
(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.
author | Ken Manheimer <ken.manheimer@gmail.com> |
---|---|
date | Thu, 20 Jan 2011 16:57:15 -0500 |
parents | ac3e3168aca2 |
children | 75fb060ecbc3 |
files | lisp/allout.el |
diffstat | 1 files changed, 16 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/allout.el Thu Jan 20 13:13:30 2011 -0500 +++ b/lisp/allout.el Thu Jan 20 16:57:15 2011 -0500 @@ -169,10 +169,11 @@ ;; 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 @@ (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.