*** empty log message ***
[bpt/emacs.git] / lisp / edmacro.el
index b61cc55..8a32015 100644 (file)
@@ -119,7 +119,7 @@ With a prefix argument, format the macro in a more concise way."
             (if (string-equal cmd "")
                 (error "No command name given"))
             (setq mac (symbol-function cmd)))
-           ((eq cmd 'view-lossage)
+           ((memq cmd '(view-lossage electric-view-lossage))
             (setq mac (recent-keys))
             (setq cmd 'last-kbd-macro))
            ((null cmd)
@@ -698,8 +698,7 @@ If START or END is negative, it counts from the end."
                             ;; and C-? is not used (we use DEL instead).
                             (string-match "[@-_a-z]" word))
                        (setq key (list (+ bits (- ?\C-\^@)
-                                          (if (equal word "?") 127
-                                            (logand (aref word 0) 31))))))
+                                          (logand (aref word 0) 31)))))
                       (t
                        (setq key (list (+ bits (aref word 0)))))))))
        (when key
@@ -712,7 +711,7 @@ If START or END is negative, it counts from the end."
       (setq res (edmacro-subseq res 2 -2)))
     (if (and (not need-vector)
             (loop for ch across res
-                  always (and (integerp ch)
+                  always (and (char-valid-p ch)
                               (let ((ch2 (logand ch (lognot ?\M-\^@))))
                                 (and (>= ch2 0) (<= ch2 127))))))
        (concat (loop for ch across res
@@ -723,4 +722,3 @@ If START or END is negative, it counts from the end."
 (provide 'edmacro)
 
 ;;; edmacro.el ends here
-