summaryrefslogtreecommitdiff
path: root/lisp/simple.el
diff options
context:
space:
mode:
authorKaroly Lorentey <lorentey@elte.hu>2005-10-29 11:50:12 +0000
committerKaroly Lorentey <lorentey@elte.hu>2005-10-29 11:50:12 +0000
commitc40bb1ba81a5df164f0b9b61e3480c55808717b7 (patch)
treeb7ce7860f839f249aee9f251507aa9e6ab5345be /lisp/simple.el
parent1d33157fbfbb14905fcc88f627f15dd2732cc569 (diff)
downloademacs-c40bb1ba81a5df164f0b9b61e3480c55808717b7.tar.gz
emacs-c40bb1ba81a5df164f0b9b61e3480c55808717b7.tar.bz2
emacs-c40bb1ba81a5df164f0b9b61e3480c55808717b7.zip
Fix semantics of terminal-local variables. Remove `terminal-local-value' hack.
* src/data.c (do_symval_forwarding, store_symval_forwarding) (find_symbol_value): Use the selected frame's keyboard, not current_kboard. * src/data.c (Fterminal_local_value, Fset_terminal_local_value): Disable these functions. * src/data.c (syms_of_data): Don't defsubr them. * lisp/edmacro.el (edmacro-format-keys): Remove terminal-local-value calls. * lisp/emulation/cua-base.el (cua--pre-command-handler-1): Ditto. * lisp/international/encoded-kb.el (encoded-kbd-setup-display): Ditto. * lisp/isearch.el (isearch-other-meta-char): Ditto. * lisp/obsolete/keyswap.el (the-table): Ditto. * lisp/simple.el (normal-erase-is-backspace-mode): Ditto. * lisp/subr.el (keyboard-translate, read-quoted-char): Ditto. * lisp/term/AT386.el (terminal-init-AT386): Ditto. * lisp/term/internal.el: Ditto. * lisp/term/iris-ansi.el (terminal-init-iris-ansi): Ditto. * lisp/term/lk201.el (terminal-init-lk201): Ditto. * lisp/term/mac-win.el: Ditto. * lisp/term/news.el (terminal-init-news): Ditto. * lisp/term/rxvt.el (terminal-init-rxvt): Ditto. * lisp/term/sun.el (terminal-init-sun): Ditto. * lisp/term/tvi970.el (terminal-init-tvi970): Ditto. * lisp/term/vt200.el (terminal-init-vt200): Ditto. * lisp/term/vt201.el (terminal-init-vt201): Ditto. * lisp/term/vt220.el (terminal-init-vt220): Ditto. * lisp/term/vt240.el (terminal-init-vt240): Ditto. * lisp/term/vt300.el (terminal-init-vt300): Ditto. * lisp/term/vt320.el (terminal-init-vt320): Ditto. * lisp/term/vt400.el (terminal-init-vt400): Ditto. * lisp/term/vt420.el (terminal-init-vt420): Ditto. * lisp/term/wyse50.el (terminal-init-wyse50): Ditto. * lisp/term/x-win.el (x-setup-function-keys): Ditto. * lisp/term/xterm.el (terminal-init-xterm): Ditto. git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-434
Diffstat (limited to 'lisp/simple.el')
-rw-r--r--lisp/simple.el19
1 files changed, 9 insertions, 10 deletions
diff --git a/lisp/simple.el b/lisp/simple.el
index 3a8a737258e..8e481fb7231 100644
--- a/lisp/simple.el
+++ b/lisp/simple.el
@@ -5337,26 +5337,25 @@ See also `normal-erase-is-backspace'."
(cond ((or (memq window-system '(x w32 mac pc))
(memq system-type '(ms-dos windows-nt)))
- (let* ((lfkm (terminal-local-value 'local-function-key-map nil))
- (bindings
+ (let* ((bindings
`(([C-delete] [C-backspace])
([M-delete] [M-backspace])
([C-M-delete] [C-M-backspace])
(,esc-map
[C-delete] [C-backspace])))
- (old-state (lookup-key lfkm [delete])))
+ (old-state (lookup-key local-function-key-map [delete])))
(if (terminal-parameter nil 'normal-erase-is-backspace)
(progn
- (define-key lfkm [delete] [?\C-d])
- (define-key lfkm [kp-delete] [?\C-d])
- (define-key lfkm [backspace] [?\C-?]))
- (define-key lfkm [delete] [?\C-?])
- (define-key lfkm [kp-delete] [?\C-?])
- (define-key lfkm [backspace] [?\C-?]))
+ (define-key local-function-key-map [delete] [?\C-d])
+ (define-key local-function-key-map [kp-delete] [?\C-d])
+ (define-key local-function-key-map [backspace] [?\C-?]))
+ (define-key local-function-key-map [delete] [?\C-?])
+ (define-key local-function-key-map [kp-delete] [?\C-?])
+ (define-key local-function-key-map [backspace] [?\C-?]))
;; Maybe swap bindings of C-delete and C-backspace, etc.
- (unless (equal old-state (lookup-key lfkm [delete]))
+ (unless (equal old-state (lookup-key local-function-key-map [delete]))
(dolist (binding bindings)
(let ((map global-map))
(when (keymapp (car binding))