diff lisp/term.el @ 108402:d3036620c45e

Merge from mainline.
author Katsumi Yamaoka <yamaoka@jpl.org>
date Fri, 22 Jan 2010 14:50:35 +0000
parents 200d1ac9090a
children d835100c3e8b f702fa9eb85e
line wrap: on
line diff
--- a/lisp/term.el	Wed Jan 20 14:24:11 2010 +0000
+++ b/lisp/term.el	Fri Jan 22 14:50:35 2010 +0000
@@ -1208,8 +1208,17 @@
 
 (defun term-send-raw-meta ()
   (interactive)
-  (let* ((keys (this-command-keys))
-         (char (aref keys (1- (length keys)))))
+  (let ((char last-input-event))
+    (when (symbolp last-input-event)
+      ;; Convert `return' to C-m, etc.
+      (let ((tmp (get char 'event-symbol-elements)))
+	(when tmp
+	  (setq char (car tmp)))
+	(when (symbolp char)
+	  (setq tmp (get char 'ascii-character))
+	  (when tmp
+	    (setq char tmp)))))
+    (setq char (event-basic-type char))
     (term-send-raw-string (if (and (numberp char)
 				   (> char 127)
 				   (< char 256))