comparison lisp/term/internal.el @ 105009:b520d55cdd72

* simple.el: Add mapping for backspace/delete/clear/tab/escape/return to function-key-map, and give them ascii-character property. * term/x-win.el (x-alternatives-map): * term/ns-win.el (ns-alternatives-map): * term/internal.el (msdos-key-remapping-map): * w32-fns.el (x-alternatives-map): Remove redundant mappings.
author Stefan Monnier <monnier@iro.umontreal.ca>
date Mon, 14 Sep 2009 01:22:42 +0000
parents 380c4c2a4fc2
children 1d1d5d9bd884
comparison
equal deleted inserted replaced
105008:b9b9c3b2718d 105009:b520d55cdd72
26 26
27 ;; --------------------------------------------------------------------------- 27 ;; ---------------------------------------------------------------------------
28 (defvar msdos-key-remapping-map 28 (defvar msdos-key-remapping-map
29 (let ((map (make-sparse-keymap))) 29 (let ((map (make-sparse-keymap)))
30 ;; keyboard setup -- that's simple! 30 ;; keyboard setup -- that's simple!
31 (define-key map [backspace] "\177") ; Normal behavior for BS
32 (define-key map [delete] "\C-d") ; ... and Delete
33 (define-key map [tab] [?\t])
34 (define-key map [linefeed] [?\n])
35 (define-key map [clear] [11])
36 (define-key map [return] [13])
37 (define-key map [escape] [?\e])
38 (define-key map [M-backspace] [?\M-\d]) 31 (define-key map [M-backspace] [?\M-\d])
39 (define-key map [M-delete] [?\M-d]) 32 (define-key map [M-delete] [?\M-d])
40 (define-key map [M-tab] [?\M-\t]) 33 (define-key map [M-tab] [?\M-\t])
41 (define-key map [M-linefeed] [?\M-\n]) 34 (define-key map [M-linefeed] [?\M-\n])
42 (define-key map [M-clear] [?\M-\013]) 35 (define-key map [M-clear] [?\M-\013])
43 (define-key map [M-return] [?\M-\015]) 36 (define-key map [M-return] [?\M-\015])
44 (define-key map [M-escape] [?\M-\e]) 37 (define-key map [M-escape] [?\M-\e])
45 map) 38 map)
46 "Keymap for remapping special keys on MS-DOS keyboard.") 39 "Keymap for remapping special keys on MS-DOS keyboard.")
47
48 ;; These tell read-char how to convert these special chars to ASCII.
49 (put 'backspace 'ascii-character 127)
50 (put 'delete 'ascii-character 127)
51 (put 'tab 'ascii-character ?\t)
52 (put 'linefeed 'ascii-character ?\n)
53 (put 'clear 'ascii-character 12)
54 (put 'return 'ascii-character 13)
55 (put 'escape 'ascii-character ?\e)
56 40
57 (defun msdos-setup-keyboard (frame) 41 (defun msdos-setup-keyboard (frame)
58 "Setup `local-function-key-map' for MS-DOS keyboard." 42 "Setup `local-function-key-map' for MS-DOS keyboard."
59 ;; Don't do this twice on the same display, or it would break 43 ;; Don't do this twice on the same display, or it would break
60 ;; normal-erase-is-backspace-mode. 44 ;; normal-erase-is-backspace-mode.