;;; Code:
+(require 'cl-print)
+
(defgroup trace nil
"Tracing facility for Emacs Lisp functions."
:prefix "trace-"
some global variables)."
(let ((print-circle t)
(print-escape-newlines t))
- (format "%s%s%d -> %S%s\n"
+ (format "%s%s%d -> %s%s\n"
(mapconcat #'char-to-string (make-string (max 0 (1- level)) ?|) " ")
(if (> level 1) " " "")
level
;; FIXME: Make it so we can click the function name to jump to its
;; definition and/or untrace it.
- (cons function args)
+ (cl-prin1-to-string (cons function args))
context)))
(defun trace-exit-message (function level value context)
some global variables)."
(let ((print-circle t)
(print-escape-newlines t))
- (format "%s%s%d <- %s: %S%s\n"
+ (format "%s%s%d <- %s: %s%s\n"
(mapconcat 'char-to-string (make-string (1- level) ?|) " ")
(if (> level 1) " " "")
level
function
;; Do this so we'll see strings:
- value
+ (cl-prin1-to-string value)
context)))
(defvar trace--timer nil)