Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
## HEAD (unreleased)

- Reduce line output for increased clarity (https://github.com/ruby/syntax_suggest/pull/190)

## 1.0.4

- Fix rendering a file without a newline ending (https://github.com/ruby/syntax_suggest/pull/182)
Expand Down
22 changes: 2 additions & 20 deletions lib/syntax_suggest/around_block_scan.rb
Original file line number Diff line number Diff line change
Expand Up @@ -176,7 +176,7 @@ def capture_neighbor_context
break
end

lines << line
lines << line if line.is_kw? || line.is_end?
end

lines.reverse!
Expand All @@ -195,7 +195,7 @@ def capture_neighbor_context
break
end

lines << line
lines << line if line.is_kw? || line.is_end?
end

lines
Expand Down Expand Up @@ -319,24 +319,6 @@ def scan_adjacent_indent
self
end

# TODO: Doc or delete
#
# I don't remember why this is needed, but it's called in code_context.
# It's related to the implementation of `capture_neighbor_context` somehow
# and that display improvement is only triggered when there's one visible line
#
# I think the primary purpose is to not include the current line in the
# logic evaluation of `capture_neighbor_context`. If that's true, then
# we should fix that method to handle this logic instead of only using
# it in one place and together.
def start_at_next_line
before_index
after_index
@before_index -= 1
@after_index += 1
self
end

# Return the currently matched lines as a `CodeBlock`
#
# When a `CodeBlock` is created it will gather metadata about
Expand Down
1 change: 0 additions & 1 deletion lib/syntax_suggest/capture_code_context.rb
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,6 @@ def capture_before_after_kws(block)
return unless block.visible_lines.count == 1

around_lines = AroundBlockScan.new(code_lines: @code_lines, block: block)
.start_at_next_line
.capture_neighbor_context

around_lines -= block.lines
Expand Down
4 changes: 0 additions & 4 deletions spec/integration/syntax_suggest_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -115,9 +115,6 @@ module SyntaxSuggest
expect(io.string).to include(<<~'EOM')
5 module DerailedBenchmarks
6 class RequireTree
7 REQUIRED_BY = {}
9 attr_reader :name
10 attr_writer :cost
> 13 def initialize(name)
> 18 def self.reset!
> 25 end
Expand Down Expand Up @@ -160,7 +157,6 @@ module SyntaxSuggest
out = io.string
expect(out).to include(<<~EOM)
16 class Rexe
18 VERSION = '1.5.1'
> 77 class Lookups
> 140 def format_requires
> 148 end
Expand Down
5 changes: 3 additions & 2 deletions spec/unit/capture_code_context_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,14 @@ def eat
EOM

code_lines = CleanDocument.new(source: source).call.lines
block = CodeBlock.new(lines: code_lines[0])
block = CodeBlock.new(lines: code_lines[3])

display = CaptureCodeContext.new(
blocks: [block],
code_lines: code_lines
)
lines = display.call

lines = display.capture_before_after_kws(block).sort
expect(lines.join).to eq(<<~'EOM')
def sit
end
Expand Down
2 changes: 2 additions & 0 deletions spec/unit/display_invalid_blocks_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -144,6 +144,7 @@ def hai
expect(io.string).to include([
" 1 class OH",
"> 2 def hello",
" 3 def hai",
" 4 end",
" 5 end",
""
Expand All @@ -162,6 +163,7 @@ def hai
[
" 1 class OH",
["> 2 ", DisplayCodeWithLineNumbers::TERMINAL_HIGHLIGHT, " def hello"].join,
" 3 def hai",
" 4 end",
" 5 end",
""
Expand Down