Function: treesit--font-lock-level-setter

treesit--font-lock-level-setter is a byte-compiled function defined in treesit.el.gz.

Signature

(treesit--font-lock-level-setter SYM VAL)

Documentation

Custom setter for treesit-font-lock-level.

Set the default value of SYM to VAL, recompute fontification features and refontify for every buffer where tree-sitter-based fontification is enabled.

Source Code

;; Defined in /usr/src/emacs/lisp/treesit.el.gz
(defun treesit--font-lock-level-setter (sym val)
  "Custom setter for `treesit-font-lock-level'.
Set the default value of SYM to VAL, recompute fontification
features and refontify for every buffer where tree-sitter-based
fontification is enabled."
  (set-default sym val)
  (and (treesit-available-p)
       (named-let loop ((res nil)
                        (buffers (buffer-list)))
         (if (null buffers)
             (mapc (lambda (b)
                     (with-current-buffer b
                       (setq-local treesit-font-lock-level val)
                       (treesit-font-lock-recompute-features)
                       (treesit-font-lock-fontify-region (point-min)
                                                         (point-max))))
                   res)
           (let ((buffer (car buffers)))
             (with-current-buffer buffer
               (if treesit-font-lock-settings
                   (loop (append res (list buffer)) (cdr buffers))
                 (loop res (cdr buffers)))))))))