Function: elisp-scope-define-symbol-role
elisp-scope-define-symbol-role is a macro defined in
elisp-scope.el.gz.
Signature
(elisp-scope-define-symbol-role NAME PARENTS &rest PROPS)
Documentation
Define NAME as the name of a symbol role that inherits from PARENTS.
A symbol role is a symbol that Emacs uses to describe the role
of (other) symbols in Emacs Lisp source code. For example, the symbol
role face characterizes symbols that are face names.
PROPS is a plist specifying the properties of the new symbol role NAME. NAME inherits properties that do not appear in PROPS from its PARENTS.
Common symbol role properties are:
- :doc: short documentation string describing this symbol role.
- :face: face for highlighting symbols with this role.
- :help: help-echo text for symbols with this role.
See also elisp-scope-get-symbol-role-property and
elisp-scope-set-symbol-role-property for getting and setting values of
symbol role properties.
Source Code
;; Defined in /usr/src/emacs/lisp/emacs-lisp/elisp-scope.el.gz
(defmacro elisp-scope-define-symbol-role (name parents &rest props)
"Define NAME as the name of a symbol role that inherits from PARENTS.
A symbol role is a symbol that Emacs uses to describe the role
of (other) symbols in Emacs Lisp source code. For example, the symbol
role `face' characterizes symbols that are face names.
PROPS is a plist specifying the properties of the new symbol role NAME.
NAME inherits properties that do not appear in PROPS from its PARENTS.
Common symbol role properties are:
- `:doc': short documentation string describing this symbol role.
- `:face': face for highlighting symbols with this role.
- `:help': `help-echo' text for symbols with this role.
See also `elisp-scope-get-symbol-role-property' and
`elisp-scope-set-symbol-role-property' for getting and setting values of
symbol role properties."
(declare (indent defun))
`(elisp-scope--define-symbol-role ',name ',parents ,(when props `(list ,@props))))