[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/treesit-fold e25ece59b5 114/417: Add rust macro support
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/treesit-fold e25ece59b5 114/417: Add rust macro support |
Date: |
Mon, 1 Jul 2024 10:02:17 -0400 (EDT) |
branch: elpa/treesit-fold
commit e25ece59b5a7c9b2cdc904c7e9f8bfbdbaeb430a
Author: Jen-Chieh <jcs090218@gmail.com>
Commit: Jen-Chieh <jcs090218@gmail.com>
Add rust macro support
---
tree-sitter-fold-parsers.el | 2 ++
tree-sitter-fold.el | 14 ++++++++++++++
2 files changed, 16 insertions(+)
diff --git a/tree-sitter-fold-parsers.el b/tree-sitter-fold-parsers.el
index 4ef34fee1b..bcb4b33acf 100644
--- a/tree-sitter-fold-parsers.el
+++ b/tree-sitter-fold-parsers.el
@@ -41,6 +41,7 @@
(declare-function tree-sitter-fold-c-like-comment "tree-sitter-fold.el")
(declare-function tree-sitter-fold-range-python "tree-sitter-fold.el")
+(declare-function tree-sitter-fold-range-rust-macro "tree-sitter-fold.el")
;;
;; (@* "Parsers" )
@@ -158,6 +159,7 @@
(use_list . tree-sitter-fold-range-seq)
(field_initializer_list . tree-sitter-fold-range-seq)
(match_block . tree-sitter-fold-range-seq)
+ (macro_definition . (tree-sitter-fold-range-rust-macro 1 -1))
(block . tree-sitter-fold-range-seq)
(line_comment . (lambda (node offset)
(tree-sitter-fold-range-line-comment node
offset "///")))
diff --git a/tree-sitter-fold.el b/tree-sitter-fold.el
index 286c364d00..446427aa6b 100644
--- a/tree-sitter-fold.el
+++ b/tree-sitter-fold.el
@@ -417,5 +417,19 @@ more information."
;; TODO: ..
(progn ))
+(defun tree-sitter-fold-range-rust-macro (node offset)
+ "Return the fold range for `macro_definition' NODE in Rust.
+
+For arguments NODE and OFFSET, see function `tree-sitter-fold-range-seq' for
+more information."
+ (let* ((children (tsc-count-children node))
+ (result nil)
+ (last_bracket (tsc-get-nth-child node (- children 1)))
+ (first_bracket (tsc-get-nth-child node 2)))
+ (setq result (cons
+ (tsc-node-start-position first_bracket)
+ (+ 1 (tsc-node-start-position last_bracket))))
+ (tree-sitter-fold-util--cons-add result offset)))
+
(provide 'tree-sitter-fold)
;;; tree-sitter-fold.el ends here
- [nongnu] elpa/treesit-fold 342eb5ee1f 324/417: fix: Don't render indicators on non foldable node, (continued)
- [nongnu] elpa/treesit-fold 342eb5ee1f 324/417: fix: Don't render indicators on non foldable node, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold db6cd0ae4f 352/417: style: Ensure spaces, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 4b35e27148 311/417: feat: Add SQL support (#91), ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold d1b07c7bb0 320/417: Update CHANGELOG.md, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold d8a4bb568b 392/417: feat: Ensure indicators is refreshed after show/hide, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 11913082da 377/417: Ignore ds_store, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 731adc1607 362/417: fix(asm): Enhance assembly comment's folding, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 545ec26be1 412/417: docs: Add Vimscript to supported list, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 675e5e732c 414/417: fix: Allow error in continuous node, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 380ccb0d77 092/417: Remove macro, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold e25ece59b5 114/417: Add rust macro support,
ELPA Syncer <=
- [nongnu] elpa/treesit-fold bf9a0285dc 131/417: Add todo mark, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 01d6485398 177/417: Update CI, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 9f445a7fd9 180/417: Replace Cask with Eask, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold fe8f3ea94f 184/417: Update Eask, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 4f3575676f 384/417: chore: Merge upstream, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 59c57057ba 353/417: chore: Remove debug message, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 4d8e9ceef7 405/417: Add more nodes to elisp parser, remove `s` dependency, add vimscript (#6), ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold a549f22b3b 409/417: Update CHANGELOG.md, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 3ebdb45c3d 019/417: fix evil integration if install from nix, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold af0de4e135 188/417: merge setup-emacs, ELPA Syncer, 2024/07/01