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

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

[nongnu] elpa/treesit-fold 0cfd013956 055/417: Test


From: ELPA Syncer
Subject: [nongnu] elpa/treesit-fold 0cfd013956 055/417: Test
Date: Mon, 1 Jul 2024 10:02:10 -0400 (EDT)

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

    Test
---
 tree-sitter-fold-summary.el | 39 ++++++++++++++++++++++++---------------
 1 file changed, 24 insertions(+), 15 deletions(-)

diff --git a/tree-sitter-fold-summary.el b/tree-sitter-fold-summary.el
index 23c76ad02f..796c8681f5 100644
--- a/tree-sitter-fold-summary.el
+++ b/tree-sitter-fold-summary.el
@@ -25,12 +25,14 @@
 
 ;;; Code:
 
-(defcustom tree-sitter-fold-show-summary t
+(require 's)
+
+(defcustom tree-sitter-fold-summary-show t
   "Flag to show summary if available."
   :type 'boolean
   :group 'tree-sitter-fold)
 
-(defcustom tree-sitter-fold-max-summary-length 60
+(defcustom tree-sitter-fold-summary-max-length 60
   "Maximum length for summary to display."
   :type '(choice (const :tag "nil" nil)
                  (integer :tag "positive integer number"))
@@ -39,7 +41,7 @@
 (defcustom tree-sitter-fold-summary-exceeded-string "..."
   "String that added after display summary.
 This happens only when summary length is larger than variable
-`tree-sitter-fold-max-summary-length'."
+`tree-sitter-fold-summary-max-length'."
   :type 'string
   :group 'tree-sitter-fold)
 
@@ -48,26 +50,33 @@ This happens only when summary length is larger than 
variable
   :type 'string
   :group 'tree-sitter-fold)
 
-(defun tree-sitter-fold--keep-summary-length (summary)
-  "Keep the SUMMARY length to `tree-sitter-fold-max-summary-length'."
+(defun tree-sitter-fold-summary--keep-length (summary)
+  "Keep the SUMMARY length to `tree-sitter-fold-summary-max-length'."
   (let ((len-sum (length summary))
         (len-exc (length tree-sitter-fold-summary-exceeded-string)))
-    (when (< tree-sitter-fold-max-summary-length len-sum)
-      (setq summary (substring summary 0 (- 
tree-sitter-fold-max-summary-length len-exc))
+    (when (< tree-sitter-fold-summary-max-length len-sum)
+      (setq summary (substring summary 0 (- 
tree-sitter-fold-summary-max-length len-exc))
             summary (concat summary 
tree-sitter-fold-summary-exceeded-string))))
   summary)
 
-(defun tree-sitter-fold--get-summary (doc-str)
+(defun tree-sitter-fold-summary--remove-comments (doc-str)
+  "Remove comments from DOC-STR."
+  ;;(s-replace-regexp "^[ \t]*[*]")
+  (s-replace-regexp (regexp-quote comment-start-skip) "" doc-str)
+  )
+
+(defun tree-sitter-fold-summary--get (doc-str)
   "Extract summary from DOC-STR in order to display ontop of the overlay."
-  (let ((parser (cdr (origami-get-summary-parser))) summary)
-    (when parser
-      (setq summary (funcall parser doc-str))
-      (when (integerp tree-sitter-fold-max-summary-length)
-        (setq summary (tree-sitter-fold--keep-summary-length summary)))
+  (when (nth 4 (syntax-ppss))
+    (let ((summary (tree-sitter-fold-summary--remove-comments doc-str)))
+      (when (integerp tree-sitter-fold-summary-max-length)
+        (setq summary (tree-sitter-fold-summary--keep-length summary)))
       (when summary
         (setq summary (origami-summary-apply-format summary)
-              summary (propertize summary 'face 
'tree-sitter-fold-replacement-face))))
-    summary))
+              summary (propertize summary 'face 
'tree-sitter-fold-replacement-face)))
+      summary
+      nil  ; TODO: Remove this later on
+      )))
 
 (provide 'tree-sitter-fold-summary)
 ;;; tree-sitter-fold-summary.el ends here



reply via email to

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