Function: edebug-eval-print-last-sexp
edebug-eval-print-last-sexp is an interactive and byte-compiled
function defined in edebug.el.gz.
Signature
(edebug-eval-print-last-sexp &optional NO-TRUNCATE)
Documentation
Evaluate sexp before point in outside environment; insert value.
This prints the value into current buffer.
If NO-TRUNCATE is non-nil (or interactively with a prefix
argument of zero), show the full length of the expression, not
limited by edebug-print-length or edebug-print-level.
Probably introduced at or before Emacs version 27.1.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/emacs-lisp/edebug.el.gz
(defun edebug-eval-print-last-sexp (&optional no-truncate)
"Evaluate sexp before point in outside environment; insert value.
This prints the value into current buffer.
If NO-TRUNCATE is non-nil (or interactively with a prefix
argument of zero), show the full length of the expression, not
limited by `edebug-print-length' or `edebug-print-level'."
(interactive
(list (and current-prefix-arg
(zerop (prefix-numeric-value current-prefix-arg)))))
(let* ((form (edebug-last-sexp))
(result-string
(edebug-outside-excursion
(if no-truncate
(let ((edebug-print-length nil)
(edebug-print-level nil))
(edebug-safe-prin1-to-string (edebug-safe-eval form)))
(edebug-safe-prin1-to-string (edebug-safe-eval form)))))
(standard-output (current-buffer)))
(princ "\n")
;; princ the string to get rid of quotes.
(princ result-string)
(princ "\n")))