Commit c5e3815f authored by Noam Postavsky's avatar Noam Postavsky

Print macro modified macro keys as characters not integers

* lisp/macros.el (macros--insert-vector-macro): Pass all elements to
'prin1-char', not just those that satisfy characterp (because characters
which have modifier bits set wouldn't qualify otherwise).
'prin1-char' will return nil if it can't handle the argument (e.g.,
for symbols representing function keys).
parent f38901d4
......@@ -38,13 +38,13 @@
(defun macros--insert-vector-macro (definition)
"Print DEFINITION, a vector, into the current buffer."
(dotimes (i (length definition))
(let ((char (aref definition i)))
(insert (if (zerop i) ?\[ ?\s))
(if (characterp char)
(princ (prin1-char char) (current-buffer))
(prin1 char (current-buffer)))))
(insert ?\]))
(insert ?\[
(mapconcat (lambda (event)
(or (prin1-char event)
(prin1-to-string event)))
definition
" ")
?\]))
;;;###autoload
(defun insert-kbd-macro (macroname &optional keys)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment