Function: viper-backward-indent

viper-backward-indent is an interactive and byte-compiled function defined in viper-cmd.el.gz.

Signature

(viper-backward-indent)

Documentation

Backtab, C-d in Vi.

Key Bindings

Source Code

;; Defined in /usr/src/emacs/lisp/emulation/viper-cmd.el.gz
(defun viper-backward-indent ()
  "Backtab, `C-d' in Vi."
  (interactive)
  (if viper-cted
      (let ((p (point)) (c (current-column)) bol (indent t))
	(if (memq (preceding-char) '(?0 ?^))
	    (progn
	      (if (eq ?^ (preceding-char))
		  (setq viper-preserve-indent t))
	      (delete-char -1)
	      (setq p (point))
	      (setq indent nil)))
	(setq bol (point-at-bol))
	(if (re-search-backward "[^ \t]" bol 1) (forward-char))
	(delete-region (point) p)
	(if indent
	    (indent-to (- c viper-shift-width)))
	(if (or (bolp) (looking-back "[^ \t]" (1- (point))))
	    (setq viper-cted nil)))))