Function: vhdl-speedbar-item-info
vhdl-speedbar-item-info is a byte-compiled function defined in
vhdl-mode.el.gz.
Signature
(vhdl-speedbar-item-info)
Documentation
Derive and display information about this line item.
Source Code
;; Defined in /usr/src/emacs/lisp/progmodes/vhdl-mode.el.gz
(defun vhdl-speedbar-item-info ()
"Derive and display information about this line item."
(save-excursion
(beginning-of-line)
;; skip invisible number info
(when (looking-at "^[0-9]+:") (goto-char (match-end 0)))
(cond
;; project/directory entry
((looking-at "\\s-*<[-+?]>\\s-+\\([^\n]+\\)$")
(if vhdl-speedbar-show-projects
(message "Project \"%s\"" (match-string-no-properties 1))
(speedbar-files-item-info)))
;; design unit entry
((looking-at "\\(\\s-*\\([[{][-+?][]}]\\|[| -]*>\\) \\)\"?\\w")
(goto-char (match-end 1))
(let ((face (get-text-property (point) 'face)))
(message
"%s \"%s\" in \"%s\""
;; design unit kind
(cond ((or (eq face 'vhdl-speedbar-entity-face)
(eq face 'vhdl-speedbar-entity-selected-face))
(if (equal (match-string 2) ">") "Component" "Entity"))
((or (eq face 'vhdl-speedbar-architecture-face)
(eq face 'vhdl-speedbar-architecture-selected-face))
"Architecture")
((or (eq face 'vhdl-speedbar-configuration-face)
(eq face 'vhdl-speedbar-configuration-selected-face))
"Configuration")
((or (eq face 'vhdl-speedbar-package-face)
(eq face 'vhdl-speedbar-package-selected-face))
"Package")
((or (eq face 'vhdl-speedbar-instantiation-face)
(eq face 'vhdl-speedbar-instantiation-selected-face))
"Instantiation")
((eq face 'vhdl-speedbar-subprogram-face)
"Subprogram")
(t ""))
;; design unit name
(buffer-substring-no-properties
(progn (looking-at "\"?\\(\\(\\w\\|_\\)+\\)\"?") (match-beginning 1))
(match-end 1))
;; file name
(file-relative-name
(or (car (get-text-property (point) 'speedbar-token))
"?")
(vhdl-default-directory)))))
(t (message "")))))