unknown
2012-08-21 21:00:12 UTC
There seems to be a bug in the indenter that mis-indents
rebar.erl:commands/0, if it's indented as part of a larger region.
The multi-line binary string seems to be the problem.
https://github.com/basho/rebar/blob/491d52298e2/src/rebar.erl#L275-311
It works correctly when indenting the function itself with C-c C-q.
Hi,rebar.erl:commands/0, if it's indented as part of a larger region.
The multi-line binary string seems to be the problem.
https://github.com/basho/rebar/blob/491d52298e2/src/rebar.erl#L275-311
It works correctly when indenting the function itself with C-c C-q.
Here is a patch for indenting of multi-line strings, like the
one previously reported by Tuncer Ayaz.
git fetch git://github.com/tomas-abrahamsson/otp.git
emacs-indent-multi-line-string
https://github.com/tomas-abrahamsson/otp/compare/emacs-indent-multi-line-string
https://github.com/tomas-abrahamsson/otp/compare/emacs-indent-multi-line-string.patch
Here's an illustration of what the patch does,
excerpt from the commit msg:
Previously, typing C-M-\ or M-x indent-region RET on the following:
somefunction() ->
S = <<"
text1 somemore1
text2 somemore2
">>,
io:put_chars(S).
resulted in this (note the "text2" line):
somefunction() ->
S = <<"
text1 somemore1
text2 somemore2
">>,
io:put_chars(S).
Now, the indentation inside the multi-line string is left unchanged.
This is in line with how the Emacs C and Lisp mode treats multi-line
strings when indenting regions.
BRs
Tomas