1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-05-07 13:53:19 -07:00

* lisp/treesit.el (treesit-outline-level): Add guard condition.

This commit is contained in:
Juri Linkov 2026-05-03 18:38:43 +03:00
parent 963d2ebffb
commit 5beeb4446f

View file

@ -4454,12 +4454,14 @@ For BOUND, MOVE, BACKWARD, LOOKING-AT, see the descriptions in
(setq level (1+ level)))
;; Continue counting the host nodes.
(dolist (parser (mapcar #'cdr (treesit-parsers-at (point) nil t '(global local))))
(let* ((node (treesit-node-at (point) parser))
(lang (treesit-parser-language parser))
(pred (alist-get lang treesit-aggregated-outline-predicate)))
(while (setq node (treesit-parent-until node pred))
(setq level (1+ level)))))
(when treesit-aggregated-outline-predicate
(dolist (parser (mapcar #'cdr (treesit-parsers-at
(point) nil t '(global local))))
(let* ((node (treesit-node-at (point) parser))
(lang (treesit-parser-language parser))
(pred (alist-get lang treesit-aggregated-outline-predicate)))
(while (setq node (treesit-parent-until node pred))
(setq level (1+ level))))))
level))