class Fluent::Config::BasicParser

def error_sample

def error_sample
  pos = @ss.pos
  lines = @ss.string.lines.to_a
  lines.each_with_index { |line, ln|
    if line.size >= pos
      msgs = ["line #{ln + 1},#{pos}\n"]
      if ln > 0
        last_line = lines[ln - 1]
        msgs << "%3s: %s" % [ln, last_line]
      end
      msgs << "%3s: %s" % [ln + 1, line]
      msgs << "\n     #{'-' * pos}^\n"
      if next_line = lines[ln + 1]
        msgs << "%3s: %s" % [ln + 2, next_line]
      end
      return msgs.join
    end
    pos -= line.size
    last_line = line
  }
end