Function: viper-execute-com

viper-execute-com is a byte-compiled function defined in viper-cmd.el.gz.

Signature

(viper-execute-com M-COM VAL COM)

Source Code

;; Defined in /usr/src/emacs/lisp/emulation/viper-cmd.el.gz
;; This function is called by various movement commands to execute a
;; destructive command on the region specified by the movement command.  For
;; instance, if the user types cw, then the command viper-forward-word will
;; call viper-execute-com to execute viper-exec-change, which eventually will
;; call viper-change to invoke the replace mode on the region.
;;
;; The var viper-d-com is set to (M-COM VAL COM REG INSERTED-TEXT COMMAND-KEYS)
;; via a call to viper-set-destructive-command, for later use by viper-repeat.
(defun viper-execute-com (m-com val com)
  (let ((reg viper-use-register))
    ;; this is the special command `#'
    (if (> com 128)
	(viper-special-prefix-com (- com 128))
      (let ((fn (aref viper-exec-array com)))
	(if (null fn)
	    (error "%c: %s" com viper-InvalidViCommand)
	  (funcall fn m-com com))))
    (if (viper-dotable-command-p com)
	(viper-set-destructive-command
	 (list m-com val com reg nil nil)))
    ))