Function: vip-execute-com
vip-execute-com is a byte-compiled function defined in vip.el.gz.
Signature
(vip-execute-com M-COM VAL COM)
Documentation
(M-COM VAL COM) Execute command COM. The list (M-COM VAL COM) is set
to vip-d-com for later use by vip-repeat
Source Code
;; Defined in /usr/src/emacs/lisp/obsolete/vip.el.gz
(defun vip-execute-com (m-com val com)
"(M-COM VAL COM) Execute command COM. The list (M-COM VAL COM) is set
to vip-d-com for later use by vip-repeat"
(let ((reg vip-use-register))
(if com
(cond ((= com ?c) (vip-change vip-com-point (point)))
((= com (- ?c)) (vip-change-subr vip-com-point (point)))
((or (= com ?C) (= com (- ?C)))
(save-excursion
(set-mark vip-com-point)
(vip-enlarge-region (mark) (point))
(if vip-use-register
(progn
(cond ((and (<= ?a vip-use-register)
(<= vip-use-register ?z))
(copy-to-register
vip-use-register (mark) (point) nil))
((and (<= ?A vip-use-register)
(<= vip-use-register ?Z))
(vip-append-to-register
(+ vip-use-register 32) (mark) (point)))
(t (setq vip-use-register nil)
(error "")))
(setq vip-use-register nil)))
(delete-region (mark) (point)))
(open-line 1)
(if (= com ?C) (vip-change-mode-to-insert) (yank)))
((= com ?d)
(if vip-use-register
(progn
(cond ((and (<= ?a vip-use-register)
(<= vip-use-register ?z))
(copy-to-register
vip-use-register vip-com-point (point) nil))
((and (<= ?A vip-use-register)
(<= vip-use-register ?Z))
(vip-append-to-register
(+ vip-use-register 32) vip-com-point (point)))
(t (setq vip-use-register nil)
(error "")))
(setq vip-use-register nil)))
(setq last-command
(if (eq last-command 'd-command) 'kill-region nil))
(kill-region vip-com-point (point))
(setq this-command 'd-command))
((= com ?D)
(save-excursion
(set-mark vip-com-point)
(vip-enlarge-region (mark) (point))
(if vip-use-register
(progn
(cond ((and (<= ?a vip-use-register)
(<= vip-use-register ?z))
(copy-to-register
vip-use-register (mark) (point) nil))
((and (<= ?A vip-use-register)
(<= vip-use-register ?Z))
(vip-append-to-register
(+ vip-use-register 32) (mark) (point)))
(t (setq vip-use-register nil)
(error "")))
(setq vip-use-register nil)))
(setq last-command
(if (eq last-command 'D-command) 'kill-region nil))
(kill-region (mark) (point))
(if (eq m-com 'vip-line) (setq this-command 'D-command)))
(back-to-indentation))
((= com ?y)
(if vip-use-register
(progn
(cond ((and (<= ?a vip-use-register)
(<= vip-use-register ?z))
(copy-to-register
vip-use-register vip-com-point (point) nil))
((and (<= ?A vip-use-register)
(<= vip-use-register ?Z))
(vip-append-to-register
(+ vip-use-register 32) vip-com-point (point)))
(t (setq vip-use-register nil)
(error "")))
(setq vip-use-register nil)))
(setq last-command nil)
(copy-region-as-kill vip-com-point (point))
(goto-char vip-com-point))
((= com ?Y)
(save-excursion
(set-mark vip-com-point)
(vip-enlarge-region (mark) (point))
(if vip-use-register
(progn
(cond ((and (<= ?a vip-use-register)
(<= vip-use-register ?z))
(copy-to-register
vip-use-register (mark) (point) nil))
((and (<= ?A vip-use-register)
(<= vip-use-register ?Z))
(vip-append-to-register
(+ vip-use-register 32) (mark) (point)))
(t (setq vip-use-register nil)
(error "")))
(setq vip-use-register nil)))
(setq last-command nil)
(copy-region-as-kill (mark) (point)))
(goto-char vip-com-point))
((or (= com ?!) (= com (- ?!)))
(save-excursion
(set-mark vip-com-point)
(vip-enlarge-region (mark) (point))
(shell-command-on-region
(mark) (point)
(if (= com ?!)
(setq vip-last-shell-com (vip-read-string "!"))
vip-last-shell-com)
t t)))
((= com ?=)
(save-excursion
(set-mark vip-com-point)
(vip-enlarge-region (mark) (point))
(if (> (mark) (point)) (exchange-point-and-mark))
(indent-region (mark) (point) nil)))
((= com ?<)
(save-excursion
(set-mark vip-com-point)
(vip-enlarge-region (mark) (point))
(indent-rigidly (mark) (point) (- vip-shift-width)))
(goto-char vip-com-point))
((= com ?>)
(save-excursion
(set-mark vip-com-point)
(vip-enlarge-region (mark) (point))
(indent-rigidly (mark) (point) vip-shift-width))
(goto-char vip-com-point))
((>= com 128)
;; this is special command #
(vip-special-prefix-com (- com 128)))))
(setq vip-d-com (list m-com val (if (or (= com ?c) (= com ?C) (= com ?!))
(- com) com)
reg))))