I previously left a comment stating I didn't know why a certain method existed. In investigating the code in CaptureCodeContext#capture_before_after_kws I found that it was added as to give a slightly less noisy output.
The docs for AroundBlockScan#capture_neighbor_context only describe keywords as being a primary concern. I modified that code to only include lines that are keywords or ends. This reduces the output noise even more.
This allows me to remove that start_at_next_line method.
One weird side effect of the prior logic is it would cause this code to produce this output:
class OH
def hello
def hai
end
end
1 class OH
> 2 def hello
4 def hai
5 end
6 end
But this code to produce this output:
class OH
def hello
def hai
end
end
1 class OH
> 2 def hello
4 end
5 end
Note the missing def hai. The only difference between them is that space.
[ruby/syntax_suggest] Clean up output
I previously left a comment stating I didn't know why a certain method existed. In investigating the code in
CaptureCodeContext#capture_before_after_kws
I found that it was added as to give a slightly less noisy output.The docs for AroundBlockScan#capture_neighbor_context only describe keywords as being a primary concern. I modified that code to only include lines that are keywords or ends. This reduces the output noise even more.
This allows me to remove that
start_at_next_line
method.One weird side effect of the prior logic is it would cause this code to produce this output:
But this code to produce this output:
Note the missing
def hai
. The only difference between them is that space.With this change, they're now both consistent.
https://github.com/ruby/syntax_suggest/commit/4a54767a3e