diff options
| author | Richard M. Stallman | 1994-12-15 02:06:45 +0000 |
|---|---|---|
| committer | Richard M. Stallman | 1994-12-15 02:06:45 +0000 |
| commit | ec121badadd3a23a0ac38797047f4eaab94c7a2e (patch) | |
| tree | fa66f512bdecb22bfedc70c102055fe154d30fac | |
| parent | 1c6c6fde92555a8a927d65defccab5f21998bdf1 (diff) | |
| download | emacs-ec121badadd3a23a0ac38797047f4eaab94c7a2e.tar.gz emacs-ec121badadd3a23a0ac38797047f4eaab94c7a2e.zip | |
(isearch-mode-map): Move the code to set up the meta submap earlier in
the expression.
| -rw-r--r-- | lisp/isearch.el | 25 |
1 files changed, 14 insertions, 11 deletions
diff --git a/lisp/isearch.el b/lisp/isearch.el index 8e945312ef1..3e8b79d084a 100644 --- a/lisp/isearch.el +++ b/lisp/isearch.el | |||
| @@ -4,7 +4,7 @@ | |||
| 4 | 4 | ||
| 5 | ;; Author: Daniel LaLiberte <liberte@cs.uiuc.edu> | 5 | ;; Author: Daniel LaLiberte <liberte@cs.uiuc.edu> |
| 6 | 6 | ||
| 7 | ;; |$Date: 94/11/15 19:41:36 $|$Revision: 1.78 $ | 7 | ;; |$Date: 1994/12/05 19:34:52 $|$Revision: 1.79 $ |
| 8 | 8 | ||
| 9 | ;; This file is part of GNU Emacs. | 9 | ;; This file is part of GNU Emacs. |
| 10 | 10 | ||
| @@ -204,11 +204,24 @@ Default value, nil, means edit the string instead.") | |||
| 204 | (define-key map (vector i) 'isearch-printing-char) | 204 | (define-key map (vector i) 'isearch-printing-char) |
| 205 | (setq i (1+ i))) | 205 | (setq i (1+ i))) |
| 206 | 206 | ||
| 207 | ;; To handle local bindings with meta char prefix keys, define | ||
| 208 | ;; another full keymap. This must be done for any other prefix | ||
| 209 | ;; keys as well, one full keymap per char of the prefix key. It | ||
| 210 | ;; would be simpler to disable the global keymap, and/or have a | ||
| 211 | ;; default local key binding for any key not otherwise bound. | ||
| 212 | (let ((meta-map (make-sparse-keymap))) | ||
| 213 | (define-key map (char-to-string meta-prefix-char) meta-map) | ||
| 214 | (define-key map [escape] meta-map)) | ||
| 215 | (define-key map (vector meta-prefix-char t) 'isearch-other-meta-char) | ||
| 216 | |||
| 207 | ;; Several non-printing chars change the searching behavior. | 217 | ;; Several non-printing chars change the searching behavior. |
| 208 | (define-key map "\C-s" 'isearch-repeat-forward) | 218 | (define-key map "\C-s" 'isearch-repeat-forward) |
| 209 | (define-key map "\C-r" 'isearch-repeat-backward) | 219 | (define-key map "\C-r" 'isearch-repeat-backward) |
| 210 | (define-key map "\177" 'isearch-delete-char) | 220 | (define-key map "\177" 'isearch-delete-char) |
| 211 | (define-key map "\C-g" 'isearch-abort) | 221 | (define-key map "\C-g" 'isearch-abort) |
| 222 | ;; This assumes \e is the meta-prefix-char. | ||
| 223 | (or (= ?\e meta-prefix-char) | ||
| 224 | (error "Inconsistency in isearch.el")) | ||
| 212 | (define-key map "\e\e\e" 'isearch-cancel) | 225 | (define-key map "\e\e\e" 'isearch-cancel) |
| 213 | (define-key map [escape escape escape] 'isearch-cancel) | 226 | (define-key map [escape escape escape] 'isearch-cancel) |
| 214 | 227 | ||
| @@ -263,16 +276,6 @@ Default value, nil, means edit the string instead.") | |||
| 263 | ;;; ;; Instead bind C-h to special help command for isearch-mode. | 276 | ;;; ;; Instead bind C-h to special help command for isearch-mode. |
| 264 | ;;; (define-key map "\C-h" 'isearch-mode-help) | 277 | ;;; (define-key map "\C-h" 'isearch-mode-help) |
| 265 | 278 | ||
| 266 | ;; To handle local bindings with meta char prefix keys, define | ||
| 267 | ;; another full keymap. This must be done for any other prefix | ||
| 268 | ;; keys as well, one full keymap per char of the prefix key. It | ||
| 269 | ;; would be simpler to disable the global keymap, and/or have a | ||
| 270 | ;; default local key binding for any key not otherwise bound. | ||
| 271 | (let ((meta-map (make-sparse-keymap))) | ||
| 272 | (define-key map (char-to-string meta-prefix-char) meta-map) | ||
| 273 | (define-key map [escape] meta-map)) | ||
| 274 | (define-key map (vector meta-prefix-char t) 'isearch-other-meta-char) | ||
| 275 | |||
| 276 | (define-key map "\M-n" 'isearch-ring-advance) | 279 | (define-key map "\M-n" 'isearch-ring-advance) |
| 277 | (define-key map "\M-p" 'isearch-ring-retreat) | 280 | (define-key map "\M-p" 'isearch-ring-retreat) |
| 278 | (define-key map "\M-y" 'isearch-yank-kill) | 281 | (define-key map "\M-y" 'isearch-yank-kill) |