Function: vhdl-set-offset
vhdl-set-offset is an interactive and byte-compiled function defined
in vhdl-mode.el.gz.
Signature
(vhdl-set-offset SYMBOL OFFSET &optional ADD-P)
Documentation
Change the value of a syntactic element symbol in vhdl-offsets-alist.
SYMBOL is the syntactic element symbol to change and OFFSET is the new
offset for that syntactic element. Optional ADD-P says to add SYMBOL to
vhdl-offsets-alist if it doesn't already appear there.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/progmodes/vhdl-mode.el.gz
(defun vhdl-set-offset (symbol offset &optional add-p)
"Change the value of a syntactic element symbol in `vhdl-offsets-alist'.
SYMBOL is the syntactic element symbol to change and OFFSET is the new
offset for that syntactic element. Optional ADD-P says to add SYMBOL to
`vhdl-offsets-alist' if it doesn't already appear there."
(interactive
(let* ((langelem
(intern (completing-read
(concat "Syntactic symbol to change"
(if current-prefix-arg " or add" "")
": ")
(mapcar
(lambda (langelem)
(cons (format "%s" (car langelem)) nil))
vhdl-offsets-alist)
nil (not current-prefix-arg)
;; initial contents tries to be the last element
;; on the syntactic analysis list for the current
;; line
(let* ((syntax (vhdl-get-syntactic-context))
(len (length syntax))
(ic (format "%s" (car (nth (1- len) syntax)))))
ic)
)))
(offset (vhdl-read-offset langelem)))
(list langelem offset current-prefix-arg)))
;; sanity check offset
(or (eq offset '+)
(eq offset '-)
(eq offset '++)
(eq offset '--)
(integerp offset)
(fboundp offset)
(boundp offset)
(error "ERROR: Offset must be int, func, var, or one of +, -, ++, --: %s"
offset))
(let ((entry (assq symbol vhdl-offsets-alist)))
(if entry
(setcdr entry offset)
(if add-p
(setq vhdl-offsets-alist
(cons (cons symbol offset) vhdl-offsets-alist))
(error "ERROR: %s is not a valid syntactic symbol" symbol))))
(vhdl-keep-region-active))