;; Map certain keypad keys into ASCII characters
;; that people usually expect.
-(define-key function-key-map [backspace] [?\d])
-(define-key function-key-map [delete] [?\d])
-(define-key function-key-map [tab] [?\t])
-(define-key function-key-map [linefeed] [?\n])
-(define-key function-key-map [clear] [?\C-l])
-(define-key function-key-map [return] [?\C-m])
-(define-key function-key-map [escape] [?\e])
-(define-key function-key-map [M-backspace] [?\M-\d])
-(define-key function-key-map [M-delete] [?\M-\d])
-(define-key function-key-map [M-tab] [?\M-\t])
-(define-key function-key-map [M-linefeed] [?\M-\n])
-(define-key function-key-map [M-clear] [?\M-\C-l])
-(define-key function-key-map [M-return] [?\M-\C-m])
-(define-key function-key-map [M-escape] [?\M-\e])
+(let ((m (terminal-local-value 'function-key-map nil)))
+ (define-key m [backspace] [?\d])
+ (define-key m [delete] [?\d])
+ (define-key m [tab] [?\t])
+ (define-key m [linefeed] [?\n])
+ (define-key m [clear] [?\C-l])
+ (define-key m [return] [?\C-m])
+ (define-key m [escape] [?\e])
+ (define-key m [M-backspace] [?\M-\d])
+ (define-key m [M-delete] [?\M-\d])
+ (define-key m [M-tab] [?\M-\t])
+ (define-key m [M-linefeed] [?\M-\n])
+ (define-key m [M-clear] [?\M-\C-l])
+ (define-key m [M-return] [?\M-\C-m])
+ (define-key m [M-escape] [?\M-\e]))
;; These tell read-char how to convert
;; these special chars to ASCII.
(set-keyboard-coding-system (or coding-system 'mac-roman))
;; MacJapanese maps reverse solidus to ?\x80.
(if (eq coding-system 'japanese-shift-jis)
- (define-key key-translation-map [?\x80] "\\"))))
+ (define-key global-key-translation-map [?\x80] "\\"))))
(define-key special-event-map [language-change] 'mac-handle-language-change)
\f