Function: smart-emacs-lisp-mode-p

smart-emacs-lisp-mode-p is a byte-compiled function defined in hmouse-tag.el.

Signature

(smart-emacs-lisp-mode-p &optional SKIP-IDENTIFIER-FLAG)

Documentation

Return non-nil if in a mode using Emacs Lisp symbols.

Source Code

;; Defined in ~/.emacs.d/elpa/hyperbole-20260414.325/hmouse-tag.el
(defun smart-emacs-lisp-mode-p (&optional skip-identifier-flag)
  "Return non-nil if in a mode using Emacs Lisp symbols."
  ;; Beyond Lisp files, Emacs Lisp symbols appear frequently in Byte-Compiled
  ;; buffers, debugger buffers, program ChangeLog buffers, Help buffers,
  ;; *Warnings*, *Flymake log* and *Flymake diagnostics buffers.
  (or (apply #'derived-mode-p '(emacs-lisp-mode lisp-data-mode lisp-interaction-mode
				debugger-mode ert-results-mode))
      (string-match-p (concat "\\`\\*\\(Warnings\\|Flymake log\\|Compile-Log\\(-Show\\)?\\)\\*"
			      "\\|\\`\\*Flymake diagnostics")
		      (buffer-name))
      ;; Consider the following buffer types only if on an Emacs Lisp
      ;; symbol that can be looked up, e.g. in a TAGS file or via a
      ;; previous symbol load.
      (and (or (apply #'derived-mode-p '(help-mode change-log-mode))
	       (string-match-p "\\`\\*Help\\|Help\\*\\'" (buffer-name)))
	   (or skip-identifier-flag (smart-lisp-at-known-identifier-p)))))