Function: vhdl-lineup-statement-cont
vhdl-lineup-statement-cont is a byte-compiled function defined in
vhdl-mode.el.gz.
Signature
(vhdl-lineup-statement-cont LANGELEM)
Documentation
Line up statement-cont after the assignment operator.
Source Code
;; Defined in /usr/src/emacs/lisp/progmodes/vhdl-mode.el.gz
(defun vhdl-lineup-statement-cont (langelem)
"Line up statement-cont after the assignment operator."
(save-excursion
(let* ((relpos (cdr langelem))
(assignp (save-excursion
(goto-char (vhdl-point 'boi))
(and (re-search-forward "\\(<\\|:\\|=\\)="
(vhdl-point 'eol) t)
(- (point) (vhdl-point 'boi)))))
(curcol (progn
(goto-char relpos)
(current-column)))
foundp)
(while (and (not foundp)
(< (point) (vhdl-point 'eol)))
(re-search-forward "\\(<\\|:\\|=\\)=\\|(" (vhdl-point 'eol) 'move)
(if (vhdl-in-literal)
(forward-char)
(if (= (preceding-char) ?\()
;; skip over any parenthesized expressions
(goto-char (min (vhdl-point 'eol)
(scan-lists (point) 1 1)))
;; found an assignment operator (not at eol)
(setq foundp (not (looking-at "\\s-*$"))))))
(if (not foundp)
;; there's no assignment operator on the line
vhdl-basic-offset
;; calculate indentation column after assign and ws, unless
;; our line contains an assignment operator
(if (not assignp)
(progn
(forward-char)
(skip-chars-forward " \t")
(setq assignp 0)))
(- (current-column) assignp curcol))
)))