Function: treesit-fold-close-all
treesit-fold-close-all is an interactive and byte-compiled function
defined in treesit-fold.el.
Signature
(treesit-fold-close-all)
Documentation
Fold all foldable syntax nodes in the buffer.
This function has :after advice: treesit-fold--after-command.
Key Bindings
This command is not in any keymaps.
Source Code
;; Defined in /nix/store/mpy1l6b4hlzpp59l4vbahq83hqa821ci-emacs-packages-deps/share/emacs/site-lisp/elpa/treesit-fold-0.2.1/treesit-fold.el
;;;###autoload
(defun treesit-fold-close-all ()
"Fold all foldable syntax nodes in the buffer."
(interactive)
(treesit-fold--ensure-ts
(let (nodes)
(let* ((treesit-fold-indicators-mode)
(treesit-fold-on-fold-hook)
(node (treesit-buffer-root-node))
(patterns (seq-mapcat (lambda (fold-range) `((,(car fold-range)) @name))
(alist-get major-mode treesit-fold-range-alist)))
(query (treesit-query-compile (treesit-node-language node) patterns)))
(setq nodes (treesit-query-capture node query)
nodes (cl-remove-if (lambda (node)
;; Removed if on same line
(treesit-fold--node-range-on-same-line (cdr node)))
nodes))
(thread-last nodes
(mapcar #'cdr)
(mapc #'treesit-fold-close)))
(when nodes
(run-hooks 'treesit-fold-on-fold-hook)
t))))