Disons que j'ai une fonction qui ressemble à ce qui suit (comme c'est souvent le cas lors de l'impression d'une sortie elisp).
(defun my-example-function () (let ((a (do-something)) (b (do-something))) (setq someone me) (with-current-buffer b (do-that (or this (and that those))) (format "%s" a))))
Je voudrais une commande qui puisse transformer cela en quelque chose qu'un humain écrirait, comme ce qui suit.
(defun my-example-function ()
(let ((a (do-something))
(b (do-something)))
(setq someone me)
(with-current-buffer b
(do-that (or this (and that those)))
(format "%s" a))))
Je comprends qu'il existe plus d'une façon de formater un morceau de code elisp , et différents êtres humains le font différemment. De plus, je comprends que c'est quelque peu subjectif. Mais il devrait être assez facile de trouver un ensemble de règles qui aboutisse à un code au moins décent.
J'ai pensé à le faire moi-même il y a quelque temps, mais j'ai pensé qu'il valait mieux demander avant de réinventer la roue.
Remarque, je connais la fonction pp , mais elle n'y arrive pas vraiment:
(defun my-example-function nil
(let
((a
(do-something))
(b
(do-something)))
(setq someone me)
(with-current-buffer b
(do-that
(or this
(and that those)))
(format "%s" a))))
pp
.