[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
master 7a13d012c8e 2/4: Print records inside data-debug
From: |
Po Lu |
Subject: |
master 7a13d012c8e 2/4: Print records inside data-debug |
Date: |
Fri, 5 Apr 2024 03:04:35 -0400 (EDT) |
branch: master
commit 7a13d012c8e17eb25fc8826cdd9ac3e96f912167
Author: Po Lu <luangruo@yahoo.com>
Commit: Po Lu <luangruo@yahoo.com>
Print records inside data-debug
* lisp/cedet/data-debug.el
(data-debug-insert-stuff-record-button): New function.
(data-debug-thing-alist): Register new function.
---
lisp/cedet/data-debug.el | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/lisp/cedet/data-debug.el b/lisp/cedet/data-debug.el
index 83ff451fa99..fda3edd602c 100644
--- a/lisp/cedet/data-debug.el
+++ b/lisp/cedet/data-debug.el
@@ -598,6 +598,29 @@ PREBUTTONTEXT is some text between prefix and the stuff
vector button."
)
)
+(defun data-debug-insert-stuff-record-button (stuffvector
+ prefix
+ prebuttontext)
+ "Insert a button representing STUFFVECTOR.
+PREFIX is the text that precedes the button.
+PREBUTTONTEXT is some text between prefix and the stuff vector button."
+ (let* ((start (point))
+ (end nil)
+ (str (format "#<record o' stuff: %d entries>" (length stuffvector)))
+ (tip str))
+ (insert prefix prebuttontext str)
+ (setq end (point))
+ (put-text-property (- end (length str)) end 'face
'font-lock-variable-name-face)
+ (put-text-property start end 'ddebug stuffvector)
+ (put-text-property start end 'ddebug-indent (length prefix))
+ (put-text-property start end 'ddebug-prefix prefix)
+ (put-text-property start end 'help-echo tip)
+ (put-text-property start end 'ddebug-function
+ 'data-debug-insert-stuff-vector-from-point)
+ (insert "\n")
+ )
+ )
+
;;; Symbol
;;
@@ -781,6 +804,9 @@ FACE is the face to use."
;; Vector of stuff
(vectorp . data-debug-insert-stuff-vector-button)
+
+ ;; Record of stuff
+ (recordp . data-debug-insert-stuff-record-button)
)
"Alist of methods used to insert things into an Ddebug buffer.")