branch: externals/setup commit ce1e0e3dd2d6d4ef608ca350adab6e4690de6470 Author: Philip K <phil...@posteo.net> Commit: Philip K <phil...@posteo.net>
Prevent overriding all elisp xref requests --- setup.el | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/setup.el b/setup.el index f3d4255..0fde6bf 100644 --- a/setup.el +++ b/setup.el @@ -71,6 +71,8 @@ ;;; Code: +(require 'elisp-mode) + (defvar setup-macros nil "Local macro definitions to be bound in `setup' bodies. Do not modify this variable by hand. Instead use @@ -199,11 +201,13 @@ If not given, it is assumed nothing is evaluated." (cons '&rest spec)) (t spec))))) +(defun setup-xref-def-function (symbol) + "Return an elisp xref location for SYMBOL." + (and (assq symbol setup-macros) + (list (elisp--xref-make-xref nil symbol "setup")))) + (add-to-list 'elisp-xref-find-def-functions - (defun setup-xref-def-function (symbol) - "Return an elisp xref location for SYMBOL." - (require 'elisp-mode) - (list (elisp--xref-make-xref nil symbol "setup")))) + #'setup-xref-def-function) ;;; definitions of `setup' keywords