Function: vip-repeat
vip-repeat is an interactive and byte-compiled function defined in
vip.el.gz.
Signature
(vip-repeat ARG)
Documentation
(ARG) Re-execute last destructive command. vip-d-com has the form
(COM ARG CH REG), where COM is the command to be re-executed, ARG is the
argument for COM, CH is a flag for repeat, and REG is optional and if exists
is the name of the register for COM.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/obsolete/vip.el.gz
(defun vip-repeat (arg)
"(ARG) Re-execute last destructive command. vip-d-com has the form
\(COM ARG CH REG), where COM is the command to be re-executed, ARG is the
argument for COM, CH is a flag for repeat, and REG is optional and if exists
is the name of the register for COM."
(interactive "P")
(if (eq last-command 'vip-undo)
;; if the last command was vip-undo, then undo-more
(vip-undo-more)
;; otherwise execute the command stored in vip-d-com. if arg is non-nil
;; its prefix value is used as new prefix value for the command.
(let ((m-com (car vip-d-com))
(val (vip-P-val arg))
(com (car (cdr (cdr vip-d-com))))
(reg (nth 3 vip-d-com)))
(if (null val) (setq val (car (cdr vip-d-com))))
(if (null m-com) (error "No previous command to repeat"))
(setq vip-use-register reg)
(funcall m-com (cons val com)))))