]> code.delx.au - gnu-emacs/blobdiff - lisp/double.el
Detect remote uid and gid in tramp-gvfs.el
[gnu-emacs] / lisp / double.el
index 853ba09e2c18426ad8dc6ff399cd238b4ec2296a..d6ccff8e96401af990d14b03456e8999a8cc7426 100644 (file)
@@ -1,7 +1,7 @@
 ;;; double.el --- support for keyboard remapping with double clicking
 
-;; Copyright (C) 1994, 1997, 1998, 2001, 2002, 2003, 2004,
-;;   2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
+;; Copyright (C) 1994, 1997-1998, 2001-2016 Free Software Foundation,
+;; Inc.
 
 ;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
 ;; Keywords: i18n
@@ -122,9 +122,10 @@ but not `C-u X' or `ESC X' since the X is not the prefix key."
                         (append (make-list (1- (length (nth 1 entry)))
                                            127)
                                 (nth 2 entry)
-                                '(magic-end)))
+                                '(magic-end)
+                                 unread-command-events))
                   (vector 127))
-              (setq unread-command-events (list new))
+              (push new unread-command-events)
               [ignore])))
          ((eq key 'magic-end)
           ;; End of double event.  Ignore.
@@ -134,7 +135,8 @@ but not `C-u X' or `ESC X' since the X is not the prefix key."
           (let ((exp (nth 1 (assoc key double-map))))
             (setq double-last-event key)
             (setq unread-command-events
-                  (append (substring exp 1) '(magic-start)))
+                  (append (substring exp 1) '(magic-start)
+                           unread-command-events))
             (vector (aref exp 0)))))))
 
 ;;; Mode
@@ -147,12 +149,13 @@ but not `C-u X' or `ESC X' since the X is not the prefix key."
 
 ;;;###autoload
 (define-minor-mode double-mode
-  "Toggle Double mode.
-With prefix argument ARG, turn Double mode on if ARG is positive, otherwise
-turn it off.
+  "Toggle special insertion on double keypresses (Double mode).
+With a prefix argument ARG, enable Double mode if ARG is
+positive, and disable it otherwise.  If called from Lisp, enable
+the mode if ARG is omitted or nil.
 
-When Double mode is on, some keys will insert different strings
-when pressed twice.  See variable `double-map' for details."
+When Double mode is enabled, some keys will insert different
+strings when pressed twice.  See `double-map' for details."
   :lighter " Double"
   :link '(emacs-commentary-link "double")
   (kill-local-variable 'key-translation-map)