branch: elpa/treesit-fold
commit 76bba5243883f6c8bff51c744c31e287a045a9f5
Author: JenChieh <jcs090...@gmail.com>
Commit: JenChieh <jcs090...@gmail.com>

    feat: Basic support for Magik
---
 README.md               | 3 ++-
 treesit-fold-parsers.el | 7 +++++++
 treesit-fold-summary.el | 1 +
 treesit-fold.el         | 2 ++
 4 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/README.md b/README.md
index a294968fa6..1df42bb8d5 100644
--- a/README.md
+++ b/README.md
@@ -1,7 +1,7 @@
 > [!IMPORTANT]
 >
 > This package is code folding support for built-in [treesit.el][] (**since 
 > Emacs 29.1**).
-> 
+>
 > For external [tree-sitter.el][] (**support Emacs 26.1+**), please use 
 > [ts-fold][] instead.
 
 [![License: GPL 
v3](https://img.shields.io/badge/License-GPL%20v3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
@@ -151,6 +151,7 @@ These languages are in development:
 - Agda
 - Elm
 - Fortran
+- Magik
 - Pascal
 - Smithy
 
diff --git a/treesit-fold-parsers.el b/treesit-fold-parsers.el
index 125799f98d..77bdf52d49 100644
--- a/treesit-fold-parsers.el
+++ b/treesit-fold-parsers.el
@@ -472,6 +472,13 @@
     (repeat_statement     . treesit-fold-range-lua-repeat)
     (comment              . treesit-fold-range-lua-comment)))
 
+(defun treesit-fold-parsers-magik ()
+  "Rule set for Magik."
+  '((method . treesit-fold-range-seq)
+    (comment
+     . (lambda (node offset)
+         (treesit-fold-range-line-comment node offset "#")))))
+
 (defun treesit-fold-parsers-make ()
   "Rule set for Make."
   '((recipe . treesit-fold-range-make-recipe)
diff --git a/treesit-fold-summary.el b/treesit-fold-summary.el
index 06c35a8879..4bd7be6d37 100644
--- a/treesit-fold-summary.el
+++ b/treesit-fold-summary.el
@@ -241,6 +241,7 @@ type of content by checking the word boundary's existence."
     (llvm-mode              . treesit-fold-summary-elisp)
     (llvm-mir-mode          . treesit-fold-summary-elisp)
     (lua-mode               . treesit-fold-summary-lua-doc)
+    (magik-mode             . treesit-fold-summary-ruby-doc)
     (makefile-mode          . treesit-fold-summary-ruby-doc)
     (makefile-automake-mode . treesit-fold-summary-ruby-doc)
     (makefile-gmake-mode    . treesit-fold-summary-ruby-doc)
diff --git a/treesit-fold.el b/treesit-fold.el
index d9fe6cf22c..79358fbf3a 100644
--- a/treesit-fold.el
+++ b/treesit-fold.el
@@ -140,6 +140,8 @@
     (llvm-mir-mode          . ,(treesit-fold-parsers-llvm-mir))
     (lua-mode               . ,(treesit-fold-parsers-lua))
     (lua-ts-mode            . ,(treesit-fold-parsers-lua))
+    (magik-mode             . ,(treesit-fold-parsers-magik))
+    (magik-ts-mode          . ,(treesit-fold-parsers-magik))
     (makefile-mode          . ,(treesit-fold-parsers-make))
     (makefile-ts-mode       . ,(treesit-fold-parsers-make))
     (makefile-automake-mode . ,(treesit-fold-parsers-make))

Reply via email to