summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Gutov <dgutov@yandex.ru>2016-03-14 00:34:01 +0200
committerDmitry Gutov <dgutov@yandex.ru>2016-03-14 01:45:01 +0200
commit9d463aec8b3d848556bbe320c0cf8bd310528168 (patch)
treea18418ddf6d45fdf2bab2c15b68610407577b04a
parent5b705bc97d3928e6550d271c415c54e00e020011 (diff)
Tweak the left precedence of '=>'
* lisp/progmodes/ruby-mode.el (ruby-smie-grammar): Tweak the left precedence of '=>', to improve indentation and sexp navigation.
-rw-r--r--lisp/progmodes/ruby-mode.el2
-rw-r--r--test/indent/ruby.rb6
2 files changed, 7 insertions, 1 deletions
diff --git a/lisp/progmodes/ruby-mode.el b/lisp/progmodes/ruby-mode.el
index 9884b7e1ac..1c9f0f4308 100644
--- a/lisp/progmodes/ruby-mode.el
+++ b/lisp/progmodes/ruby-mode.el
@@ -388,7 +388,7 @@ It is used when `ruby-encoding-magic-comment-style' is set to `custom'."
(cases (exp "then" insts)
(cases "when" cases) (insts "else" insts))
(expseq (exp) );;(expseq "," expseq)
- (hashvals (id "=>" exp1) (hashvals "," hashvals))
+ (hashvals (exp1 "=>" exp1) (hashvals "," hashvals))
(insts-rescue-insts (insts)
(insts-rescue-insts "rescue" insts-rescue-insts)
(insts-rescue-insts "ensure" insts-rescue-insts))
diff --git a/test/indent/ruby.rb b/test/indent/ruby.rb
index 941fffb220..6ab814a421 100644
--- a/test/indent/ruby.rb
+++ b/test/indent/ruby.rb
@@ -415,6 +415,12 @@ foo(bar:
foo(:bar =>
tee)
+regions = foo(
+ OpenStruct.new(id: 0, name: "foo") => [
+ 10
+ ]
+)
+
{'a' => {
'b' => 'c',
'd' => %w(e f)