Function: viper-exec-yank

viper-exec-yank is a byte-compiled function defined in viper-cmd.el.gz.

Signature

(viper-exec-yank M-COM COM)

Source Code

;; Defined in /usr/src/emacs/lisp/emulation/viper-cmd.el.gz
;; save region
(defun viper-exec-yank (_m-com _com)
  (or (and (markerp viper-com-point) (marker-position viper-com-point))
      (set-marker viper-com-point (point) (current-buffer)))
  (let (chars-saved)
    (if viper-use-register
	(progn
	  (cond ((viper-valid-register viper-use-register '(letter digit))
		 (copy-to-register
		  viper-use-register viper-com-point (point) nil))
		((viper-valid-register viper-use-register '(Letter))
		 (viper-append-to-register
		  (downcase viper-use-register) viper-com-point (point)))
		(t (setq viper-use-register nil)
		   (error viper-InvalidRegister viper-use-register)))
	  (setq viper-use-register nil)))
    (setq last-command nil)
    (copy-region-as-kill viper-com-point (point))
    (setq chars-saved (abs (- (point) viper-com-point)))
    (if (> chars-saved viper-change-notification-threshold)
	(unless (viper-is-in-minibuffer)
	  (message "Saved %d characters" chars-saved)))
    (goto-char viper-com-point)))