Angenommen, ich habe eine Funktion, die wie folgt aussieht (wie es häufig beim Drucken von Elisp-Ausgaben der Fall ist).
(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))))
Ich hätte gerne einen Befehl, der das in etwas verwandelt, was ein Mensch schreiben würde, wie zum Beispiel den folgenden.
(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))))
Ich verstehe, dass es mehr als eine Möglichkeit gibt, einen Teil des Elisp-Codes zu formatieren , und verschiedene Menschen machen es unterschiedlich. Darüber hinaus verstehe ich, dass es etwas subjektiv ist. Es sollte jedoch ziemlich einfach sein, Regeln zu entwickeln, die zu mindestens anständigem Code führen.
Eigentlich habe ich vor einiger Zeit darüber nachgedacht, aber ich dachte, es ist besser zu fragen, bevor ich das Rad neu erfinde.
Beachten Sie, dass mir die pp- Funktion bekannt ist, sie jedoch nicht so gut funktioniert:
(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
.