aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard M. Stallman1995-11-10 17:29:36 +0000
committerRichard M. Stallman1995-11-10 17:29:36 +0000
commitb46324e6b307d8cdde12adc9d15c97e5136da9a2 (patch)
tree962ff5de7c6323fab80cb860dd8fe73303b9fd49
parent452e90900aca6247493d1a5c8a63fa330d5df81a (diff)
downloademacs-b46324e6b307d8cdde12adc9d15c97e5136da9a2.tar.gz
emacs-b46324e6b307d8cdde12adc9d15c97e5136da9a2.zip
(tmm-define-keys): New subroutine.
(tmm-add-prompt): Use that to define keys in both maps separately. Use f10 as well as M-`.
-rw-r--r--lisp/tmm.el31
1 files changed, 18 insertions, 13 deletions
diff --git a/lisp/tmm.el b/lisp/tmm.el
index 0fd405d0de7..0a1ee8878ea 100644
--- a/lisp/tmm.el
+++ b/lisp/tmm.el
@@ -43,6 +43,7 @@
43(defvar tmm-table-undef) 43(defvar tmm-table-undef)
44 44
45;;;###autoload (define-key global-map "\M-`" 'tmm-menubar) 45;;;###autoload (define-key global-map "\M-`" 'tmm-menubar)
46;;;###autoload (define-key global-map [f10] 'tmm-menubar)
46 47
47;;;###autoload 48;;;###autoload
48(defun tmm-menubar () 49(defun tmm-menubar ()
@@ -176,23 +177,26 @@ Stores a list of all the shortcuts in the free variable `tmm-short-cuts'."
176 (cons (concat f tmm-mid-prompt str) (cdr elt))))) 177 (cons (concat f tmm-mid-prompt str) (cdr elt)))))
177 (reverse list)))) 178 (reverse list))))
178 179
180(defun tmm-define-keys ()
181 (mapcar (lambda (str)
182 (define-key (current-local-map) str 'tmm-shortcut)
183 (define-key (current-local-map) (downcase str) 'tmm-shortcut))
184 tmm-short-cuts)
185 (define-key (current-local-map) [pageup] 'tmm-goto-completions)
186 (define-key (current-local-map) [prior] 'tmm-goto-completions)
187 (define-key (current-local-map) "\ev" 'tmm-goto-completions)
188 (define-key (current-local-map) "\e\e" 'abort-recursive-edit)
189 (define-key (current-local-map) "\C-n" 'next-history-element)
190 (define-key (current-local-map) "\C-p" 'previous-history-element))
191
179(defun tmm-add-prompt () 192(defun tmm-add-prompt ()
180 (remove-hook 'minibuffer-setup-hook 'tmm-add-prompt) 193 (remove-hook 'minibuffer-setup-hook 'tmm-add-prompt)
181 (make-local-hook 'minibuffer-exit-hook) 194 (make-local-hook 'minibuffer-exit-hook)
182 (add-hook 'minibuffer-exit-hook 'tmm-delete-map nil t) 195 (add-hook 'minibuffer-exit-hook 'tmm-delete-map nil t)
183 (let ((map (make-sparse-keymap)) (win (selected-window))) 196 (let ((win (selected-window)))
184 (mapcar (lambda (str)
185 (define-key map str 'tmm-shortcut)
186 (define-key map (downcase str) 'tmm-shortcut))
187 tmm-short-cuts)
188 (setq tmm-old-mb-map (current-local-map)) 197 (setq tmm-old-mb-map (current-local-map))
189 (use-local-map (append map (cdr tmm-old-mb-map))) 198 (use-local-map (append (make-sparse-keymap) tmm-old-mb-map))
190 (define-key (current-local-map) [pageup] 'tmm-goto-completions) 199 (tmm-define-keys)
191 (define-key (current-local-map) [prior] 'tmm-goto-completions)
192 (define-key (current-local-map) "\ev" 'tmm-goto-completions)
193 (define-key (current-local-map) "\e\e" 'abort-recursive-edit)
194 (define-key (current-local-map) "\C-n" 'next-history-element)
195 (define-key (current-local-map) "\C-p" 'previous-history-element)
196 ;; Get window and hide it for electric mode to get correct size 200 ;; Get window and hide it for electric mode to get correct size
197 (save-window-excursion 201 (save-window-excursion
198 (let ((completions 202 (let ((completions
@@ -208,7 +212,8 @@ Stores a list of all the shortcuts in the free variable `tmm-short-cuts'."
208 ; not work in minibuffer 212 ; not work in minibuffer
209 (set-buffer (window-buffer (Electric-pop-up-window "*Completions*"))) 213 (set-buffer (window-buffer (Electric-pop-up-window "*Completions*")))
210 (setq tmm-old-comp-map (current-local-map)) 214 (setq tmm-old-comp-map (current-local-map))
211 (use-local-map (append map (cdr tmm-old-comp-map))) 215 (use-local-map (append (make-sparse-keymap) tmm-old-comp-map))
216 (tmm-define-keys)
212 (select-window win) ; Cannot use 217 (select-window win) ; Cannot use
213 ; save-window-excursion, since 218 ; save-window-excursion, since
214 ; it restores the size 219 ; it restores the size