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 (line-beginning-position))
(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)))))