diff --git a/lib/syntax_tree/node.rb b/lib/syntax_tree/node.rb index 3b676552..0634d8df 100644 --- a/lib/syntax_tree/node.rb +++ b/lib/syntax_tree/node.rb @@ -9981,6 +9981,11 @@ def format(q) q.breakable_force q.breakable_force q.format(statement) + elsif statement.is_a?(DefNode) && previous.is_a?(DefNode) && + (statement.location.start_line - line) == 1 + q.breakable_force + q.breakable_force + q.format(statement) elsif statement.location.start_line != line q.breakable_force q.format(statement) diff --git a/test/fixtures/def.rb b/test/fixtures/def.rb index 0cc49e0a..0ef81575 100644 --- a/test/fixtures/def.rb +++ b/test/fixtures/def.rb @@ -29,3 +29,14 @@ def foo( # comment =end a end +% +def foo +end +def bar +end +- +def foo +end + +def bar +end diff --git a/test/fixtures/defs.rb b/test/fixtures/defs.rb index 03f841ba..960c9c65 100644 --- a/test/fixtures/defs.rb +++ b/test/fixtures/defs.rb @@ -29,3 +29,14 @@ def foo::foo - def foo.foo end +% +def foo.foo +end +def foo.bar +end +- +def foo.foo +end + +def foo.bar +end