Function: kmacro-view-macro

kmacro-view-macro is an interactive and byte-compiled function defined in kmacro.el.gz.

Signature

(kmacro-view-macro &optional ARG)

Documentation

Display the last keyboard macro.

If repeated, it shows previous elements in the macro ring. The ARG parameter is unused.

Key Bindings

Source Code

;; Defined in /usr/src/emacs/lisp/kmacro.el.gz
(defun kmacro-view-macro (&optional _arg)
  "Display the last keyboard macro.
If repeated, it shows previous elements in the macro ring.
The ARG parameter is unused."
  (interactive)
  (cond
   ((or (kmacro-ring-empty-p)
	(not (eq last-command #'kmacro-view-macro)))
    (setq kmacro-view-last-item nil))
   ((null kmacro-view-last-item)
    (setq kmacro-view-last-item kmacro-ring
	  kmacro-view-item-no 2))
   ((consp kmacro-view-last-item)
    (setq kmacro-view-last-item (cdr kmacro-view-last-item)
	  kmacro-view-item-no (1+ kmacro-view-item-no)))
   (t
    (setq kmacro-view-last-item nil)))
  (setq this-command #'kmacro-view-macro
	last-command this-command) ;; in case we repeat
  (kmacro-display (if kmacro-view-last-item
		      (kmacro--keys (car kmacro-view-last-item))
		    last-kbd-macro)
		  nil
		  (if kmacro-view-last-item
		      (concat (cond ((= kmacro-view-item-no 2) "2nd")
				    ((= kmacro-view-item-no 3) "3rd")
				    (t (format "%dth" kmacro-view-item-no)))
			      " previous macro")
		    "Last macro")))