[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/treesit-fold ac7f2d0071 084/417: Try ruby
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/treesit-fold ac7f2d0071 084/417: Try ruby |
Date: |
Mon, 1 Jul 2024 10:02:14 -0400 (EDT) |
branch: elpa/treesit-fold
commit ac7f2d0071e478f9dab3aff179d082ad366e47e5
Author: Jen-Chieh Shen <jcs090218@gmail.com>
Commit: Jen-Chieh Shen <jcs090218@gmail.com>
Try ruby
---
tree-sitter-fold-parsers.el | 2 +-
tree-sitter-fold.el | 48 ++++++++++++++++++++++++---------------------
2 files changed, 27 insertions(+), 23 deletions(-)
diff --git a/tree-sitter-fold-parsers.el b/tree-sitter-fold-parsers.el
index 5cb5420fa4..eeb1472b2e 100644
--- a/tree-sitter-fold-parsers.el
+++ b/tree-sitter-fold-parsers.el
@@ -123,7 +123,7 @@
(defun tree-sitter-fold-parsers-ruby ()
"Rule sets for Ruby."
- '(()))
+ '((if . (tree-sitter-fold-range-seq 1 -2))))
(defun tree-sitter-fold-parsers-rust ()
"Rule sets for Rust."
diff --git a/tree-sitter-fold.el b/tree-sitter-fold.el
index 69224a2ac1..14b7779af1 100644
--- a/tree-sitter-fold.el
+++ b/tree-sitter-fold.el
@@ -329,28 +329,6 @@ If the current syntax node is not foldable, do nothing."
(setq beg (+ beg (car offset)) end (+ end (cdr offset)))
(cons beg end)))
-(defun tree-sitter-fold-range-python (node offset)
- "Return the fold range for `function_definition' and `class_definition'."
- (let* ((named-node (or (tsc-get-child-by-field node :superclasses)
- (tsc-get-child-by-field node :return_type)
- (tsc-get-child-by-field node :parameters)
- (tsc-get-child-by-field node :name)))
- ;; the colon is an anonymous node after return_type or parameters node
- (beg (tsc-node-end-position (tsc-get-next-sibling named-node)))
- (end (tsc-node-end-position node)))
- (setq beg (+ beg (car offset)) end (+ end (cdr offset)))
- (cons beg end)))
-
-(defun tree-sitter-fold-range-nix-function (node offset)
- "Return the fold range for `function' NODE in Nix express language."
- (let ((beg (thread-first node
- (tsc-get-child-by-field :formals)
- (tsc-get-next-sibling)
- (tsc-node-end-position)))
- (end (tsc-node-end-position node)))
- (setq beg (+ beg (car offset)) end (+ end (cdr offset)))
- (cons beg end)))
-
(defun tree-sitter-fold-range-go-type-declaration (node offset)
"Return the fold range for `type_declaration' NODE in Go language.
Only `struct_type' and `interface_type' nodes can be folded."
@@ -380,5 +358,31 @@ Only `struct_type' and `interface_type' nodes can be
folded."
(setq beg (+ beg (car offset)) end (+ end (cdr offset)))
(cons beg end)))
+(defun tree-sitter-fold-range-nix-function (node offset)
+ "Return the fold range for `function' NODE in Nix express language."
+ (let ((beg (thread-first node
+ (tsc-get-child-by-field :formals)
+ (tsc-get-next-sibling)
+ (tsc-node-end-position)))
+ (end (tsc-node-end-position node)))
+ (setq beg (+ beg (car offset)) end (+ end (cdr offset)))
+ (cons beg end)))
+
+(defun tree-sitter-fold-range-python (node offset)
+ "Return the fold range for `function_definition' and `class_definition'."
+ (let* ((named-node (or (tsc-get-child-by-field node :superclasses)
+ (tsc-get-child-by-field node :return_type)
+ (tsc-get-child-by-field node :parameters)
+ (tsc-get-child-by-field node :name)))
+ ;; the colon is an anonymous node after return_type or parameters node
+ (beg (tsc-node-end-position (tsc-get-next-sibling named-node)))
+ (end (tsc-node-end-position node)))
+ (setq beg (+ beg (car offset)) end (+ end (cdr offset)))
+ (cons beg end)))
+
+(defun tree-sitter-fold-range-ruby (node offset)
+ ""
+ )
+
(provide 'tree-sitter-fold)
;;; tree-sitter-fold.el ends here
- [nongnu] elpa/treesit-fold 2ad70aae0d 023/417: Remove unused format function, (continued)
- [nongnu] elpa/treesit-fold 2ad70aae0d 023/417: Remove unused format function, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 88b0e6eab0 039/417: Update doc, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 557df0a4fe 045/417: Add replacement customization, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 6603e0ddbb 057/417: Split parser, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 7127f4bbcc 061/417: Add comment, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold c6f58d41d5 068/417: Fix, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 445b209eb0 062/417: Fix compatible, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold f57a136cb8 075/417: Fix externals, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold b493772d32 080/417: Fix autoload, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 8d2599d54d 071/417: Fix warnings, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold ac7f2d0071 084/417: Try ruby,
ELPA Syncer <=
- [nongnu] elpa/treesit-fold 570305133e 003/417: version 0.0.1, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold cbe049d1bf 010/417: fix typo, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold ef390d67aa 022/417: Organize code, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold d09b81affc 026/417: Add Cask, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 82224e74b5 031/417: Add badges, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 8953a0f68b 030/417: Add CI, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold 399af3b42f 036/417: Add more doc, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold d81b48d22d 037/417: Organize order, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold cadd17a046 038/417: Add emoji, ELPA Syncer, 2024/07/01
- [nongnu] elpa/treesit-fold cd5ba51961 046/417: Update CASK, ELPA Syncer, 2024/07/01