信息页面没有提到这个声明。我找到了将其设置为 1、2 或 3 的用途,但还有哪些其他选项?它究竟有什么作用?

从表面上看,数字似乎表示宏名称后面的行数,以进一步向右缩进,但在这种情况下,我如何告诉它将所有表单缩进为第一个?

例子:
(declare (indent 1)) 这样做:

(-iter
    (with (a b c))
  (for i from 0 to 5)
  (collect i)
  (message "i: %s" i))
(declare (indent 2)) 这样做:
(-iter
    (with (a b c))
    (for i from 0 to 5)
  (collect i)
  (message "i: %s" i))
(declare (indent 256))(或任何足够大的数字)执行以下操作:
(-iter
    (with (a b c))
    (for i from 0 to 5)
    (collect i)
    (message "i: %s" i))

我想做最后一个,除了提供一个任意大的数字。有什么办法可以告诉“全部”或某些事情有这种效果吗?

最佳答案

这是 in the manual :

C-hig (elisp) Indenting Macros RET

链接到 declare 的索引条目,仅供引用。 (Emacs 24.2.1)

关于emacs - (declare (indent *)) 如何工作?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13552332/

10-12 20:09