Subject: bug#63861: [PATCH] pp.el: New "pretty printing" code

From: Juri Linkov <[email-masked]>
Date: Mon, 05 Jun 2023 19:12:49 +0300

> FWIW, the change affects other functionality that uses `pp`, such as
> `C-h v`.  While working on (previous versions of) this code, I've had
> performance problems show up during the generation of `emoji-labels.el`.

When tried on emoji-labels.el, at the end it failed with

  (scan-error "Containing expression ends prematurely" 255866 255867)

>> Also, I think this warrants a NEWS entry and should be documented in
>> the ELisp manual.
>
> Definitely for NEWS, yes.  For the ELisp manual, currently we don't
> document `pp-buffer`, the closest I see is `indent-pp-sexp` (in
> `programs.texi`).

For indent-pp-sexp with a prefix arg used on defuns, the new version
is much better - it makes code more readable.  It has only one snag:
it inserts an empty line between the defun line and the docstring.