1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-15 10:30:25 -08:00

(default-key-translation-map): Variable deleted.

(double-setup): Make key-translation-map buffer-local here.
New arg ENABLE-FLAG.
(double-mode): Pass ENABLE-FLAG arg to double-setup.
This commit is contained in:
Richard M. Stallman 1998-08-01 19:01:15 +00:00
parent 526d204e20
commit 7cda860e7a

View file

@ -1,6 +1,6 @@
;;; double.el --- Support for keyboard remapping with double clicking
;; Copyright (C) 1994,1997 Free Software Foundation, Inc.
;; Copyright (C) 1994, 1997, 1998 Free Software Foundation, Inc.
;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
;; Keywords: i18n
@ -139,21 +139,19 @@ but not `C-u X' or `ESC X' since the X is not the prefix key."
;;; Key Translation Map
(defvar default-key-translation-map
(or key-translation-map (make-sparse-keymap))
"Key translation you want to have effect, regardless of Double mode.
This defaults to the value of `key-translation-map' when double was
first loaded.")
(make-variable-buffer-local 'key-translation-map)
(defun double-setup ()
;; Setup key-translation-map as indicated by `double-map'.
(setq key-translation-map (copy-keymap default-key-translation-map))
(mapcar (function (lambda (entry)
(define-key key-translation-map (vector (nth 0 entry))
'double-translate-key)))
(append double-map '((magic-start) (magic-end)))))
(defun double-setup (enable-flag)
(if enable-flag
(progn
;; Set up key-translation-map as indicated by `double-map'.
(kill-local-variable 'key-translation-map)
(make-local-variable 'key-translation-map)
(setq key-translation-map (copy-keymap key-translation-map))
(mapcar (function (lambda (entry)
(define-key key-translation-map
(vector (nth 0 entry))
'double-translate-key)))
(append double-map '((magic-start) (magic-end)))))
(kill-local-variable 'key-translation-map)))
;;; Mode
@ -185,13 +183,13 @@ when pressed twice. See variable `double-map' for details."
(if double-mode
(progn
(let ((double-map))
(double-setup))
(double-setup nil))
(setq double-mode nil)
(force-mode-line-update)))
;;Turn it on
(if double-mode
()
(double-setup)
(double-setup t)
(setq double-mode t)
(force-mode-line-update))))