假设我有一个如下所示的函数(在打印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))))
我想要一个可以将其转换为人类可以编写的命令的命令,例如以下命令。
(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))))
我了解,格式化elisp代码的方式不只一种,而且不同的人做的方式也不同。此外,我了解它有些主观。但是,要想出一套规则,使代码至少是体面的,应该相当容易。
实际上,我前一段时间确实很难做到这一点,但是我认为最好是在重新发明轮子之前先问一下。
请注意,我知道pp函数,但还不能完全实现:
(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))))
4
这有帮助吗?Elisp格式
—
路加福音
格式化必须是主观的。我不确定您会比的稍好版本做得更好
—
shosti
pp
。
@King谢谢,这当然是相关的。
—
马拉巴巴2014年