Skip to content

Commit 352c2e0

Browse files
committed
Bump version
1 parent 3699d29 commit 352c2e0

File tree

2 files changed

+51
-51
lines changed

2 files changed

+51
-51
lines changed

Eask

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
(package "treesit-fold"
2-
"0.1.0"
2+
"0.2.0"
33
"Code folding using treesit")
44

55
(website-url "https://github.com/emacs-tree-sitter/treesit-fold")

treesit-fold.el

Lines changed: 50 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
;; Shen, Jen-Chieh <jcs090218@gmail.com>
1010
;; Maintainer: Shen, Jen-Chieh <jcs090218@gmail.com>
1111
;; URL: https://github.com/emacs-tree-sitter/treesit-fold
12-
;; Version: 0.1.0
12+
;; Version: 0.2.0
1313
;; Package-Requires: ((emacs "29.1"))
1414
;; Keywords: convenience folding tree-sitter
1515

@@ -504,87 +504,87 @@ current `major-mode'.
504504
If no NODE is found in point, do nothing."
505505
(interactive)
506506
(treesit-fold--ensure-ts
507-
(when-let* ((node (or node (treesit-fold--foldable-node-at-pos))))
508-
;; make sure I do not create multiple overlays for the same fold
509-
(when-let* ((ov (treesit-fold-overlay-at node)))
510-
(delete-overlay ov))
511-
(when-let* ((range (treesit-fold--get-fold-range node))
512-
(ov (treesit-fold--create-overlay range)))
513-
(run-hooks 'treesit-fold-on-fold-hook)
514-
ov))))
507+
(when-let* ((node (or node (treesit-fold--foldable-node-at-pos))))
508+
;; make sure I do not create multiple overlays for the same fold
509+
(when-let* ((ov (treesit-fold-overlay-at node)))
510+
(delete-overlay ov))
511+
(when-let* ((range (treesit-fold--get-fold-range node))
512+
(ov (treesit-fold--create-overlay range)))
513+
(run-hooks 'treesit-fold-on-fold-hook)
514+
ov))))
515515

516516
;;;###autoload
517517
(defun treesit-fold-open ()
518518
"Open the fold of the syntax node in which `point' resides.
519519
If the current node is not folded or not foldable, do nothing."
520520
(interactive)
521521
(treesit-fold--ensure-ts
522-
(when-let* ((node (treesit-fold--foldable-node-at-pos))
523-
(ov (treesit-fold-overlay-at node)))
524-
(delete-overlay ov)
525-
(run-hooks 'treesit-fold-on-fold-hook)
526-
t)))
522+
(when-let* ((node (treesit-fold--foldable-node-at-pos))
523+
(ov (treesit-fold-overlay-at node)))
524+
(delete-overlay ov)
525+
(run-hooks 'treesit-fold-on-fold-hook)
526+
t)))
527527

528528
;;;###autoload
529529
(defun treesit-fold-open-recursively ()
530530
"Open recursively folded syntax NODE that are contained in the node at point."
531531
(interactive)
532532
(treesit-fold--ensure-ts
533-
(when-let* ((node (treesit-fold--foldable-node-at-pos))
534-
(beg (treesit-node-start node))
535-
(end (treesit-node-end node))
536-
(nodes (treesit-fold--overlays-in 'invisible 'treesit-fold beg end)))
537-
(mapc #'delete-overlay nodes)
538-
(run-hooks 'treesit-fold-on-fold-hook)
539-
t)))
533+
(when-let* ((node (treesit-fold--foldable-node-at-pos))
534+
(beg (treesit-node-start node))
535+
(end (treesit-node-end node))
536+
(nodes (treesit-fold--overlays-in 'invisible 'treesit-fold beg end)))
537+
(mapc #'delete-overlay nodes)
538+
(run-hooks 'treesit-fold-on-fold-hook)
539+
t)))
540540

541541
;;;###autoload
542542
(defun treesit-fold-close-all ()
543543
"Fold all foldable syntax nodes in the buffer."
544544
(interactive)
545545
(treesit-fold--ensure-ts
546-
(let (nodes)
547-
(let* ((treesit-fold-indicators-mode)
548-
(treesit-fold-on-fold-hook)
549-
(node (treesit-buffer-root-node))
550-
(patterns (seq-mapcat (lambda (fold-range) `((,(car fold-range)) @name))
551-
(alist-get major-mode treesit-fold-range-alist)))
552-
(query (treesit-query-compile (treesit-node-language node) patterns)))
553-
(setq nodes (treesit-query-capture node query)
554-
nodes (cl-remove-if (lambda (node)
555-
;; Removed if on same line
556-
(treesit-fold--node-range-on-same-line (cdr node)))
557-
nodes))
558-
(thread-last nodes
559-
(mapcar #'cdr)
560-
(mapc #'treesit-fold-close)))
561-
(when nodes
562-
(run-hooks 'treesit-fold-on-fold-hook)
563-
t))))
546+
(let (nodes)
547+
(let* ((treesit-fold-indicators-mode)
548+
(treesit-fold-on-fold-hook)
549+
(node (treesit-buffer-root-node))
550+
(patterns (seq-mapcat (lambda (fold-range) `((,(car fold-range)) @name))
551+
(alist-get major-mode treesit-fold-range-alist)))
552+
(query (treesit-query-compile (treesit-node-language node) patterns)))
553+
(setq nodes (treesit-query-capture node query)
554+
nodes (cl-remove-if (lambda (node)
555+
;; Removed if on same line
556+
(treesit-fold--node-range-on-same-line (cdr node)))
557+
nodes))
558+
(thread-last nodes
559+
(mapcar #'cdr)
560+
(mapc #'treesit-fold-close)))
561+
(when nodes
562+
(run-hooks 'treesit-fold-on-fold-hook)
563+
t))))
564564

565565
;;;###autoload
566566
(defun treesit-fold-open-all ()
567567
"Unfold all syntax nodes in the buffer."
568568
(interactive)
569569
(treesit-fold--ensure-ts
570-
(when-let* ((nodes (treesit-fold--overlays-in 'invisible 'treesit-fold)))
571-
(mapc #'delete-overlay nodes)
572-
(run-hooks 'treesit-fold-on-fold-hook)
573-
t)))
570+
(when-let* ((nodes (treesit-fold--overlays-in 'invisible 'treesit-fold)))
571+
(mapc #'delete-overlay nodes)
572+
(run-hooks 'treesit-fold-on-fold-hook)
573+
t)))
574574

575575
;;;###autoload
576576
(defun treesit-fold-toggle ()
577577
"Toggle the syntax node at `point'.
578578
If the current syntax node is not foldable, do nothing."
579579
(interactive)
580580
(treesit-fold--ensure-ts
581-
(if-let* ((node (treesit-fold--foldable-node-at-pos (point)))
582-
(ov (treesit-fold-overlay-at node)))
583-
(progn
584-
(delete-overlay ov)
585-
(run-hooks 'treesit-fold-on-fold-hook)
586-
t)
587-
(treesit-fold-close))))
581+
(if-let* ((node (treesit-fold--foldable-node-at-pos (point)))
582+
(ov (treesit-fold-overlay-at node)))
583+
(progn
584+
(delete-overlay ov)
585+
(run-hooks 'treesit-fold-on-fold-hook)
586+
t)
587+
(treesit-fold-close))))
588588

589589
(defun treesit-fold--after-command (&rest _)
590590
"Function call after interactive commands."

0 commit comments

Comments
 (0)