branch: elpa/swift-mode commit cba45387fa1e9fcb33be203bc2a3cdda6ce5f830 Merge: 9cf667c 67fd6a9 Author: Arthur Evstifeev <m...@ap4y.me> Commit: Arthur Evstifeev <m...@ap4y.me>
Merge pull request #61 from ckruse/fix_55 Fix #55: indentation of multiline operator expressions --- swift-mode.el | 3 ++- test/indentation-tests.el | 13 +++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/swift-mode.el b/swift-mode.el index 449d134..2602d26 100644 --- a/swift-mode.el +++ b/swift-mode.el @@ -286,7 +286,8 @@ ;; Apply swift-indent-multiline-statement-offset if ;; operator is the last symbol on the line (`(:before . "OP") - (if (looking-at ".[\n]") + (if (and (looking-at ".[\n]") + (not (smie-rule-sibling-p))) (smie-rule-parent swift-indent-multiline-statement-offset))) ;; Indent second line of the multi-line class diff --git a/test/indentation-tests.el b/test/indentation-tests.el index 1c4b1fb..cb810b1 100644 --- a/test/indentation-tests.el +++ b/test/indentation-tests.el @@ -919,6 +919,19 @@ let foo = bar > |baz ") +(check-indentation indents-multiline-operators-only-once + " +1 + + 2 + 5 * +|3 +" " +1 + + 2 + 5 * + |3 +" +) + + (provide 'indentation-tests) ;;; indentation-tests.el ends here