Function: viper-exec-Delete

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

Signature

(viper-exec-Delete M-COM COM)

Source Code

;; Defined in /usr/src/emacs/lisp/emulation/viper-cmd.el.gz
(defun viper-exec-Delete (m-com _com)
  (save-excursion
    (set-mark viper-com-point)
    (viper-enlarge-region (mark t) (point))
    (let (lines-deleted)
      (if viper-use-register
	  (progn
	    (cond ((viper-valid-register viper-use-register '(letter digit))
		   (copy-to-register
		    viper-use-register (mark t) (point) nil))
		  ((viper-valid-register viper-use-register '(Letter))
		   (viper-append-to-register
		    (downcase viper-use-register) (mark t) (point)))
		  (t (setq viper-use-register nil)
		     (error viper-InvalidRegister viper-use-register)))
	    (setq viper-use-register nil)))
      (setq last-command
	    (if (eq last-command 'D-command) 'kill-region nil))
      (setq lines-deleted (count-lines (point) viper-com-point))
      (if (> lines-deleted viper-change-notification-threshold)
	  (unless (viper-is-in-minibuffer)
	    (message "Deleted %d lines" lines-deleted)))
      (kill-region (mark t) (point))
      (if (eq m-com 'viper-line) (setq this-command 'D-command)))
    (back-to-indentation)))