Lines Matching defs:pp
0 ;;; pp.el --- pretty printer for Emacs Lisp
32 (defgroup pp nil
34 :prefix "pp-"
37 (defcustom pp-escape-newlines t
38 "*Value of `print-escape-newlines' used by pp-* functions."
40 :group 'pp)
43 (defun pp-to-string (object)
48 (set-buffer (generate-new-buffer " pp-to-string"))
53 (let ((print-escape-newlines pp-escape-newlines)
56 (pp-buffer)
61 (defun pp-buffer ()
92 (defun pp (object &optional stream)
97 (princ (pp-to-string object) (or stream standard-output)))
100 (defun pp-eval-expression (expression)
133 (pp (car values))
139 (defun pp-eval-last-sexp (arg)
140 "Run `pp-eval-expression' on sexp before point (which see).
160 (insert (pp-to-string (eval exp)))
161 (pp-eval-expression exp))))
164 ;; (pp-eval-expression ''(quote quote))
165 ;; (pp-eval-expression ''((quote a) (quote b)))
166 ;; (pp-eval-expression ''('a 'b)) ; same as above
167 ;; (pp-eval-expression ''((quote (quote quote)) (quote quote)))
169 ;; (pp-eval-expression ''quote)
170 ;; (pp-eval-expression ''(quote))
171 ;; (pp-eval-expression ''(quote . quote))
172 ;; (pp-eval-expression ''(quote a b))
173 ;; (pp-eval-expression ''(quotefoo))
174 ;; (pp-eval-expression ''(a b))
176 (provide 'pp) ; so (require 'pp) works
179 ;;; pp.el ends here