mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
[ruby/irb] Fix auto indent with closed brace
A closed brace in auto-indent shouldn't affect the next brace in the same line, but it behaves like below: p() { } It's a bug. https://github.com/ruby/irb/commit/fbe59e344f
This commit is contained in:
parent
0719e1be11
commit
8b8cc01229
2 changed files with 15 additions and 0 deletions
|
@ -394,6 +394,7 @@ class RubyLex
|
|||
spaces_of_nest.pop
|
||||
corresponding_token_depth = nil
|
||||
end
|
||||
open_brace_on_line -= 1
|
||||
when :on_kw
|
||||
next if index > 0 and @tokens[index - 1][3].allbits?(Ripper::EXPR_FNAME)
|
||||
case t[2]
|
||||
|
|
|
@ -112,5 +112,19 @@ module TestIRB
|
|||
assert_indenting(lines, row.new_line_spaces, true)
|
||||
end
|
||||
end
|
||||
|
||||
def test_a_closed_brace_and_not_closed_brace_in_a_line
|
||||
input_with_correct_indents = [
|
||||
Row.new(%q(p() {), nil, 2),
|
||||
Row.new(%q(}), 0, 0),
|
||||
]
|
||||
|
||||
lines = []
|
||||
input_with_correct_indents.each do |row|
|
||||
lines << row.content
|
||||
assert_indenting(lines, row.current_line_spaces, false)
|
||||
assert_indenting(lines, row.new_line_spaces, true)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue