Issue #6854 has been updated by dgutov (Dmitry Gutov).


> Use Emacs-bundled ruby-mode.el.

I'm maintaining it.

Should I stop merging changes from this ruby-mode into Emacs-bundled version?
----------------------------------------
Bug #6854: ruby-mode.el has radical changes in `ruby-deep-indent-paren' logic
https://bugs.ruby-lang.org/issues/6854#change-34756

Author: dgutov (Dmitry Gutov)
Status: Closed
Priority: Normal
Assignee: nobu (Nobuyoshi Nakada)
Category: misc
Target version: 
ruby -v: ruby 1.9.2p290 (2011-07-09) [i386-mingw32]


The following commits make a non-backward compatible change in how `ruby-deep-indent-paren' works:

https://github.com/ruby/ruby/commit/85df40e9ab4559cd4ddde3f106ab56c76a808cc8
https://github.com/ruby/ruby/commit/6b0dc7fd81b25bc66681548b8b82f38258f7e08c
https://github.com/ruby/ruby/commit/862048e28d26112af1e67205cfd1c16564590bce
https://github.com/ruby/ruby/commit/d9e6b7d6a5e81afb588d79ef923b70890cdec4ba

Basically, the change disables deep-indent in all types of parens in (almost?) all situations.
If disabling deep-indent was the idea, I think changing the default value of this variable to nil would be sufficient.

Personally, I adopted another approach: deep-indent is on by default, but it's disabled when the first array element/call argument is not on the same line as the paren. This is similar to how indentation works in js-mode, for example.
To implement that, I imagine we'd need to make this check in `ruby-deep-indent-paren-p' instead of (ruby-expr-beg) call.

I can make a patch that would do that, but first I'd really like to see an explanation and/or examples of what exactly the changes above were meant to accomplish.


-- 
http://bugs.ruby-lang.org/