diff options
author | Stefan Monnier <monnier@iro.umontreal.ca> | 2017-03-02 02:08:08 -0500 |
---|---|---|
committer | Stefan Monnier <monnier@iro.umontreal.ca> | 2017-03-02 02:08:32 -0500 |
commit | 2c18969c810f338d73beda592ee5af7103132e97 (patch) | |
tree | 234d78e2407da79e01b7297240864436d7e300e0 | |
parent | 41f91d367ac2ecac253057ff38589e8393cbeffd (diff) | |
download | emacs-2c18969c810f338d73beda592ee5af7103132e97.tar.gz |
* lisp/help-fns.el (describe-variable): Use cl-print for the value
Use `pp-buffer' rather than `pp' so as to avoid calling prin1 twice.
-rw-r--r-- | lisp/help-fns.el | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/lisp/help-fns.el b/lisp/help-fns.el index 21f76e100a7..69a6113eda1 100644 --- a/lisp/help-fns.el +++ b/lisp/help-fns.el @@ -391,12 +391,12 @@ suitable file is found, return nil." ;; If lots of ordinary text characters run this command, ;; don't mention them one by one. (if (< (length non-modified-keys) 10) - (princ (mapconcat 'key-description keys ", ")) + (princ (mapconcat #'key-description keys ", ")) (dolist (key non-modified-keys) (setq keys (delq key keys))) (if keys (progn - (princ (mapconcat 'key-description keys ", ")) + (princ (mapconcat #'key-description keys ", ")) (princ ", and many ordinary text characters")) (princ "many ordinary text characters")))) (when (or remapped keys non-modified-keys) @@ -842,15 +842,22 @@ it is displayed along with the global value." (let ((line-beg (line-beginning-position)) (print-rep (let ((rep - (let ((print-quoted t)) - (prin1-to-string val)))) + (let ((print-quoted t) + (print-circle t)) + (cl-prin1-to-string val)))) (if (and (symbolp val) (not (booleanp val))) (format-message "`%s'" rep) rep)))) (if (< (+ (length print-rep) (point) (- line-beg)) 68) (insert " " print-rep) (terpri) - (pp val) + (let ((buf (current-buffer))) + (with-temp-buffer + (insert print-rep) + (pp-buffer) + (let ((pp-buffer (current-buffer))) + (with-current-buffer buf + (insert-buffer-substring pp-buffer))))) ;; Remove trailing newline. (and (= (char-before) ?\n) (delete-char -1))) (let* ((sv (get variable 'standard-value)) |