[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/treesit-fold 7065c6b28f 122/417: Apply macro
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/treesit-fold 7065c6b28f 122/417: Apply macro |
Date: |
Mon, 1 Jul 2024 10:02:18 -0400 (EDT) |
branch: elpa/treesit-fold
commit 7065c6b28f697bebd57d618baf4c011f7a4df1b9
Author: Jen-Chieh Shen <jcs090218@gmail.com>
Commit: Jen-Chieh Shen <jcs090218@gmail.com>
Apply macro
---
tree-sitter-fold.el | 29 ++++++-----------------------
1 file changed, 6 insertions(+), 23 deletions(-)
diff --git a/tree-sitter-fold.el b/tree-sitter-fold.el
index 26eab2f554..f406c8e6f9 100644
--- a/tree-sitter-fold.el
+++ b/tree-sitter-fold.el
@@ -344,17 +344,6 @@ If the current syntax node is not foldable, do nothing."
If NEXT is non-nil, return next sibling. Otherwirse, return previouse
sibling."
(if next (tsc-get-next-sibling node) (tsc-get-prev-sibling node)))
-(defun tree-sitter-fold--get-node-by-text (node text next)
- "Return node with matching TEXT.
-Argument NODE is the starting node."
- (let ((current node) result)
- (while current
- (if (string-prefix-p text (string-trim (tsc-node-text current)))
- (setq result current
- current nil)
- (setq current (tree-sitter-fold--next-prev-node current next))))
- result))
-
(defun tree-sitter-fold--continuous-node-prefix (node prefix next)
"Iterate through node starting from NODE and compare node-text to PREFIX;
then return the last iterated node.
@@ -415,31 +404,25 @@ more information."
(defun tree-sitter-fold-range-c-preproc-if (node offset)
"Define fold range for `if' preprocessor."
(let* ((named-node (tsc-get-child-by-field node :condition))
- (next (or (tree-sitter-fold--get-node-by-text named-node "#elif" t)
- (tree-sitter-fold--get-node-by-text named-node "#else" t)
- (tree-sitter-fold--get-node-by-text named-node "#endif" t)))
+ (else (tsc-get-child-by-field node :alternative))
(beg (tsc-node-end-position named-node))
- (end (1- (tsc-node-start-position next))))
+ (end (1- (tsc-node-start-position else))))
(tree-sitter-fold-util--cons-add (cons beg end) offset)))
(defun tree-sitter-fold-range-c-preproc-ifdef (node offset)
"Define fold range for `ifdef' and `ifndef' preprocessor."
(when-let* ((named-node (tsc-get-child-by-field node :name))
- (next (or (tree-sitter-fold--get-node-by-text named-node "#elif"
t)
- (tree-sitter-fold--get-node-by-text named-node "#else"
t)
- (tree-sitter-fold--get-node-by-text named-node
"#endif" t)))
+ (else (tsc-get-child-by-field node :alternative))
(beg (tsc-node-end-position named-node))
- (end (1- (tsc-node-start-position next))))
+ (end (1- (tsc-node-start-position else))))
(tree-sitter-fold-util--cons-add (cons beg end) offset)))
(defun tree-sitter-fold-range-c-preproc-elif (node offset)
"Define fold range for `elif' preprocessor."
(when-let* ((named-node (tsc-get-child-by-field node :condition))
- (next (or (tree-sitter-fold--get-node-by-text named-node "#elif"
t) ; search itself
- (tree-sitter-fold--get-node-by-text named-node "#else"
t)
- (tree-sitter-fold--get-node-by-text named-node
"#endif" t)))
+ (else (tsc-get-child-by-field node :alternative))
(beg (tsc-node-end-position named-node))
- (end (1- (tsc-node-start-position next))))
+ (end (1- (tsc-node-start-position else))))
(tree-sitter-fold-util--cons-add (cons beg end) offset)))
(defun tree-sitter-fold-range-c-preproc-else (node offset)
- [nongnu] elpa/treesit-fold de128eaf10 076/417: Add CSS, (continued)
- [nongnu] elpa/treesit-fold de128eaf10 076/417: Add CSS, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 23bd9c2c05 077/417: Add CSS, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold fef90261f5 082/417: Apply offset, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 76e0dd263e 088/417: Hide indicators when single line, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 8fc88e29f5 089/417: Login update for Csharp comment, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 809bc9a0db 090/417: Remove go decalaration, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 422cff043e 100/417: Fix comment line, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 2d2179292f 105/417: Fix doc string, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 5062bf22a8 112/417: Mark temp, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 959191660b 115/417: Simplify, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 7065c6b28f 122/417: Apply macro,
ELPA Syncer <=
- [nongnu] elpa/treesit-fold f49df1ea3d 124/417: Update doc, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 6f15c1735a 125/417: Support javascript comment, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold eeb9c03bcc 127/417: Fix conitouse line, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold c33e5e7e0c 128/417: Temporily disable csharp, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 6b6f30eb4a 142/417: Add emoji, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 6aabbc6256 147/417: Update doc, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold e6ac78f0e2 154/417: SCALE AND CENTER, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold a806886568 161/417: Update support language list, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 2409596f33 004/417: readme: fix typo, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 362fc74774 011/417: R: fold brace_list instead, ELPA Syncer, 2024/07/01