Module: RuVim::Lang::Tsv

Defined in:
lib/ruvim/lang/tsv.rb

Class Method Summary collapse

Class Method Details

.detect?(buffer) ⇒ Boolean

Detect TSV from buffer content: tabs >= commas and tabs > 0

Returns:

  • (Boolean)


12
13
14
15
16
17
# File 'lib/ruvim/lang/tsv.rb', line 12

def detect?(buffer)
  sample = (0...[buffer.line_count, 20].min).map { |i| buffer.line_at(i) }
  tabs = sample.sum { |l| l.count("\t") }
  commas = sample.sum { |l| l.count(",") }
  tabs > 0 && tabs >= commas
end