GNU bug report logs - #17213
24.3.50; ruby-mode: misindented continuation method calls inside parens

Previous Next

Package: emacs;

Reported by: Dmitry Gutov <dgutov <at> yandex.ru>

Date: Mon, 7 Apr 2014 02:47:02 UTC

Severity: minor

Found in version 24.3.50

Done: Dmitry Gutov <dgutov <at> yandex.ru>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Dmitry Gutov <dgutov <at> yandex.ru>
To: 17213 <at> debbugs.gnu.org
Subject: bug#17213: 24.3.50; ruby-mode: misindented continuation method calls inside parens
Date: Mon, 07 Apr 2014 05:45:27 +0300
Example:

abc(foo
     .bar,
    tee
     .qux)

The lines with dots should be indented one column more.

Same if I move either dot to the end of the previous line, but keep the
called methods where they are.

I can fix that for the second method call with the patch at the bottom,
but the first one is unaffected. Not sure what would be the best fix for
it.

On a related note, it's worrisome that indentation of the these two
similar pieces of code in fairly similar positions is governed by
different logic.


=== modified file 'lisp/progmodes/ruby-mode.el'
--- lisp/progmodes/ruby-mode.el	2014-03-27 08:21:15 +0000
+++ lisp/progmodes/ruby-mode.el	2014-04-04 03:28:12 +0000
@@ -658,7 +658,7 @@
     (`(:before . ".")
      (if (smie-rule-sibling-p)
          (and ruby-align-chained-calls 0)
-       ruby-indent-level))
+       (smie-rule-parent ruby-indent-level)))
     (`(:before . ,(or `"else" `"then" `"elsif" `"rescue" `"ensure"))
      (smie-rule-parent))
     (`(:before . "when")





This bug report was last modified 9 years and 132 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.