diff --git a/src/erlfmt.erl b/src/erlfmt.erl index f04bd005..3732c2c8 100644 --- a/src/erlfmt.erl +++ b/src/erlfmt.erl @@ -538,15 +538,11 @@ parse(Tokens) -> end. ignore_state_pre(PreComments, FileName, Acc) -> - case ignore_state(PreComments, FileName, Acc) of - 'end' -> false; - Other -> Other - end. + ignore_state(PreComments, FileName, Acc). ignore_state_post(PostComments, FileName, Acc) -> case ignore_state(PostComments, FileName, Acc) of ignore -> false; - 'end' -> false; Other -> Other end. @@ -570,7 +566,7 @@ ignore_state([Line | Lines], FileName, Loc, Rest, Acc0) -> "erlfmt-ignore-begin" ++ R when ?IS_IGNORE_REASON(R) -> throw({error, {FileName, Loc, ?MODULE, {invalid_ignore, 'begin', Acc0}}}); "erlfmt-ignore-end" ++ R when ?IS_IGNORE_REASON(R), Acc0 =:= 'begin' -> - 'end'; + false; "erlfmt-ignore-end" ++ R when ?IS_IGNORE_REASON(R) -> throw({error, {FileName, Loc, ?MODULE, {invalid_ignore, 'end', Acc0}}}); % New-style erlfmt:ignore @@ -583,7 +579,7 @@ ignore_state([Line | Lines], FileName, Loc, Rest, Acc0) -> "erlfmt:ignore-begin" ++ R when ?IS_IGNORE_REASON(R) -> throw({error, {FileName, Loc, ?MODULE, {invalid_ignore, 'begin', Acc0}}}); "erlfmt:ignore-end" ++ R when ?IS_IGNORE_REASON(R), Acc0 =:= 'begin' -> - 'end'; + false; "erlfmt:ignore-end" ++ R when ?IS_IGNORE_REASON(R) -> throw({error, {FileName, Loc, ?MODULE, {invalid_ignore, 'end', Acc0}}}); _ -> diff --git a/test/erlfmt_SUITE_data/ignore_format_many.erl b/test/erlfmt_SUITE_data/ignore_format_many.erl index db3d822e..8189c6ac 100644 --- a/test/erlfmt_SUITE_data/ignore_format_many.erl +++ b/test/erlfmt_SUITE_data/ignore_format_many.erl @@ -40,6 +40,11 @@ f() -> ok. % this is ok g() -> ok. % this is also ok % erlfmt:ignore-end I'm done with this style +% erlfmt:ignore-begin Here we go again... +a1() -> ok. % again +a2() -> ok. % ditto +% erlfmt:ignore-end Now I'm really done + h() -> ok. % blah %% TODO write emit diff --git a/test/erlfmt_SUITE_data/ignore_format_many.erl.formatted b/test/erlfmt_SUITE_data/ignore_format_many.erl.formatted index 74f6a242..0fb327a4 100644 --- a/test/erlfmt_SUITE_data/ignore_format_many.erl.formatted +++ b/test/erlfmt_SUITE_data/ignore_format_many.erl.formatted @@ -40,6 +40,11 @@ f() -> ok. % this is ok g() -> ok. % this is also ok % erlfmt:ignore-end I'm done with this style +% erlfmt:ignore-begin Here we go again... +a1() -> ok. % again +a2() -> ok. % ditto +% erlfmt:ignore-end Now I'm really done + % blah h() -> ok.