Function: widget-browse-sexp

widget-browse-sexp is a byte-compiled function defined in wid-browse.el.gz.

Signature

(widget-browse-sexp WIDGET KEY VALUE)

Documentation

Insert description of WIDGET's KEY VALUE.

Nothing is assumed about value.

Source Code

;; Defined in /usr/src/emacs/lisp/wid-browse.el.gz
(defun widget-browse-sexp (_widget _key value)
  "Insert description of WIDGET's KEY VALUE.
Nothing is assumed about value."
  (let ((pp (condition-case signal
		(pp-to-string value)
	      (error (prin1-to-string signal)))))
    (when (string-match "\n\\'" pp)
      (setq pp (substring pp 0 (1- (length pp)))))
    (if (cond ((string-search "\n" pp)
	       nil)
	      ((> (length pp) (- (window-width) (current-column)))
	       nil)
	      (t t))
	(widget-insert pp)
      (widget-create 'push-button
		     :tag "show"
		     :action (lambda (widget &optional _event)
			       (with-output-to-temp-buffer
				   "*Pp Eval Output*"
				 (princ (widget-get widget :value))))
		     pp))))