emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[nongnu] elpa/treesit-fold d7af314083 160/417: Done html


From: ELPA Syncer
Subject: [nongnu] elpa/treesit-fold d7af314083 160/417: Done html
Date: Mon, 1 Jul 2024 10:02:22 -0400 (EDT)

branch: elpa/treesit-fold
commit d7af3140835c91c8ac78481485381a2eff94cfd3
Author: Jen-Chieh Shen <jcs090218@gmail.com>
Commit: Jen-Chieh Shen <jcs090218@gmail.com>

    Done html
---
 README.md                   | 10 +++++-----
 tree-sitter-fold-parsers.el |  6 +++---
 tree-sitter-fold.el         |  7 +++++++
 3 files changed, 15 insertions(+), 8 deletions(-)

diff --git a/README.md b/README.md
index 65389234f5..8ea43128d3 100644
--- a/README.md
+++ b/README.md
@@ -9,7 +9,7 @@ tree-sitter-fold builds on top of 
[elisp-tree-sitter](https://github.com/emacs-t
 to provide code folding base on the tree-sitter syntax tree.
 
 <p align="center">
-  <img src="./etc/screenshot.png" width="80%" height="80%"/>
+<img src="./etc/screenshot.png" width="80%" height="80%"/>
 </p>
 
 <!-- markdown-toc start - Don't edit this section. Run M-x 
markdown-toc-refresh-toc -->
@@ -67,6 +67,7 @@ then in Emacs:
 * Bash
 * C / C++ / C# / CSS
 * Go
+* HTML
 * Java / JavaScript / JSX / JSON
 * Nix
 * PHP / Python
@@ -77,8 +78,7 @@ then in Emacs:
 > These languages are in development:
 
 * Agda
-* HTML
-* XML
+* XML (upstream)
 
 ## 🔰 Contribution
 
@@ -90,7 +90,7 @@ has an excellent documentation on how to write `tree-sitter` 
queries.
 ## ⚖️ Indicators Mode
 
 <p align="center">
-  <img src="./etc/indicators.png" width="40%" height=480%"/>
+<img src="./etc/indicators.png" width="40%" height=480%"/>
 </p>
 
 You can enable this manually by doing the folloiwng
@@ -135,7 +135,7 @@ with this plugin.
 ## 📝 Summary
 
 <p align="center">
-  <img src="./etc/summary.gif" width="80%" height="80%"/>
+<img src="./etc/summary.gif" width="80%" height="80%"/>
 </p>
 
 This plugin automatically extract summary from the comment/document string,
diff --git a/tree-sitter-fold-parsers.el b/tree-sitter-fold-parsers.el
index d195245488..7dd2eecda9 100644
--- a/tree-sitter-fold-parsers.el
+++ b/tree-sitter-fold-parsers.el
@@ -44,6 +44,7 @@
 (declare-function tree-sitter-fold-range-c-preproc-if "tree-sitter-fold.el")
 (declare-function tree-sitter-fold-range-c-preproc-elif "tree-sitter-fold.el")
 (declare-function tree-sitter-fold-range-c-preproc-else "tree-sitter-fold.el")
+(declare-function tree-sitter-fold-range-html "tree-sitter-fold.el")
 (declare-function tree-sitter-fold-range-python "tree-sitter-fold.el")
 (declare-function tree-sitter-fold-range-ruby "tree-sitter-fold.el")
 (declare-function tree-sitter-fold-range-rust-macro "tree-sitter-fold.el")
@@ -109,9 +110,8 @@
 
 (defun tree-sitter-fold-parsers-html ()
   "Rule sets for HTML."
-  '((style_start_tag  . tree-sitter-fold-range-seq)
-    (script_start_tag . tree-sitter-fold-range-seq)
-    (comment          . (tree-sitter-fold-range-seq 1 -1))))
+  '((element . tree-sitter-fold-range-html)
+    (comment . (tree-sitter-fold-range-seq 1 -1))))
 
 (defun tree-sitter-fold-parsers-java ()
   "Rule sets for Java."
diff --git a/tree-sitter-fold.el b/tree-sitter-fold.el
index 86baad465b..deec57d367 100644
--- a/tree-sitter-fold.el
+++ b/tree-sitter-fold.el
@@ -436,6 +436,13 @@ more information."
               (end (tsc-node-end-position node)))
     (tree-sitter-fold-util--cons-add (cons beg end) offset)))
 
+(defun tree-sitter-fold-range-html (node offset)
+  "Define fold range for tag in HTML."
+  (let* ((beg (tsc-node-end-position (tsc-get-nth-child node 0)))
+         (end-node (tsc-get-nth-child node (1- (tsc-count-children node))))
+         (end (tsc-node-start-position end-node)))
+    (tree-sitter-fold-util--cons-add (cons beg end) offset)))
+
 (defun tree-sitter-fold-range-python (node offset)
   "Define fold range for `function_definition' and `class_definition'.
 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]