diff --git a/core/autoload/help.el b/core/autoload/help.el index aac15d8d0..3dd025fb8 100644 --- a/core/autoload/help.el +++ b/core/autoload/help.el @@ -101,3 +101,15 @@ in, or d) the module associated with the current major mode (see (unless (file-exists-p doc-path) (error "There is no documentation for this module")) (find-file doc-path)))) + +;;;###autoload +(defun doom*fix-helpful-prettyprint (value) + "TODO" + (with-temp-buffer + (delay-mode-hooks (emacs-lisp-mode)) + (pp value (current-buffer)) + (unless (or (symbolp value) (booleanp value) (keymapp value)) + (unless (hash-table-p value) + (fill-region (point-min) (point-max))) + (quiet! (indent-region (point-min) (point-max)))) + (string-trim (buffer-string)))) diff --git a/core/core-editor.el b/core/core-editor.el index 1e4d36367..4d8798c9a 100644 --- a/core/core-editor.el +++ b/core/core-editor.el @@ -231,7 +231,9 @@ extension, try to guess one." (global-set-key [remap describe-function] #'helpful-callable) (global-set-key [remap describe-command] #'helpful-command) (global-set-key [remap describe-variable] #'helpful-variable) - (global-set-key [remap describe-key] #'helpful-key)) + (global-set-key [remap describe-key] #'helpful-key) + + (advice-add #'helpful--pretty-print :override #'doom*fix-helpful-prettyprint)) (def-package! pcre2el :commands rxt-quote-pcre)