Variable: highlight-function-calls--keywords
highlight-function-calls--keywords is a variable defined in
highlight-function-calls.el.
Value
(("\\(?:^\\|[[:space:]]+\\|,\\)\\(?:#'\\|(\\)" (0 nil)
(highlight-function-calls--matcher
(save-excursion (forward-symbol 1) (point)) nil
(0 highlight-function-calls--face-name prepend))))
Documentation
Keywords argument for font-lock-add-keywords.
Source Code
;; Defined in ~/.emacs.d/elpa/highlight-function-calls-20240922.1826/highlight-function-calls.el
(defconst highlight-function-calls--keywords
`((
;; First we match an opening paren (which prevents matching
;; function names as arguments) or a function-quote (in which
;; case an argument should be matched). We also avoid matching
;; opening parens immediately after quotes (but this is not
;; perfect, since a list within a list could have its second
;; opening paren on a line by itself, in which case it would
;; appear to us like a normal function call and get
;; highlighted--but trying to fix that doesn't seem worth the
;; trouble, given how much trouble all this has already been).
;; FIXME: This does not avoid matching opening parens in quoted
;; lists. I don't know if we can fix this, because `syntax-ppss'
;; doesn't give any information about this. It might require
;; using semantic, which we probably don't want to mess with.
;; FIXME: It also doesn't avoid matching, e.g. the `map' in "(let
;; ((map". I'm not sure why.
,(rx (or bol (one-or-more space) ",")
(or "(" "#'"))
;; NOTE: The (0 nil) is required, although I don't understand
;; exactly why. This was confusing enough, following the
;; docstring for `font-lock-add-keywords'.
;; FIXME: This doesn't seem valid.
(0 nil)
;; Now we use a HIGHLIGHT MATCH-ANCHORED form to match the symbol
;; after the paren. We call the `highlight-function-calls--matcher'
;; function to test whether the face should be applied. We use a
;; PRE-MATCH-FORM to return a position at the end of the symbol,
;; which prevents matching function name symbols later on the
;; line, but we must not move the point in the process. We do
;; not use a POST-MATCH-FORM. Then we use the MATCH-HIGHLIGHT
;; form to highlight group 0, which is the whole symbol, we apply
;; the `highlight-function-calls-face' face, and we `prepend' it so
;; that it overrides existing faces; this way we even work with,
;; e.g. `rainbow-identifiers-mode', but only if we're activated
;; last.
(highlight-function-calls--matcher
(save-excursion
(forward-symbol 1)
(point))
nil
(0 highlight-function-calls--face-name prepend))))
"Keywords argument for `font-lock-add-keywords'.")