Function: viper-backward-char-carefully

viper-backward-char-carefully is a byte-compiled function defined in viper-cmd.el.gz.

Signature

(viper-backward-char-carefully &optional ARG)

Source Code

;; Defined in /usr/src/emacs/lisp/emulation/viper-cmd.el.gz
;; Like backward-char, but doesn't move at beg of buffer.
;; Returns distance traveled
;; (negative or 0, if arg positive; positive if arg negative).
(defun viper-backward-char-carefully (&optional arg)
  (setq arg (or arg 1))
  (let ((pt (point)))
    (condition-case nil
	(backward-char arg)
      (error nil))
    (if (> (point) pt) ; arg was negative
	(viper-chars-in-region pt (point))
      (- (viper-chars-in-region pt (point))))))