diff options
| author | Dan Nicolaescu | 2005-05-01 16:37:19 +0000 |
|---|---|---|
| committer | Dan Nicolaescu | 2005-05-01 16:37:19 +0000 |
| commit | 656c316dbb494774b9e26f07d895c4ec1f984d56 (patch) | |
| tree | 5ca415cf283b576341350f552727f461eb2c634a /lisp | |
| parent | 7c5b95c9e8396be0350fecab9b1e21ccbfdf6672 (diff) | |
| download | emacs-656c316dbb494774b9e26f07d895c4ec1f984d56.tar.gz emacs-656c316dbb494774b9e26f07d895c4ec1f984d56.zip | |
(function-key-map): Call substitute-key-definition
before the keymap size keymap is increased by a lot of define-key
calls.
Diffstat (limited to 'lisp')
| -rw-r--r-- | lisp/ChangeLog | 6 | ||||
| -rw-r--r-- | lisp/term/xterm.el | 120 |
2 files changed, 66 insertions, 60 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index dd49c2d5e14..e3c7ba0247f 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,9 @@ | |||
| 1 | 2005-05-01 Dan Nicolaescu <dann@ics.uci.edu> | ||
| 2 | |||
| 3 | * term/xterm.el (function-key-map): Call substitute-key-definition | ||
| 4 | before the keymap size keymap is increased by a lot of define-key | ||
| 5 | calls. | ||
| 6 | |||
| 1 | 2005-05-01 Richard M. Stallman <rms@gnu.org> | 7 | 2005-05-01 Richard M. Stallman <rms@gnu.org> |
| 2 | 8 | ||
| 3 | * subr.el (add-to-invisibility-spec, remove-from-invisibility-spec): | 9 | * subr.el (add-to-invisibility-spec, remove-from-invisibility-spec): |
diff --git a/lisp/term/xterm.el b/lisp/term/xterm.el index 389611c0a49..d4fe99f1f6a 100644 --- a/lisp/term/xterm.el +++ b/lisp/term/xterm.el | |||
| @@ -26,6 +26,66 @@ | |||
| 26 | 26 | ||
| 27 | ;;; Code: | 27 | ;;; Code: |
| 28 | 28 | ||
| 29 | ;;; The terminal intialization C code file might have initialized | ||
| 30 | ;;; function keys F13->F60 from the termcap/terminfo information. On | ||
| 31 | ;;; a PC-style keyboard these keys correspond to | ||
| 32 | ;;; MODIFIER-FUNCTION_KEY, where modifier is S-, C, A-, C-S-. The | ||
| 33 | ;;; code here subsitutes the corresponding defintions in | ||
| 34 | ;;; function-key-map. This substitution is needed because if a key | ||
| 35 | ;;; definition if found in function-key-map, there are no further | ||
| 36 | ;;; lookups in other keymaps. | ||
| 37 | (substitute-key-definition [f13] [S-f1] function-key-map) | ||
| 38 | (substitute-key-definition [f14] [S-f2] function-key-map) | ||
| 39 | (substitute-key-definition [f15] [S-f3] function-key-map) | ||
| 40 | (substitute-key-definition [f16] [S-f4] function-key-map) | ||
| 41 | (substitute-key-definition [f17] [S-f5] function-key-map) | ||
| 42 | (substitute-key-definition [f18] [S-f6] function-key-map) | ||
| 43 | (substitute-key-definition [f19] [S-f7] function-key-map) | ||
| 44 | (substitute-key-definition [f20] [S-f8] function-key-map) | ||
| 45 | (substitute-key-definition [f21] [S-f9] function-key-map) | ||
| 46 | (substitute-key-definition [f22] [S-f10] function-key-map) | ||
| 47 | (substitute-key-definition [f23] [S-f11] function-key-map) | ||
| 48 | (substitute-key-definition [f24] [S-f12] function-key-map) | ||
| 49 | |||
| 50 | (substitute-key-definition [f25] [C-f1] function-key-map) | ||
| 51 | (substitute-key-definition [f26] [C-f2] function-key-map) | ||
| 52 | (substitute-key-definition [f27] [C-f3] function-key-map) | ||
| 53 | (substitute-key-definition [f28] [C-f4] function-key-map) | ||
| 54 | (substitute-key-definition [f29] [C-f5] function-key-map) | ||
| 55 | (substitute-key-definition [f30] [C-f6] function-key-map) | ||
| 56 | (substitute-key-definition [f31] [C-f7] function-key-map) | ||
| 57 | (substitute-key-definition [f32] [C-f8] function-key-map) | ||
| 58 | (substitute-key-definition [f33] [C-f9] function-key-map) | ||
| 59 | (substitute-key-definition [f34] [C-f10] function-key-map) | ||
| 60 | (substitute-key-definition [f35] [C-f11] function-key-map) | ||
| 61 | (substitute-key-definition [f36] [C-f12] function-key-map) | ||
| 62 | |||
| 63 | (substitute-key-definition [f37] [C-S-f1] function-key-map) | ||
| 64 | (substitute-key-definition [f38] [C-S-f2] function-key-map) | ||
| 65 | (substitute-key-definition [f39] [C-S-f3] function-key-map) | ||
| 66 | (substitute-key-definition [f40] [C-S-f4] function-key-map) | ||
| 67 | (substitute-key-definition [f41] [C-S-f5] function-key-map) | ||
| 68 | (substitute-key-definition [f42] [C-S-f6] function-key-map) | ||
| 69 | (substitute-key-definition [f43] [C-S-f7] function-key-map) | ||
| 70 | (substitute-key-definition [f44] [C-S-f8] function-key-map) | ||
| 71 | (substitute-key-definition [f45] [C-S-f9] function-key-map) | ||
| 72 | (substitute-key-definition [f46] [C-S-f10] function-key-map) | ||
| 73 | (substitute-key-definition [f47] [C-S-f11] function-key-map) | ||
| 74 | (substitute-key-definition [f48] [C-S-f12] function-key-map) | ||
| 75 | |||
| 76 | (substitute-key-definition [f49] [A-f1] function-key-map) | ||
| 77 | (substitute-key-definition [f50] [A-f2] function-key-map) | ||
| 78 | (substitute-key-definition [f51] [A-f3] function-key-map) | ||
| 79 | (substitute-key-definition [f52] [A-f4] function-key-map) | ||
| 80 | (substitute-key-definition [f53] [A-f5] function-key-map) | ||
| 81 | (substitute-key-definition [f54] [A-f6] function-key-map) | ||
| 82 | (substitute-key-definition [f55] [A-f7] function-key-map) | ||
| 83 | (substitute-key-definition [f56] [A-f8] function-key-map) | ||
| 84 | (substitute-key-definition [f57] [A-f9] function-key-map) | ||
| 85 | (substitute-key-definition [f58] [A-f10] function-key-map) | ||
| 86 | (substitute-key-definition [f59] [A-f11] function-key-map) | ||
| 87 | (substitute-key-definition [f60] [A-f12] function-key-map) | ||
| 88 | |||
| 29 | (let ((map (make-sparse-keymap))) | 89 | (let ((map (make-sparse-keymap))) |
| 30 | (define-key map "\e[A" [up]) | 90 | (define-key map "\e[A" [up]) |
| 31 | (define-key map "\e[B" [down]) | 91 | (define-key map "\e[B" [down]) |
| @@ -183,66 +243,6 @@ | |||
| 183 | (set-keymap-parent map (keymap-parent function-key-map)) | 243 | (set-keymap-parent map (keymap-parent function-key-map)) |
| 184 | (set-keymap-parent function-key-map map)) | 244 | (set-keymap-parent function-key-map map)) |
| 185 | 245 | ||
| 186 | ;;; The terminal intialization C code file might have initialized | ||
| 187 | ;;; function keys F13->F60 from the termcap/terminfo information. On | ||
| 188 | ;;; a PC-style keyboard these keys correspond to | ||
| 189 | ;;; MODIFIER-FUNCTION_KEY, where modifier is S-, C, A-, C-S-. The | ||
| 190 | ;;; code here subsitutes the corresponding defintions in | ||
| 191 | ;;; function-key-map. This substitution is needed because if a key | ||
| 192 | ;;; definition if found in function-key-map, there are no further | ||
| 193 | ;;; lookups in other keymaps. | ||
| 194 | (substitute-key-definition [f13] [S-f1] function-key-map) | ||
| 195 | (substitute-key-definition [f14] [S-f2] function-key-map) | ||
| 196 | (substitute-key-definition [f15] [S-f3] function-key-map) | ||
| 197 | (substitute-key-definition [f16] [S-f4] function-key-map) | ||
| 198 | (substitute-key-definition [f17] [S-f5] function-key-map) | ||
| 199 | (substitute-key-definition [f18] [S-f6] function-key-map) | ||
| 200 | (substitute-key-definition [f19] [S-f7] function-key-map) | ||
| 201 | (substitute-key-definition [f20] [S-f8] function-key-map) | ||
| 202 | (substitute-key-definition [f21] [S-f9] function-key-map) | ||
| 203 | (substitute-key-definition [f22] [S-f10] function-key-map) | ||
| 204 | (substitute-key-definition [f23] [S-f11] function-key-map) | ||
| 205 | (substitute-key-definition [f24] [S-f12] function-key-map) | ||
| 206 | |||
| 207 | (substitute-key-definition [f25] [C-f1] function-key-map) | ||
| 208 | (substitute-key-definition [f26] [C-f2] function-key-map) | ||
| 209 | (substitute-key-definition [f27] [C-f3] function-key-map) | ||
| 210 | (substitute-key-definition [f28] [C-f4] function-key-map) | ||
| 211 | (substitute-key-definition [f29] [C-f5] function-key-map) | ||
| 212 | (substitute-key-definition [f30] [C-f6] function-key-map) | ||
| 213 | (substitute-key-definition [f31] [C-f7] function-key-map) | ||
| 214 | (substitute-key-definition [f32] [C-f8] function-key-map) | ||
| 215 | (substitute-key-definition [f33] [C-f9] function-key-map) | ||
| 216 | (substitute-key-definition [f34] [C-f10] function-key-map) | ||
| 217 | (substitute-key-definition [f35] [C-f11] function-key-map) | ||
| 218 | (substitute-key-definition [f36] [C-f12] function-key-map) | ||
| 219 | |||
| 220 | (substitute-key-definition [f37] [C-S-f1] function-key-map) | ||
| 221 | (substitute-key-definition [f38] [C-S-f2] function-key-map) | ||
| 222 | (substitute-key-definition [f39] [C-S-f3] function-key-map) | ||
| 223 | (substitute-key-definition [f40] [C-S-f4] function-key-map) | ||
| 224 | (substitute-key-definition [f41] [C-S-f5] function-key-map) | ||
| 225 | (substitute-key-definition [f42] [C-S-f6] function-key-map) | ||
| 226 | (substitute-key-definition [f43] [C-S-f7] function-key-map) | ||
| 227 | (substitute-key-definition [f44] [C-S-f8] function-key-map) | ||
| 228 | (substitute-key-definition [f45] [C-S-f9] function-key-map) | ||
| 229 | (substitute-key-definition [f46] [C-S-f10] function-key-map) | ||
| 230 | (substitute-key-definition [f47] [C-S-f11] function-key-map) | ||
| 231 | (substitute-key-definition [f48] [C-S-f12] function-key-map) | ||
| 232 | |||
| 233 | (substitute-key-definition [f49] [A-f1] function-key-map) | ||
| 234 | (substitute-key-definition [f50] [A-f2] function-key-map) | ||
| 235 | (substitute-key-definition [f51] [A-f3] function-key-map) | ||
| 236 | (substitute-key-definition [f52] [A-f4] function-key-map) | ||
| 237 | (substitute-key-definition [f53] [A-f5] function-key-map) | ||
| 238 | (substitute-key-definition [f54] [A-f6] function-key-map) | ||
| 239 | (substitute-key-definition [f55] [A-f7] function-key-map) | ||
| 240 | (substitute-key-definition [f56] [A-f8] function-key-map) | ||
| 241 | (substitute-key-definition [f57] [A-f9] function-key-map) | ||
| 242 | (substitute-key-definition [f58] [A-f10] function-key-map) | ||
| 243 | (substitute-key-definition [f59] [A-f11] function-key-map) | ||
| 244 | (substitute-key-definition [f60] [A-f12] function-key-map) | ||
| 245 | |||
| 246 | ;; Set up colors, for those versions of xterm that support it. | 246 | ;; Set up colors, for those versions of xterm that support it. |
| 247 | (defvar xterm-standard-colors | 247 | (defvar xterm-standard-colors |
| 248 | ;; The names in the comments taken from XTerm-col.ad in the xterm | 248 | ;; The names in the comments taken from XTerm-col.ad in the xterm |