7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
# File 'lib/embulk/guess/newline.rb', line 7
def guess(config, sample)
if config.fetch('parser', {}).fetch('charset', nil).nil?
require 'embulk/guess/charset'
charset_guess = Guess::CharsetGuessPlugin.new
return charset_guess.guess(config, sample)
end
cr_count = sample.count("\r")
lf_count = sample.count("\n")
crlf_count = sample.scan(/\r\n/).length
if crlf_count > cr_count / 2 && crlf_count > lf_count / 2
return {"parser" => {"newline" => "CRLF"}}
elsif cr_count > lf_count / 2
return {"parser" => {"newline" => "CR"}}
else
return {"parser" => {"newline" => "LF"}}
end
end
|