CLIPS 和 JESS 是用于 AI 和规则引擎的 lispy 语言。他们的 EMACS 源自 lisp-mode。正确格式化最重要的形式是 defrule,它有助于提高可读性。默认情况下,正常的 lisp 模式格式是这样使用的:
(defrule any-foo
"This is a rule for any-foo."
?f <- (foo)
=>
(do-something-to ?f))
所需的格式将是这样的,可选文档中有 2 个字符,右箭头有 2 个字符,其他所有 6 个字符,如下所示:
(defrule any-foo
"This is a rule for any-foo."
?f <- (foo)
=>
(do-something-to ?f))
有很多关于 EMACS 中的自定义缩进的资源,但是这个跳出来了,因为它让我想知道我是否可以截取任何匹配右箭头的格式并截取它。当我进一步阅读时,我的理解更像是您可以为符号表达式编写自定义格式化函数,但是,右箭头不是那样的。我不想为整个顶层编写格式化函数,也不确定如何。
获得这种所需格式样式的正确方法是什么?