Function: kmacro-end-or-call-macro

kmacro-end-or-call-macro is an autoloaded, interactive and byte-compiled function defined in kmacro.el.gz.

Signature

(kmacro-end-or-call-macro ARG &optional NO-REPEAT)

Documentation

End kbd macro if currently being defined; else call last kbd macro.

With numeric prefix ARG, repeat macro that many times. With C-u (universal-argument), call second macro in macro ring.

Key Bindings

Source Code

;; Defined in /usr/src/emacs/lisp/kmacro.el.gz
;;;###autoload
(defun kmacro-end-or-call-macro (arg &optional no-repeat)
  "End kbd macro if currently being defined; else call last kbd macro.
With numeric prefix ARG, repeat macro that many times.
With \\[universal-argument], call second macro in macro ring."
  (interactive "P")
  (cond
   (defining-kbd-macro
     (if kmacro-call-repeat-key
	 (kmacro-call-macro arg no-repeat t)
       (kmacro-end-macro arg)))
   ((and (eq this-command 'kmacro-view-macro)  ;; We are in repeat mode!
	 kmacro-view-last-item)
    (kmacro-exec-ring-item (car kmacro-view-last-item) arg))
   ((and arg (listp arg))
    (kmacro-call-ring-2nd 1))
   (t
    (kmacro-call-macro arg no-repeat))))