我正在使用actionscript-mode-connors.el在 emacs 中缩进 Actionscript 3 代码。
我已经弄清楚了大部分事情,但困扰我的一件事是当我使用内联闭包作为函数参数时,函数内部的缩进被搞砸了。
例如:
var foo:int = some_function(
bar,
baz,
function():void {
return qux();
},
zap);
我希望 return qux() 成为前一行函数声明的单个缩进,而不是打开括号的单个缩进。“bar”的缩进过去也被搞砸了,但我用
(add-hook 'actionscript-mode-hook
(lambda ()
(c-set-offset 'arglist-intro '+)
(c-set-offset 'arglist-close 0)))
通常在这里我会使用 Cc Cs 来确定我需要更改哪些语法符号,但是“return qux()”行上的问题是语法上下文是
((arglist-cont-nonempty 731 758) (brace-list-intro 731))
这些数字指的是“some_function”行。'arglist-cont-nonempty' 似乎是一个错误,它似乎应该是 'arglist-cont',因为在该行的 open paren 之后没有任何内容。我无法更改 'arglist-cont-nonempty' 的缩进,因为这会影响 open paren 也不会结束 'some_function' 行的情况。
我怎样才能解决这个问题?