Installing Emacs 24.4 broke my haxe mode. The mode for the HaXe language doesn't seem to be maintained any more so I'm trying to fix it myself.
Firstly, I had a cl-macroexpand-all
problem which forced me to add
(require 'cl)
before loading the mode.
Secondly, and that's where things get tricky, the indenting of typeful function declarations is broken (or at least that's where I think the problem is originated):
class Test {
public function notFailingAfterThis() {
}
public function butFailingAfterThis(): Int {
}
public function failingHere(): Void {
}
public function hereEvenMore() {
}
public function endOfTheFailure() {
}
}
My knowledge of Emacs lisp is too limited to find the error (if you want to test this yourself, you can download haxe mode's source and create this Test.hx
file).
HaXe allows typeless and typeful declarations, with a syntax similar to ActionScript.
var myVar: MyVarType;
function myFunction(): MyFunctionReturnType {}
var myUntypedVar;
function myUntypedFunction() {}
Any ideas how to fix this, before I'm forced to make the whole plugin myself? It seems to be a feature that put the carret at the right indenting after a carriage return, which it didn't do before I updated emacs.
aggressive-indent-mode
(since you add a tag for it, I assume you are using it) to see the error still occurs.aggressive-indent-mode
refers to this package.